1. 抽象
抽象类用abstract 修饰,我们把含有共同属性和方法抽取出来,重新设计成一个通用的类就是抽象类。
重点:
含有abstract 方法的类一定是抽象类,但是抽象类中不一定含有抽象方法。(接口就是特殊的抽象类)。
抽象类不能被实例化。
有abstract 修饰的类就不能使用final
abstract 不能与private、static、final或native修饰同一个方法
备注:抽象类中体现了java 的设计思想 多态的应用,继承的应用
2.接口
接口:只有方法名没有方法体的类(特殊抽象类)。用interface修饰
它告诉我们接下来该怎么做要做什么。
重点:
Interface所有方法访问权限自动被声明为public。
它的变量必须要有public static final修饰(其他都不认)
备注:
java只能单继承不能多继承,可以多接口。
提倡面向接口编程(spring 框架中就体现很具体),个人认为:接口体现的是一种定义和实现分离的设计思想,
充分利用接口可以极好的降低程序各模块之间的耦合。