大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

Java8新特性
Java9新特性

Java8新特性注解

增加了FunctionalInterface注解

函數式接口注解,為Labmda表達式準備的。

當接口中只有一個方法是抽象方法時,則該接口可以聲明為函數式接口。

package com.wkcto.annotaitons;

/**
 * 函數式接口
 * Author : 動力節點老崔
 */
@FunctionalInterface            //注解聲明接口為函數式接口
public interface MyInterface2 {
    void  m1();

    default void dm(){
        System.out.println("default修飾的方法有默認方法體");
    }
}
package com.wkcto.annotaitons;

/**
 * 函數式接口可以使用Labmda表達式
 * Author : 動力節點老崔
 */
public class Test01 {
    public static void main(String[] args) {
        //接口賦值匿名內部類對象
        MyInterface2  mi2 = new MyInterface2() {
            @Override
            public void m1() {
                System.out.println("在匿名內部類中重寫接口的抽象方法");
            }
        };
        mi2.m1();       //執行匿名內部類對象的方法

        //MyInteface2接口聲明為了函數式接口,可以直接給接口引用賦值Labmda表達式
        mi2 = () -> System.out.println("給接口引用賦值Lambda表達式");
        mi2.m1();

    }
}

對元注解的增強

JDK8擴展了注解的使用范圍,在ElementType枚舉類型中增強了兩個枚舉值:

ElementType.PARAMETER,表示注解能寫在類型變量的聲明語句中。

ElementType.USE, 表示注解能寫在使用類型的任何語句中。

增加了Repeatable元注解.JDK8前的版本中,同一個注解在同一個位置只能使用一次,不能使用多次. 在JDK8中引入了重復注解,表示一個注解在同一個位置可以重復使用多次。

package com.wkcto.annotaitons;

import java.lang.annotation.*;

/**自定義可重復的注解
 * Author : 動力節點老崔
 */
@Repeatable(RoleAnnotions.class)
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.TYPE,ElementType.METHOD})
public @interface MyAnnotation {
    String role();      //定義角色屬性
}
package com.wkcto.annotaitons;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * 定義一個容器,可以包含若干的MyAnnotation注解
 * Author : 動力節點老崔
 */
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.TYPE,ElementType.METHOD})
public @interface RoleAnnotions {
    MyAnnotation[] value();
}
package com.wkcto.annotaitons;

/**
 * 使用重復注解修飾一個類
 * Author : 動力節點老崔
 */
@MyAnnotation( role = "Husband")
@MyAnnotation(role = "Son")
@MyAnnotation(role = "Father")
public class Person {
}
package com.wkcto.annotaitons;

/**
 * 通過反射讀取可重復注解的信息
 * Author : 動力節點老崔
 */
public class Test02 {
    public static void main(String[] args) {
        //創建Class對象
        Class<?> claxx = Person.class;

        //獲得指定的自定義注解
        MyAnnotation[] myAnnotations = claxx.getDeclaredAnnotationsByType(MyAnnotation.class);
        //遍歷數組,打印角色屬性
        for (MyAnnotation  annotation : myAnnotations){
            System.out.println( annotation.role());
        }
    }
}

 

全部教程
主站蜘蛛池模板: 国产成人精品本亚洲 | 四虎影视永久在线观看 | 一级毛片看一个 | 狠狠色噜噜噜噜狠狠狠狠狠狠奇米 | 亚洲香蕉一区二区三区在线观看 | 国产日韩高清一区二区三区 | 欧美成人片在线 | 一级床上爽高清播放 | 俄罗斯一级成人毛片 | 精品视频在线免费播放 | 精品无人区乱码一区二区 | 日韩一区二区三区在线 | 在线播放成人毛片免费视 | 国产高清精品久久久久久久 | 欧美亚洲另类视频 | 亚洲欧洲日本精品 | 国产精品一国产精品免费 | 欧美日韩小视频 | 精品日韩二区三区精品视频 | 国产成综合 | 天天天天鲁天天拍一拍 | 成人免费网站视频www | 久久福利| 俄罗斯色视频 | 亚洲成人在线视频 | 日本一级特黄毛片免费视频 | 九九亚洲视频 | 成人在线激情视频 | 亚洲成在人线影视天堂网 | 国产精品国产精品 | 午夜香蕉 | 伊人久久综合影院首页 | 亚洲欧美一区在线 | 国产在线精彩视频二区 | 91系列| 四虎精品视频 | 欧美成人精品一区二三区在线观看 | 97精品国产综合久久 | 国产精品爱久久久久久久三级 | 免费观看黄色毛片 | 国产精品久久久久不卡绿巨人 |