黑马程序员技术交流社区

标题: 复习Day08-面向对象 [打印本页]

作者: is陈小贱di    时间: 2016-3-2 22:52
标题: 复习Day08-面向对象

                       抽象类&抽象方法
a)    概念
Java中可以定义没有方法体的方法,该方法的具体实现由子类完成,该方法称为抽象方法,包含抽象方法的类就是抽象类。
抽象方法即只有功能声明,没有功能主体实现的方法。
抽象类用来描述一种类型应该具备的基本特征与功能,例如:狼和狗共性都是犬科,犬科就是抽象出来的概念。而犬科描述了所有的犬科子类应具备的属性和行为。
具体如何去完成这些行为由子类通过方法重写来完成,如:狼和狗都有吼叫的方法,可是吼叫内容方式不同。所以抽象出来的犬科虽然有吼叫功能,但是并不明确吼叫的细节。
b)     抽象定义格式
       使用abstract修饰抽象类与抽象方法
       //abstractclass前修饰类
       //abstract在访问权限后,返回值类型前修饰方法,方法没有方法体。
如:                             
       abstract  class Person {
              public abstractvoid  eat();
}
c)      抽象类&抽象方法的使用
抽象类无法直接创建对象,只能被子类继承后,创建子类对象。
l  子类定义时继承抽象类
抽象类是事物的描述,子类需要继承父类完成最终的功能实现细节(即重写方法,完成方法体)
将一个抽象方法重写的过程也叫实现方法的过程。
l  子类定义后创建实例对象
在定义好子类后,可以直接创建对象。在所有使用子类的地方可以传入子类对象,在所有使用父类的地方也可以传入子类对象,因为属性与方法在子父类中都是相同的。


作者: hehaiwei    时间: 2016-3-3 00:33
加油吧 杀也不说了




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2