您现在的位置是:首页 > 文章详情

JAVA中类的继承、覆写特性

日期:2018-07-11点击:422

继承

继承性严格来讲就是指扩充一个类已有的功能。

语法:class 子类 extends 父类{}

功能:继承父类的属性、方法同时也可以扩充父类没有的属性、方法。

类的继承的限制:

一、Java中的类不允许多重继承,允许多层继承

        错误的继承:

class A{} class B{} class C extends A,B{} //一个子类继承两个父类

     多层继承:

class A{} class B extends A{} class C extends B{}

二、子类在继承父类时,对父类的私有操作是隐式继承,非私有操作是显式继承

    如下程序所示,msg属性在A类中是私有声明,只能利用setter或getter方法进行私有属性访问。

class A{ private String msg; public void setMsg(String msg) { this.msg = msg; } public String getMsg() { return this.msg; } } class B extends A{ } public class demo { public static void main(String args[]) { B b = new B(); b.setMsg("Nice to see you!"); System.out.println(b.getMsg()); } }

三、父类对象先实例化,子类对象后实例化

    当父类提供无参构造方法时,可以不编写“super()”。但是如果父类不提供无参构造方法时,必须明确使用super()调用父类指定参数的构造方法。

class A{ public A() { System.out.println("父类无参构造被调用"); } public A(String title) { System.out.println("父类有参构造被调用 title="+title); } } class B extends A{ public B(String title) { //这一句可以不写也可以写,因为父类构造器中已有无参构造。 //但是若父类构造器没有无参构造则必须写super() super(); // super(title); System.out.println("Nice to see you!"); } } public class Temp { public static void main(String args[]) { new B("hahahaha"); } } 输出结果: 父类无参构造被调用 Nice to see you! 
package com.hdu.java; class A{ public A() { System.out.println("父类无参构造被调用"); } public A(String title) { System.out.println("父类有参构造被调用 title="+title); } } class B extends A{ public B(String title) { // super(); super(title); System.out.println("Nice to see you!"); } } public class Temp { public static void main(String args[]) { new B("hahahaha"); } } 输出结果: 父类有参构造被调用 title=hahahaha Nice to see you!

 

 

覆写

       定义:子类定义了和父类的方法名称、返回值类型、参数类型及个数完全相同的方法

       结果:实例化子类对象时,将不再执行父类的方法,而是直接调用已经被子类覆写过的方法。

       优势:当有多个字类时,父类的方法就会根据子类的覆写,有不同的实现效果。

权限问题:被子类覆写的方法不能有比父类更严格的访问控制权限。权限从宽到严的顺序是:public>default(默认,什么都不写)>private。

附:this 和 super的区别

区别 this super
功能 调用本类构造、本类方法、本类属性 子类调用父类构造、方法、属性
形式

先查找本类中是否存在有指定的调用结构,如果有则

直接调用,如果没有则调用父类定义

不查找子类,直接调用父类操作
特殊 表示本类的当前对象 ——

 

 

 

 

原文链接:https://yq.aliyun.com/articles/631784
关注公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。

持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。

文章评论

共有0条评论来说两句吧...

文章二维码

扫描即可查看该文章

点击排行

推荐阅读

最新文章