Richmond1979 2010-06-29 15:49
浏览 175
已采纳

调用基类的构造函数

public class Animal {
public Animal(String aType) {
type = new String(aType);
}

public String toString() {
return "This is a " + type;
}

private String type;
}

public class Dog extends Animal {
public Dog(String aName) {
super("Dog");
name = aName;
breed = "Unknown";
}
public Dog(String aName, String aBreed) {
super("Dog");
name = aName;
breed = aBreed;
}

private String name;
private String breed;
}

public class TestBerived {
public static void main(String[] args) {
Dog aDog = new Dog("Fido", "Chihuahua");
Dog starDog = new Dog("Lassie");
System.out.println(aDog);
System.out.println(starDog);
}
}

输出结果是:
This is a Dog
This is a Dog

[size=x-small]请问调用基类的构造函数为何会隐含调用基类的toString方法呢?[/size]

  • 写回答

3条回答 默认 最新

  • weixin_42516107 2010-06-29 21:42
    关注

    [code="java"]
    public Dog(String aName) {
    super("Dog");
    name = aName;
    breed = "Unknown";
    }
    public Dog(String aName, String aBreed) {
    super("Dog");
    name = aName;
    breed = aBreed;
    }
    [/code]
    大哥,你在这里面 就把type赋值为"Dog",然后System.out.println(aDog),就会调用toString()方法了

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥30 matlab appdesigner私有函数嵌套整合
  • ¥15 给我一个openharmony跑通webrtc实现视频会议的简单demo项目,sdk为12
  • ¥15 vb6.0使用jmail接收smtp邮件并另存附件到D盘
  • ¥30 vb net 使用 sendMessage 如何输入鼠标坐标
  • ¥15 关于freesurfer使用freeview可视化的问题
  • ¥100 谁能在荣耀自带系统MagicOS版本下,隐藏手机桌面图标?
  • ¥15 求SC-LIWC词典!
  • ¥20 有关esp8266连接阿里云
  • ¥15 C# 调用Bartender打印机打印
  • ¥15 我这个代码哪里有问题 acm 平台上显示错误 90%,我自己运行好像没什么问题