一、接口定义的增强:从JDK1.8开始允许在接口中定义普通方法,使用default和static关键字,跟在访问修饰符之后,两种的区别是,default定义的普通方法用对象调用,static定义的方法用接口名调用
interface IBook {
public void read();
//接口中定义普通方法---default、static
default void write() {
System.out.println("写书");
}
static void study() {
System.out.println("学习");
}
}
class BookImp implements IBook {
@Override
public void read() {
// TODO Auto-generated method stub
}
}
public class Main {
public static void main(String[] args) {
BookImp b = new BookImp(); //也可以 IBook b = new BookImp();
//对象调用default标记方法
b.write();
//接口名调用static方法
IBook.study();
}
}
二、其他:JDK1.8中还有一个重要概念,内部类访问方法变量的时候可以不用加上final关键字
class Book {
String title;
public void write() {
System.out.println("写书");
}
class study {
public void learn() {
//访问方法变量
title = "11";
}
}
}
本文探讨了Java8的一项重要更新——接口定义的增强。从JDK1.8开始,接口中可以定义default和static方法。default方法需要通过对象调用,而static方法则使用接口名直接调用。此外,JDK1.8还允许内部类在访问方法变量时省略final关键字,简化了代码编写。

282

被折叠的 条评论
为什么被折叠?



