java(二十)【面向对象】抽象类
抽象类:
当多个类中出现相同功能,但是功能主体不同,这时可以进行抽取,这时,只抽取功能定义,而不抽取功能主体
特点:
1.抽象方法一定定义在抽象类中
2.抽象方法和抽象类都必须被abstract关键字修饰
3.抽象类不可以用new创建对象,因为调用抽象方法没意义
4.抽象类中的抽象方法要被使用,必须由子类复写起所有的抽象方法后,建立子类对象调用
如果子类只覆盖了部分抽象方法,那么子类还是一个抽象类
抽象类比一般类多了个抽象函数,就是在类中可以定义抽象方法。
抽象类不可以实例化
注意:
抽象类中可以不定义抽象方法(不让该类建立方法)
1 abstract class QinShi 2 { 3 abstract void say(); 4 //abstract void say1(); 5 void sleep() 6 { 7 System.out.println("睡觉"); 8 } 9 } 10 class huahua extends QinShi 11 { 12 void say(){ 13 System.out.println("123"); 14 } 15 } 16 class huahua1 extends QinShi 17 { 18 void say(){ 19 System.out.println("456"); 20 } 21 } 22 23 public class Single { 24 public static void main(String[] args) { 25 new huahua().say(); 26 new huahua().sleep(); 27 } 28 }
运行结果:



浙公网安备 33010602011771号