Java接口的定义与实现
普通类、抽象类、接口的特点
- 普通类:只有具体实现
- 抽象类:具体实现和规范(抽象方法)都有
- 接口:只有规范,自己无法写方法,约束和实现分离:面向接口编程。
接口的内涵
接口就是规范,定义的是一组规则,体现了现实世界中“如果你是…则必须能…”的思想。
接口的本质是契约,就像我们人间的法律一样。制定好后大家都遵守。
OO的精髓,是对对象的抽象,最能体现这一特点的就是接口。
声明类的关键字是class,声明接口的关键字是interface。
接口的作用
- 是一个约束
- 定义一个方法,让不同的人实现
- 方法默认为public abstract
- 常量定义为 public static final
- 接口不能被实例化,接口中没有构造方法
- 可以实现多个接口 implements 必须重写接口里面的方法
代码示例
在这里我们定义了两个接口 UserService 和 TimeService 并在两个接口中分别声明了一些方法(但是没有实现细节)。又定义了一个类来实现接口,规范命名后缀使用Impl,在其中重写接口中的方法。代码如下:
package com.OOP.demo09;
//抽象的思维
public interface UserService {
//接口中的所有定义其实都是抽象的 public abstract,接口都需要实现类
int Age=90;
//属性默认为常量 public static final
void add (String name);
void delete (String name);
void update (String name);
void select (String name);
}
package com.OOP.demo09;
public interface TimeService {
void timer();
}
package com.OOP.demo09;
//类可以实现接口 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 select(String name) {
}
@Override
public void timer() {
}
}