java-为什么要使用抽象类(第24集)

以下内容来自marschen的java4android视频教程.


第24集  为什么要使用抽象类
主要内容.
抽象类表达的是一种概念.

//如果一段代码在语意上是有错误的,那么在语法上也应该是有错误的.这是现代编程理论强调的一点,但是还没有那种语言完全实///现过
abstract class Printer{
	void open(){
		System.out.println("open");
	}
	
	void close(){
		System.out.println("close");
	}
	
	void print(){
		
	}
	//abstract void print();//抽象函数
	//在语意上有错误,我们让它在语法上也有错误.
	//语法上的错误更加容易检查出来.
}

// 该打印机为喷墨打印机进行打印
class HPPrinter extends Printer{
	void print(){
		System.out.println("使用喷墨打印机进行打印");
    }
}

//该打印机为针式打印机 
class CanonPrinter extends Printer{
	void print(){
		System.out.println("使用针式打印机进行打印");
    }
}

class Test{
	public static void main(String args[]){
		Printer p1 = new HPPrinter();//向上转型,子类对象赋给父类的引用.
		p1.open(); 
		p1.print();
		p1.close();
		
		Printer p2 = new CanonPrinter();//向上转型,子类对象赋给父类的引用.
		p2.open();
		p2.print();
		p2.close();
	}
}

为什么要使用抽象类,

如上例,如果不使用抽象类,

子类就可能忘记实现父类的print()方法.

那么就会隐藏错误.

你可能感兴趣的:(java-为什么要使用抽象类(第24集))