JDK1.7和JDK1.8新特性

JDK新特性

JDK7的新特性

public static void main(String[] args) throws Exception {
		//JDK7的六个新特性
//		A:二进制字面量
		System.out.println(0b1000);
		
//		B:数字字面量可以出现下划线
		System.out.println(1000_0000);
//		C:switch 语句可以用字符串
		String s = "A";
		switch (s) {
		case "A":
			
			break;
		case "B":
					
			break;
		default:
			break;
		}
		
//		D:泛型简化,菱形泛型
		//List<String> list = new ArrayList<String>();
		List<String> list = new ArrayList<>();
		
//		E:异常的多个catch合并,每个异常可以使用或|
		try{
			int i = 10 / 0;//算术异常
			int[] arr = null;
			System.out.println(arr[0]);//空指针异常
		}catch (ArithmeticException | NullPointerException e) {
			// TODO: handle exception
		}
		
//		F:try-with-resources 语句 //这样写()中的流不用自己关闭
		try(
			FileInputStream fis = new FileInputStream("a.txt");
		){
			fis.read();
		}

	}

JDK8的新特性
接口中可以定义有方法体的方法
如果是非静态,必须用default修饰
如果是静态的就不用了

interface Animal{
	//接口只能声明方法,不能实现,就是不能有方法体
	//public void eat();
	
	
	//jdk1.8可以有方法体
	public default void eat(){
		System.out.println("吃饭...");
	}
	
	public static void sleep(){
		System.out.println("睡觉.....");
	}
}

class Dog implements Animal{
	
}

发布了23 篇原创文章 · 获赞 17 · 访问量 1275

猜你喜欢

转载自blog.csdn.net/qq_41587409/article/details/105504207