面向对象接口总结
接口理解:
接口是功能的集合,接口的定义也使用.java文件,编译之后也产生.class文件。类的定义使用class ,而接口的定义使用interface;
定义格式:
1 public interface 接口名{ 2 //常量定义格式:public static final 常量名(一般是大写) 3 成员变量->常量 4 //抽象方法定义:public abstract 返回值类型 方法名(参数列表) 接口中的方法全部是抽象方法 5 成员方法->抽象方法 6 } 7 //注意:常量和抽象方法的修饰符都是固定不变的,写不写都是这写修饰符,可以省略修饰符
接口定义demo:
1 public interface MyInterface{ 2 //定义常量 3 public static final int TIME=133; 4 //定义抽象方法 5 public abstract void show(); 6 }
接口的使用规则:
1.接口不能创建对象
2.接口使用可以定义实现类,实现接口,重写接口中的抽象方法,创建实现类对象使用
实现类的定义:
接口实现类与接口的关系是实现关系,即类实现接口,使用关键字implements
格式:
修饰符 class 类名 implements { 重写接口中的全部方法; }
//在类实现接口之后,这个类会将接口中的抽象方法全部继承过来,此类就需要重写抽象方法,才可以创建对象,否则子类还是一个抽象类;
接口的特点:
1.java中支持一个类可以同时实现多个接口
不会产生安全隐患,接口中的方法都是抽象方法,没有方法体,实现类需要重写所有接口中的抽象方法;
demo:
public class AandBImpl implements A,B{ //重写A和B中的方法; }
2.java中支持一个类继承父类的同时,可以实现多个接口(一个人可以有一个亲爹,多个干爹)
子类要重写父类与接口中的抽象方法
demo:
public class Student extends Person implements Eat,Play{ //重写父类和接口中的全部抽象方法 }
3.接口与接口之间的关系是继承的关系,一个接口可以同时继承多个接口
C接口继承类A和B接口,就相当于C中拥有类ABC三个接口的所有抽象方法;
public interface C extends 接口A,接口B{}
总结:
1.类与类之间是继承的关系;
public class A extends B{}
2.类与接口的关系是实现关系:
public class AImpl implements B{}
3.接口与接口之间的是继承关系:
public interface A extends B,C{}