黑马程序员技术交流社区
标题:
对抽象类的自己理解
[打印本页]
作者:
平凡的鱼
时间:
2015-9-14 19:00
标题:
对抽象类的自己理解
/*
抽象类
当多个类中出现相同功能,但是功能主题不同
这时可以进行向上抽取,只抽取功能定义,而不抽取功能主体
抽象类的特点:
1/抽象方法一定在抽象类中
2/抽象方法和抽象类都必须用abstract关键字修饰
3/抽象类不可以用new创建对象,因为调用抽象方法没有意义
4/抽象类中的抽象方法要被使用,必须由子类复写所有的抽象方法后,建立子类对象调用
如果子类只覆盖了部分的抽象方法,那么该子类还是一个抽象类 需要用abstract修饰
特点:抽象类的中可以定义抽象方法 也可以定义不抽象的方法
其可以定义一个抽象方法强制子类必须重写去实现 因为不重写的话子类也会变成抽象类 不能创建对象去实现其中的方法
抽象类可以不定义抽象方法 这样的意义仅仅是不让该类创建对象
*/
import java.util.Scanner;
class Daemo_090 {
public static void main(String[] args) {
//new BaseStudent().study(); //这是创建匿名对象调用方法 特点只能够使用一次
//new Student().study(); //抽象类无法实例化
}
}
abstract class Student{
abstract void study(){}; //因为是抽象方法 只是功能的定义 所以不能有方法体{}
//abstract void speak(); //如果Studnet中有这个抽象类 而BaseStudent没有对speak()方法进行重写 会报错 因为
//BaseStudent类继承了speak()抽象方法也是抽象类了 而没有对其进行abstract修饰 再其抽象类不能被调用
}
class BaseStudent extends Student{
void study(){ //复写了抽象类中的study的方法 这样 子类就不再是抽象类 可以被创建对象
}
}
作者:
舒玉琛
时间:
2015-9-14 21:17
受大神教育了,威武
作者:
平凡的鱼
时间:
2015-9-15 21:16
舒玉琛 发表于 2015-9-14 21:17
受大神教育了,威武
哪里的大神 也是小白一个 共同努力 加油!!
作者:
ganjx
时间:
2015-9-15 21:21
好,共同学习
作者:
cemabenteng
时间:
2015-9-15 21:39
加油吧,你以后的路还很长
作者:
舒玉琛
时间:
2015-9-16 11:38
共同学习ing
作者:
插兜
时间:
2015-9-16 13:03
总结的很好
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2