Java基础学习日记——抽象类

来源:互联网 发布:g76车螺纹编程实例 编辑:程序博客网 时间:2024/05/18 03:26

当多个类中出现相同功能,但是功能主体不同
这是可以进行向上抽取,这时,只抽取功能定义,而不抽取功能主体。由此——>抽象类

抽象类的特点:
抽象方法一定在抽象类中
抽象方法和抽象类都必须被关键字 abstract 修饰
抽象类不可以实例化,也就是不可以 new来创建对象,因为创建对象没有任何的意义。
抽象类中的抽象方法要被使用,必须由子类重写所有的抽象方法后,建立子类对象调用,如果子类只复写了部分抽象方法,那么该子类还是一个抽象类。

注意的是:
 抽象类如何描述事物还怎么描述,只不过该事物中出现了一些看不懂的东西(也就是抽象的东西)。
 这些不确定的部分,也是该事物的功能,需要明确出来,但是无法定义主体,这时候就通过抽象类方法来表示
 抽象类比一般类多了个抽象函数,就是在类中可以定义抽象方法。

当然抽象类中也可以不定义抽象方法,这样做仅仅是不让该类建立对象。

一小段代码理解

abstract class Student //有抽象方法,这里也必须要抽象类{abstract void study();//抽象方法void  run()//非抽象方法{System.out.println("RUN");}}class BAStudent extends Student{void study() //重写父类抽象方法{System.out.println("BA St");}}class CDStudent extends Student{ void study()//重写父类抽象方法{System.out.println("CD St");}}class  Demo{   public static void main(String[] args)   {Student s = new Student();//Student 为抽象类,不可以new创建对象。BAStudent b =new  BAStudent();b.study();   }}


 

0 0
原创粉丝点击