抽象类和接口
普通类:只有具体实现
抽象类:有具体方法和规范(抽象方法)
接口:只有规范
抽象类
public abstract class Student {//抽象类
//约束,有人帮我们实现
//抽象方法:只有名字,没有方法体
//提高开发效率
public abstract void doSomething();
//1.不能new这个抽象类,只能靠子类去实现它
//2.抽象类可以写普通方法
//3.抽象方法必须在抽象类中
}
接口
- 作用
- 是一个约束
- 定义一些方法,让不同的人去实现
- 方法默认为public abstract
- 属性默认为public static final
- 接口无法实现化,接口没有构造方法
- implements可以实现多个接口
- 实现类必须实现接口中的方法
//关键字 interface
public interface UserService {
//接口定义的属性一般是常量:public static final
int A=100;
//接口中所有定义其实都是抽象的
void add(String name);
void delete(String name);
void update(String name);
void query(String name);
}
//接口的实现类,关键字implements
//实现类一般以接口名加Impl
//实现类需要实现接口的方法
//利用接口可以实现多继承
public class UserServiceImpl implements UserService{
@Override
public void add(String name) {
}
@Override
public void delete(String name) {
}
@Override
public void update(String name) {
}
@Override
public void query(String name) {
}
}