1,抽象类中可以有构造方法,主要是当实例化子类时,进行初始化。
2,抽象类中可以没有任何抽象方法
意义在于不让外界创建对象。
3,抽象类和关键字的共存问题
private abstratc method(); // 要重写,但又不支持重写
final abstract method(); //final 是让子类不重写
static abstract method(); // 方法属于类,必须实现
1,抽象类可以实现接口
其中的方法可以实现,也可以不实现。
2.成员特点
成员变量(接口中很少有接口变量)
都为 public static final
成员方法
都为 public abstract
有构造方法
方法体为
throw new Error("Unresolved compilation problems: \n\tInterfaces cannot have constructors\n\tSyntax error on token \"}\", delete
抽象类是 is-a关系
接口是 like-a关系
以后的类继承结构都是
一个抽象类实现多个接口,然后多个子类再去继承抽象类。
两个接口中有相同签名的同一个方法,当具体子类在实现这两个方法时候,只能用一个去代替。
如果两个接口中的方法表示不同的行为,就应该在方法名上作出区别
如果表示同一个行为,就应该接着向上进行抽取。
时间: 2024-10-04 22:44:22