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

java中的继承关系

时间:2020-08-05 00:10:21      阅读:119      评论:0      收藏:0      [点我收藏+]

标签:dia   extend   return   除了   重要   交通   面向对象   apt   应用   

既然Java 应用是现实世界的映射,那么Java 类之间的关系就是现实世界中对象之间的关系。

现实世界中的两个对象,可能是关联关系,比如公司设有部门,部门可作为公司的属性存在,即公司关联部门;

也可能是依赖关系,比如员工到外地出差,必须使用一种交通工具,那么员工和交通工具之间就是使用关系,即员工依赖交通工具;

除了这两种关系之外,还有一种非常重要的关系,即继承关系。

例如,银行卡是大多数人所熟悉的,而银行卡分为借记卡、信用卡等。借记卡、信用卡都具有银行卡所具有的功能,如存钱、取钱、刷卡消费等,但是又有区别,如信用卡可以透支,借记卡不可以,如借记卡取现金不需要交利息,而信用卡取现金需要交利息等。可以说,借记卡和信用卡都是银行卡,借记卡和信用卡与银行卡之间是一种“是”的关系。“借记卡是一种银行卡”,“信用卡是一种银行卡”的表述是正确、合理的,这种关系通常称为“IS-A”关系,即“继承”关系。

在 Java 语言中,如果B 类是在A 类的基础上衍生出来的,即B 类不仅拥有A 类的所有属性和方法,还扩展了新的属性或方法,那么就可以让B 类继承A 类,以达到重复使用A 类的目的。

可以说,继承是除了关联之外,另外一种面向对象的复用策略。
Java 语言中,类与类之间使用关键字extends 来表示继承关系。

package com.etc.chapter10;
public class Shape {

public void draw(){}
}
class Circle extends Shape{
public double getDiameter(){
return 0.0;
}
}
class Triangle extends Shape{
public double getArea(){
return 0.0;
}
}

由于圆形和三角形都是一种图形,都具有图形的属性和方法,所以圆形和三角形可以作为图形的子类存在。上述代码中,形状Shape 类是父类,定义了方法draw。而圆形Circle 和三角形Triangle 是Shape 类的子类,使用extends 关键字继承了父类Shape。如此一来,Circle和Triangle 也具有方法draw,而且Circle 和Triangle 又分别扩展了新方法,用来获取直径和面积。
值得注意的是,Java 语言中类与类之间的继承是单继承,即一个类最多只能继承一个父类,而一个父类可以同时有多个子类,单继承可以避免调用混乱。

 

java中的继承关系

标签:dia   extend   return   除了   重要   交通   面向对象   apt   应用   

原文地址:https://www.cnblogs.com/yunjingx/p/13437129.html

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