码迷,mamicode.com
首页 > 编程语言 > 详细

Java面向对象之抽象类

时间:2019-01-21 17:10:20      阅读:184      评论:0      收藏:0      [点我收藏+]

标签:有一个   抽取方法   情况   abstract   出现   返回   特殊情况   如何   动物   

内容:

1、抽象类的产生

2、抽象类和抽象方法的定义

3、抽象类和抽象方法的使用

4、抽象类常见疑惑

 

 

 

1、抽象类的产生

当编写一个类时,我们往往会为该类定义一些方法,这些方法是用来描述该类的功能具体实现方式,那么这些方法都有具体的方法体

但是有的时候,某个父类只是知道子类应该包含怎么样的方法,但是无法准确知道子类如何实现这些方法。

比如一个图形类应该有一个求周长的方法,但是不同的图形求周长的算法不一样。那该怎么办呢?

再比如:动物应该有吃饭的方法,猫,狗,猪.... 那么在他们的父类中 这个吃方法应该怎么定义?

分析事物时,发现了共性内容,就出现向上抽取。会有这样一种特殊情况,就是方法功能声明相同,但方法功能主体不同。

那么这时也可以抽取,但只抽取方法声明,不抽取方法主体。那么此方法就是一个抽象方法。如:

  • 描述讲师的行为:工作。
  • 描述助教的行为:工作。
  • 描述班主任的行为:工作。

讲师、助教、班主任之间有共性,可以进行向上抽取。

抽取它们的所属共性类型:员工。

由于讲师、助教、班主任都具有工作功能,但是他们具体工作内容却不一样。这时在描述员工时,发现了

有些功能不能够具体描述,那么,这些不具体的功能,需要在类中标识出来,通过java中的关键字abstract(抽象)修饰

当定义了抽象方法的类也必须被abstract关键字修饰,被abstract关键字修饰的类是抽象类

 

 

2、抽象类和抽象方法的定义

抽象类和抽象方法的格式:

1 // 抽象方法定义的格式:
2 public abstract 返回值类型 方法名(参数);
3 // 抽象类定义的格式:
4 abstract class 类名 {
5 }

 

 

 

 

3、抽象类和抽象方法的使用

 

 

4、抽象类常见疑惑

 

Java面向对象之抽象类

标签:有一个   抽取方法   情况   abstract   出现   返回   特殊情况   如何   动物   

原文地址:https://www.cnblogs.com/wyb666/p/10299451.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!