接口
专业的抽象
定义
只有规范,自己无法写方法
规范的含义是,定义规则,即‘若,则’这类规范。
如:如果你是老师,则你要具备教学生的能力。
使用
public interface Name1{
//接口中的所有定义都是抽象的 public abstract
void add(String name);
void delete(String name);
void change(String name);
void get(String name);
//属性为常量 public static final
//一般不这么写
int age =9;
}
#类名后加implement 表实现接口
#一个类可以引入多个接口,即实现了多继承
public class Milo implement Name1,Name2{
//有接口的类必须实现接口中的每一个方法。
@Override
public void add(String name){
}
//下略
}
作用
- 约束。
- 定义一些方法让不同的人实现。
- 定义抽象的方法 public abstract (方法)。
- 定义成员变量 public static final(成员变量),此处默认为常量。
- 多继承,一个类可以实现多个接口,只需要用逗号隔开。
- 只要实现了接口就必须对接口内的每一个抽象方法进行重写。
- 接口不能被实例化,且接口中没有构造方法,此处需要和抽象类区分开。
个人看法:
接口像是对一个整体功能的划分和集成,当一个类实现某个接口的时候,就具备了这个接口代表的“能力”,且为全部具备。
像打游戏穿装备一样,一个英雄可以穿不同的装备,且穿上装备即可具备装备赋予的能力。装备属性的大方向已经由装备自身确定,但具体数值需要装备所有者diy。