继承中成员方法的关系和重写

我们介绍过了继承中的成员变量之间的关系构造方法的关系,我们发现父类和子类大部分的变量和方法都是互通的,我们再来看一下继承中成员方法的关系。


这次直接写代码:

public class 继承中成员方法的关系 {
	public static void main(String[] args) {
		Ziii z1 = new Ziii();
		z1.test1();
		z1.test2();
	}

}
class Fuuu{
	public void test1() {
		System.out.println("我是父类的成员方法");
	}
}
class Ziii extends Fuuu{

	public void test2() {
		System.out.println("我是子类的成员方法");
	}
}

输出结果:

我是父类的成员方法
我是子类的成员方法

我们可以得出:①子类对象可以调用子类的成员方法,也可以调用父类的成员方法。


但是如果我们想要把子类和父类中的方法名保持一致方便记忆呢。我们来修改代码:

public class 继承中成员方法的关系 {
	public static void main(String[] args) {
		Ziii z1 = new Ziii();
		z1.test();
	}

}
class Fuuu{
	public void test() {
		System.out.println("我是父类的成员方法");
	}
}
class Ziii extends Fuuu{
	public void test() {
		System.out.println("我是子类的成员方法");
	}
}

输出结果:

我是子类的成员方法

我们发现,我们没有办法调用到父类的成员方法(其实这里思想和成员变量的就近原则很相似),所以如果我们想要名字一样,但是还可以让子类用自己独特的方法, 毕竟作为子类,还是要有自己的想法,虽然说是子承父业,但是儿子太叛逆了,也是没有办法的。

这里的思想,就是方法的重写,利用和父类中一样的方法名,但是干着自己的事情。

在重写的方法上面,我们一般会加上伪标签 @Override(可以点击查看标签详细作用),来标志这是一个被重写的方法。
这个标签简单来说就是为了标志重写的方法,加上的时候只是用来标记,方便代码的阅读和理解,但是一般像eclipse的编辑器,会进行验证下面方式是否是被重写的方法,如果不是,就会报错。


重写的方法注意事项:

私有的方法不能被重写

  父类中私有的方法,在子类中根本就看不到,继承不下来,就不能重写。子类可以自己定义一个和父类私有方法同名的方法,也不算重写,只能算是新定义了一个方法。

 重写:使用父类的方法定义,修改为子类的实现。

方法在重写的时候,权限不能越来越小。子类应该是越来越强大,功能越来越多,不能将父类中拥有的方法,重写没了。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值