接口的定义
接口就是规范,定义的是一组规则,体现了现实世界中“如果你是…则必须能…”的思想。接口的本质是契约,就像法律法规一样,制定好了都要遵守。
OO的精髓是对对象的抽象,最能体现这一点的就是接口。为什么我们讨论设计模式都只针对具备了抽象能力的语言(如c++、java、c#等),是因为设计模式所研究的,实际上就是如何合理的去抽象。
在Java中声明类的关键字是class,声明接口的关键字是interface
接口的作用:
- 约束
- 定义一些方法,让不同的人去实现
- 接口中所有定义的方法都是抽象的 public abstract
- 常量都是 public static final
- 接口不能被实例化~,接口中没有构造方法
- implements可以实现多个接口
- 必须要重写接口中的方法~
接口的实现
- 实现单个接口
利用接口实现多继承
UserService 接口类:
package com.oop.demo07;
//interface 接口(定义的关键字),接口都需要有实现类
public interface UserService {
//接口中所有的定义其实都是抽象的 public abstract
void add(String name);
void delete(String name);
void update(String name);
void query(String name);
}
TimeService 接口类:
package com.oop.demo07;
public interface TimeService {
void time();
}
UserServiceImpl -->两个接口的实现类:
package com.oop.demo07;
//类 可以实现接口 通过 implements 接口
//实现了接口的类,就需要重写接口中的方法~
//多继承~ 利用接口实现多继承
public class UserServiceImpl implements UserService,TimeService {
//接口的实现类
//重写接口类中的四个方法
@Override
public void add(String name) {
}
@Override
public void delete(String name) {
}
@Override
public void update(String name) {
}
@Override
public void query(String name) {
}
//另一个接口中的方法
@Override
public void time() {
}
}