继承的其他特性

本文深入解析了面向对象编程中继承的概念,包括成员变量和构造方法的特点,以及方法的重载与重写规则。阐述了在子类中如何调用父类方法,强调了代码复用性和维护性的提升,同时也讨论了类的耦合性增加这一缺点。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

继承中成员变量的特点

package com.ys_01;
/*
 * 继承中成员变量的特点:1 子类的中没有这个方法,那就调用父类的
 * 			      2 子类中重写了这个方法,那就是调用子类的
 * 
 * 
 * 另外,方法的重载是:在一个类中,有多个重名的方法,但是其参数不同(数量,类型,顺序),与返回值无关
 * 		方法的重写是:在子父类中,子类的方法和父类完全一样,调用子类对象时,用的是子类的方法
 * 
 * 
 * 		方法重写的应用场景:父类的方法不满足或不能完全满足子类的需要,此时重写,
 * 						同时还可以通过super.方法调用父类的,
 * 	
 * 		方法重写的注意事项:不能重写父类的私有方法,子类的权限必须>=父类的
 * 
 * 
 */
public class ExtendsDemo04 {
	public static void main(String[] args) {
		Son2 s = new Son2();
		s.haveFun();
	}
}

class Dad2{
	public void haveFun() {
		System.out.println("打打牌");
		System.out.println("回家被老婆说");
	}
}

class Son2 extends Dad2{
	public void haveFun() {
		System.out.println("打打游戏");
	}
}

继承中构造方法的特点

package com.ys_01;
/*
 * 		继承中构造方法的执行顺序:
 * 		
 * 		在有子父类继承关系的类中,子类创建对象,调用子类的构造方法,
 * 		此时如果子类的构造方法的第一行没有调用父类的构造方法,则会默认的调用父类的无参构造
 * 		注意:肯定是会先执行父类的构造方法,因为要给父类的成员变量初始化,子类可能会使用到
 * 
 * 		我们可以使用super()在子类构造方法中的第一行来调用父类的构造方法
 */
public class ExtendsDemo05 {
	public static void main(String[] args) {
		Zi z = new Zi();
	}
}

class Die{
	public Die() {
		System.out.println("我是父类无参构造");
	}
	public Die(int num) {
		System.out.println("我是父类有参构造");
	}
}

class Zi extends Die{
	public Zi() {
//		super();
		this(2);
		System.out.println("我是子类无参构造");
	}
	public Zi(int num) {
		System.out.println("我是子类有参构造");
	}
}

运行结果:
我是父类无参构造
我是子类有参构造
我是子类无参构造

继承的优缺点 :
优点:1 提高了代码的复用性
2提高了代码的可维护性
缺点:类的耦合性增加了(开发的原则是高类聚低耦合 内聚指
自己完成某件事的能力,耦合指类与类的关系)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值