JDK 1.5新特性
生活随笔
收集整理的這篇文章主要介紹了
JDK 1.5新特性
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1.可變參數
public void add(int... nums){int sum = 0;for(int i=0; i<nums.length; i++){sum += nums[i];}System.out.println(sum); }注意:當有多種參數時,可變參數放在最后
2.foreach
public void add(int[] nums){int sum = 0;for(int num : nums){sum += num;}System.out.println(sum); }注意:foreach最早在C#中使用;用于替換for循環
3.靜態導入
package xyz.pascall.study; import static java.util.Calendar.*;public class StaticImport {public static void main(String[] args) {System.out.println(DAY_OF_MONTH);} }注意:在導入包下方法的時候,一定要添加static關鍵詞;使用時直接指定方法名即可
4.泛型
package xyz.pascall.study;import java.util.List; import java.util.Map;public class StaticImport {public static void main(String[] args) {String name = new GenericityDemoOne<String>("小明").getT();System.out.println(name);} }/*** 簡單泛型使用* @author zhang** @param <T>*/ class GenericityDemoOne<T>{private T t;public GenericityDemoOne(T t) {this.t = t;}public T getT() {return t;} }/*** 泛型在方法上使用* @author zhang**/ abstract class GenericityDemoTwo{/*** 泛型在方法上聲明* @param t*/public static <T extends Object> void show(T t) {System.out.println(t);}/*** 通配符使用,泛型在方法參數上聲明* @param list*/public static void show(List<? extends Object> list) {System.out.println(list);}/*** 泛型在抽象方法上使用* @param map*/public abstract <S, I> void show(Map<S, I> map); }注意:
- 類在定義的時候使用一個標記,該標記為數據類型;
- 泛型解決向下類型轉化出錯問題;
- 泛型不能為基本數據類型,是能使引用數據類型;
- 通配符“?”,可以配置不同類型的泛型;
- ? extends 類:設置泛型上限(可在 聲明和方法參數 上使用)
- ? super 類:設置泛型下限(可在 方法參數 上使用)
- 泛型可以定義類和接口,使用泛型時,注意聲明泛型(通配符除外)
- JDK 1.7及以后,在實例化泛型類型時,可以不用在右邊聲明數據類型(List<String> list = new ArrayList<>();)
5.枚舉
package xyz.pascall.study;public class Enumeration {public static void main(String[] args) {Color red = Color.RED;System.out.println(red.getName());} }/*** 枚舉* @author zhang**/ enum Color{/*** 定義實例化Color類*/RED("紅色"), GREEN("綠色");// 定義枚舉屬性private String name;private Color(String name) {this.name = name;}public String getName() {return name;} }注意:
- 枚舉類中定義的實例化必須放在類中最上面;
- enum和Enum關系:enum是關鍵詞,Enum是類;用enum定義的枚舉=一個類繼承了Enum抽象類;
- Enum類的構造方法使用protected關鍵詞修飾,屬于構造方法私有化;
- 枚舉支持switch,枚舉屬于高級的多例模式
6.Annotation(JDK 1.5最大特色)
package xyz.pascall.study;/** Annotation中三種基本注解使用*/ public class AnnotationDemo{/*** Override:用于準確覆寫父類的方法,否則編譯時出錯*/@Overridepublic String toString() {// TODO Auto-generated method stubreturn super.toString();}/*** Deprecated:用于聲明方法過期*/@Deprecatedpublic void sayHello() {System.out.println("Hello");}/*** SuppressWarnings:用于壓制多個警告*/@SuppressWarnings("unused")private String title; }注意:
- Annotation利用注解的形式來實現程序的不同功能;
- Annotation有三種基本注解:@Override, @Deprecated, @SuppressWarnings
轉載于:https://www.cnblogs.com/pascall/p/9796888.html
總結
以上是生活随笔為你收集整理的JDK 1.5新特性的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 架设 DNF(地下城与勇士) 三分钟搭建
- 下一篇: 如何巧妙应对压力面试