主页 > 新闻资讯 > 大数据编程入门:Java继承

大数据编程入门:Java继承

作者:游老师 浏览次数: 2021-07-08 15:12
面向对象是Java学习中的一个重要部分,继承作为Java面向对象编程技术的一块基石,是我们学习面向对象的重要基础铺垫,今天小编将为大家带来大数据编程入门:Java继承这篇文章。
一、继承的概念
继承作为Java面向对象编程技术的一块基石,能够允许创建分等级层次的类。
继承就是子类或者父类的特征和行为,使得子类不仅具有父类的实例域和方法,还从父类继承方法,具有与父类相同的行为。
1、生活中的继承
 
在上图中可以看到,兔子和羊属于食草动物类,狮子和豹子属于食肉动物类,而它们又都属于动物类。所以在继承中,父类更通用,子类更具体。
虽然食草动物和食肉动物都属于动物类,但是两者的属性和行为上都有着不同点,所以子类会具有父类的一般特性也会具有自身的特性。
2、类的继承格式
在Java中,可以通过extends关键字申明一个类是从另一个类继承而来的,一般形式如下所示:
class 父类 {
}
class 子类 extends 父类 {
}
3、为什么需要继承
下面我们将通过实例来说明这个需求。
开发动物类,其中动物分别为企鹅和老鼠,要求如下所示:
企鹅:属性(姓名,id),方法(吃,睡,自我介绍)
老鼠:属性(姓名,id),方法(吃,睡,自我介绍)
企鹅类:
 
老鼠类:
 
从上面两个实例可以看出两段代码存在重复的内容,这样就导致代码量大而臃肿,维护性不高,所以需要从根本上解决这个问题,这个时候就需要用到继承了,从两段代码中提取相似部分组成一个父类:
 
Animal类就可以作为一个父类,接下来看看企鹅类和老鼠类继承过后的代码。
企鹅类:
 
老鼠类:
 
4、继承类型
需要注意的是,Java不支持多重继承,但是支持多重继承。
 
二、继承的特性
a.子类具有非私有父类的属性和方法。
b.子类可以有自己的属性和方法,也就是说,子类可以扩展父类。
c.子类可以用自己的方式实现父类的方法。
d.Java继承是单继承,但也可以是多继承。单一继承意味着一个子类只能继承一个父类。多重继承意味着,例如,类B继承类A,类C继承类B。所以根据这个关系,B类是C类的父类,A类是B类的父类。这是Java继承不同于C++继承的一个特性。
e.它改善了类之间的耦合(继承的缺点是,耦合越高,代码之间的连接越紧密,代码独立性越差)。
三、继承关键字
继承可以通过使用关键字extends和implements来实现,所有类都是从java.lang.Object继承的。当一个类没有两个继承的关键字时,它将默认继承对象(这个类在java.lang包中,因此不需要导入)祖先类。
1、extends关键字
在Java中,类继承是单个继承,即一个子类只能有一个父类,因此extends只能继承一个类。
 
2、implements关键字
使用implements关键字可以变相使java具有多重继承的特性。当使用范围是类继承接口时,可以同时继承多个接口(接口之间用逗号分隔)。
 
3、super与this关键字
super关键字:我们可以使用Super关键字访问父类的成员来引用当前对象的父类。
This关键词:对自己的引用。
 
运行结果:
 
4、final关键字
final关键字声明类可以将该类定义为final类,不能继承;或用于修改不能由子类重写的方法:
a.声明类:
final class 类名 {//类体}
b.声明方法:
修饰符(public/private/default/protected) final 返回值类型 方法名(){//方法体}
注意:实例变量也可以定义为final,并且不能修改定义为final的变量。声明为final类的方法会自动声明为final,但实例变量不是final
四、构造器
子类不继承父类的构造函数(构造函数或构造函数),它只调用(隐式或显式)。如果父类的构造器有参数,则必须通过子类的构造器中的super关键字显式调用父类的构造器,并提供适当的参数列表。
如果父构造函数没有参数,则不必使用super关键字调用子类构造器的父类构造器,系统会自动调用父类的无参数构造器。
实例:
 
运行结果:
 
以上就是关于大数据编程入门:Java继承的全部内容了,希望这篇文章能够帮助到大家~
热点排行
推荐文章
立即申请>>