类(class):
java中的类是具备某些共同特征的实体的集合,它是一种抽象的概念;
类可以看做创建java对象的模板。
类的变量;
局部变量,定义在方法,构造方法或者语句块中的变量,只在当前作用域生效,结束后会自动销毁
成员变量,定义在类中,方法体外。在创建对象时实例化。可以被类中大多数访问
类变量,也是在类中,方法体外,但是需要static修饰。没有创建对象也可以使用类调用。
抽象类(abstract):
可以通过通用接口处理一系列的类。对所有的抽象类与声明的名字相同的衍生类的方法,可以
通过动态绑定调用。
抽象类不能被实例化。
抽象类可以包含抽象方法和抽象访问器。
从抽象类派生的类必须实现所有抽象方法,否则也成为抽象类。
接口(interface):
可以想象为一个纯抽象类,允许创建者规定一个类的基本形式,方法名,自变量列表,及返回类型,但不规定方法主体。
已经包含了基础数据类型的数据成员,默认static和 final(名字大写)。
如果是引用类型,引用的指向不能修改,但是可以修改对象本体。
接口,只提供一种形式,不提供实施的细节。
implements 是一个接口类实现的关键字。实现一个接口类,必须实现接口中的所有方式。
接口实现的注意点;
(1)实现一个接口就是要实现该接口的所有方法(抽象类除外)
(2)接口中的方法都是抽象的。
(3)多个无关的类可以实现同一个接口,一个类也可以实现多个接口。
(4)其中包含的基础数据和引用数据都是final和static的。
一个类只能有一个父类,但是可以有多个接口,变相在java中实现“多重继承”
区别
类在我看来是java的基础,抽象类一般作为父类。通过类的继承完成其中抽象方法的实现。而接口则是更“纯‘’的抽象类,只包含抽象方法和静态常量。实现接口也是通过类重写方法实现的。
例;
class A extends B implements C,D,E。