博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
接口与继承:方法覆盖(super)
阅读量:4954 次
发布时间:2019-06-12

本文共 1208 字,大约阅读时间需要 4 分钟。

源代码

//父类Parentclass Parent{    int x;    int y;    Parent()    {        x = 0;        y = 0;    }    public void Set(int a,int b)    {        x = a;        y = b;    }}//子类Child继承了Parentclass Child extends Parent{    int z;    Child()    {        super();//使用父类的构造方法初始化        z = 0;    }    public void Set(int a,int b)//与父类相同的方法    {        x = a;        y = b;        z = a + b;    }    public void Show()    {        System.out.println("初始值");        System.out.println("x = "+ x +"  y = " + y + "  z = " + z);        System.out.println("调用父类的Set方法Set(1,2)");        super.Set(1,2);        System.out.println("x = "+ x +"  y = " + y + "  z = " + z);                System.out.println("调用子类的Set方法Set(1,2)");        Set(1,2);        System.out.println("x = "+ x +"  y = " + y + "  z = " + z);    }    }public class Test {    public static void main(String args[])    {        Child c = new Child();        c.Show();    }}

结果截图

Java“方法覆盖”的语法规则

(1)覆盖方法的允许访问范围不能小于原方法。

(2)覆盖方法所抛出的异常不能比原方法更多。

(3)声明为final方法不允许覆盖。 例如,Object的getClass()方法不能覆盖。

(4)不能覆盖静态方法

 

“方法覆盖(override)”的要点:

  (1)方法覆盖要求子类与父类的方法一模一样,否则就是方法重载(overload)!

  (2)在子类中,若要调用父类中被覆盖的方法,可以使用super关键字。

 

转载于:https://www.cnblogs.com/weipinggong/p/4941911.html

你可能感兴趣的文章
Java基础常见英语词汇
查看>>
iOS并发编程笔记【转】
查看>>
泛型 T的定义<1>
查看>>
thinkphp dispaly和fetch的区别
查看>>
08号团队-团队任务5:项目总结会
查看>>
mybatis 插入数据 在没有commit时 获取主键id
查看>>
SQL2005 删除空白行null
查看>>
lightoj 1030 概率dp
查看>>
重新注册.NET
查看>>
Java 内存溢出(java.lang.OutOfMemoryError)的常见情况和处理方式总结
查看>>
Vagrant入门
查看>>
python and 我爱自然语言处理
查看>>
第3讲:导入表的定位和读取操作
查看>>
echarts-柱状图绘制
查看>>
mysql备份与恢复
查看>>
混沌分形之迭代函数系统(IFS)
查看>>
VS2013试用期结束后如何激活
查看>>
边框圆角Css
查看>>
SQL 能做什么?
查看>>
java IO操作:FileInputStream,FileOutputStream,FileReader,FileWriter实例
查看>>