JAVA面向对象--继承:子类对父类构造器继承问题总结

本文详细探讨了JAVA中继承时,子类与父类构造器的关系。从父类无构造器,仅有无参构造器,仅有有参构造器,到同时拥有无参和有参构造器四种情况,通过实例代码逐一验证了子类如何调用父类构造器。总结了子类在不同情况下调用父类构造器的规则和注意事项。
摘要由CSDN通过智能技术生成

首先:在继承中,子类不能继承父类的构造器,子类只能调用父类的构造器

分如下四种情况讨论,并在代码中一一验证。

(1)父类没有构造器

父类代码:

public class Annamal {
	public String run;
	public String eat;

	public  void getRun() {
		System.out.println(" Annamal is run!");
	}
	public void setRun(String run) {
		this.run = run;
	}
	public void getEat() {
		System.out.println(" Annamal is eat!");
	}
	public void setEat(String eat) {
		this.eat = eat;
	}
}

 

子类代码:

public class Dog extends Annamal{
	 
   private String name;
   private String sex;
   
   
   public Dog(){ //无参构造
	   
	    System.out.println("--无参构造--Dog--");
   }
   
    
   public Dog(String name,String sex){ //有参构造
	   
	    System.out.println("--有参构造--Dog--"+name);
		this.name = name;
		this.sex = sex;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public String getSex() {
		return sex;
	}

	public void setSex(String sex) {
		this.sex = sex;
	}  
}

演示代码:

public class TestDemo {
	
	public static void main(String[] args){
		
		Dog d1 = new Dog();
		Dog d2 = new Dog("小黑","Man");
		System.out.println(d2.getName());
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值