Java学习笔记5

接口

  当一个抽象类,如果抽象类中所有方法都是抽象的,那么我们就可以把它定义为一个接口,接口是对行为的抽象,类是对属性和行为的抽象。接口没有具体方法,也没有属性。

  接口中可以定义常量。

  接口也能继承接口,可以多级继承,也可以继承于多个父接口。

interface A{
public void sleep();
}
interface B{
public void laugh();
}
interface C extends A,B{
public void happy();
public void sleep2();
}
interface D extends A,C{

}
class Implement implements D{

@Override
public void sleep() {
// TODO 自动生成的方法存根

}

@Override
public void happy() {
// TODO 自动生成的方法存根

}

@Override
public void laugh() {
// TODO 自动生成的方法存根

}

@Override
public void sleep2() {
// TODO 自动生成的方法存根

}

}
public class TestInterface {
public static void main(String[] args) {

}
}

接口的实现

  关键字:implements 

  语法:class 类名 implements 接口名{}

  一个类如果实现了接口,就必须要实现接口中所有的抽象方法。

接口在JDK1.8中的特性

  接口可以定义静态的方法,用接口名打点调用。

  可以选择性地实现接口中的方法,定义默认方法即可。语法: public default void 方法名(){}

  接口被类实现的时候没有强制性,可以重写方法。

接口的好处

  1.接口定义的是一种标准,可以使我们的代码分层开发,分模块开发。

  2.降低代码的耦合度,提高代码的可扩展性和可维护性。

  3.接口改进了单继承的局限。

接口和抽象类的区别

  1.接口是行为的抽象。可以有静态方法,抽象方法和默认方法。抽象类可以有所有方法。

  2.接口和抽象类都不能实例化,接口需要类来实现,然后通过类实例化;抽象类需要子类来继承,然后通过子类实例化。

  3.抽象类智能单继承,接口可以多继承(jdk1.7),接口还可以多实现。

  4.接口中的属性是static final类型的,抽象类中的属性跟普通类中的属性没有区别。

  5.接口中的方法默认就是抽象的,不需要加abstract,抽象类中的抽象方法需要加上abstract。

猜你喜欢

转载自www.cnblogs.com/zzrsg/p/10314899.html