一:abstract修饰类: 抽象类:
1:此类不能被实例化:因为抽象类中方法未具体化,这是一种不完整的类,所以直接实例化也就没有意义
2;抽象类中不一定要包含abstract方法
3:开发中,都会提供抽象雷的子类,让子类对象实例化,完成相关的操作
Subject subject = new Subject();
HexaObserver hexaObserver=new HexaObserver(subject);
public class HexaObserver extends Observer {
public HexaObserver(Subject subject) {
this.subject = subject;
this.subject.attach(this);
}
@Override
public void update() {
System.out.println("Hex String: "
+ Integer.toHexString(subject.getState()).toUpperCase());
}
}
二:abstract修饰方法: 抽象方法
1:只有方法的声明没有方法体:
abstract void xxx();
2:如果类中有抽象方法,那么这个类必须也是抽象的(包含抽象方法的类一定是抽象类)
3:一旦类中包含了abstract方法,那该类必须声明为abstract类
三:
1:abstract不能用来修饰:属性,构造器等结构
2:abstract不能用来修饰私有方法,静态方法,final的方法,final的类