java面向对象的特性之继承
光环大数据创办于2001年,办学16余年来,培养181361余IT人才,其中80%入职国内外知名企业,20700余人入职500强企业,平均就业率99.81%。
Java作为大数据培训课程的技术基础,也是其中重要的课程之一,我们先来了解下
1.为什么使用继承
①提高代码的复用性
②提高维护性
③有了继承让类与类之间产生了关系,能够创建出更加特殊的类型(多态)
2.如何使用继承
关键字:extends-----"扩展"明确子类是父类的扩展
如:
classAextendsB{
}
子类:A父类(超类、基类、SuperClass):B
3.通过继承,子类可以继承父类中所有的属性和方法。(包括私有的)
私有的属性也会被继承,但是因为private修饰符的作用,子类不能直接访问
需要通过公共的get/set方法进行访问
4.继承的注意:
①不能为了简化代码,获取某功能而继承,若要完成继承两个类之间要有一定的所属关系:isa
②Java只支持单继承,不支持多继承。(一个父类可以有多个子类,但是一个子类只能有一个父类)
③Java支持多层继承。
classA{
voidtest1(){}
voidtest2(){}
}
classBextendsA{
//voidtest1(){}
//voidtest2(){}
}
---------------------------
classA{
voidtest1(){
//111111111111
}
}
classB{
voidtest1(){
//22222222222
}
}
classCextendsA,B{}
Cc=newC();
c.test1();
二、方法的重写:当父类中的方法对于子类来说不适用的情况下,子类可以对父类中方法进行“重写”
前提:要有继承关系,使用在子类中
①方法名和参数列表必须相同
②返回值类型可以不同,但是有规则(若重写方法返回值类型是父类被重写方法返回值类型的子类)
③子类重写方法的访问控制修饰符不能小于父类被重写方法的访问控制修饰符
【面试题】Override和Overload的区别?
三、super和this的使用方式完全一致!
this:使用在本类中,代表当前对象的引用
super:使用在子类中,代表父类对象的引用
super.属性
super.方法
super(……);调用父类构造器
①当子类继承父类后,子类“所有”构造器中默认第一行第一句都有一句:super()
super:当子类继承父类后,子类继承父类中所有的属性和方法,子类需要知道父类如何为对象进行初始化
②若父类中没有提供无参构造器,子类“所有”构造器中必须显示调用父类有参构造器
(无论如何必须保证创建子类对象前,先初始化父类)
③super()调用父类构造器,必须写在构造器中可执行代码的首行
因此,this()和super()不能同时出现
四、四种访问控制修饰符
public:公共的,可用于修饰属性、方法、类。在任何地方都可以使用
protected:受保护的,可用于修饰属性、方法。可以在本类中、本包中、子类中
default:默认的(缺省的),可用于修饰属性、方法、类。可以在本类中、本包中
注意:default并不是访问控制修饰符的关键字,在什么都不加的情况下就是default
private:私有的,可用于修饰属性、方法。只能在本类中使用
大数据培训,就选光环大数据!
原创文章,转载请注明出处:光环大数据http://hadoop.aura.cn
大数据培训、人工智能培训、Python培训、大数据培训机构、大数据培训班、数据分析培训、大数据可视化培训,就选光环大数据!光环大数据,聘请专业的大数据领域知名讲师,确保教学的整体质量与教学水准。讲师团及时掌握时代潮流技术,将前沿技能融入教学中,确保学生所学知识顺应时代所需。通过深入浅出、通俗易懂的教学方式,指导学生更快的掌握技能知识,成就上万个高薪就业学子。 更多问题咨询,欢迎点击------>>>>在线客服!