class Animal{
private String name;
public Animal(String name) {
this.name = name;
}
}
public Dog extends Animal{
public Dog(){
super("小狗");
}
}
在Dog类的构造方法中调用父类的构造方法,可是有什么用呢?在父类中name是private的,super("小狗");这一句话只是把Animal类中的private String name;初始化成了private String name=“小狗”;
还是我的理解错了?
------解决方案--------------------
给你写了一个完整点的代码,你看看哪里不懂吧
public class Demo{
public static void main(String args[]){
Dog dog = new Dog("小狗");
System.out.println(dog.getName());
Animal a = new Animal("动物");
System.out.println(a.getName());
dog.setName("我是小狗");
System.out.println(dog.getName());
a.setName("我是动物");
System.out.println(a.getName());
}
}
class Animal{
private String name;
Animal(){
}
Animal(String name){
this.name = name;
}
public void setName(String name){
this.name = name;
}
public String getName(){
return name;
}
}
class Dog extends Animal{
Dog(){
}
Dog(String name){
super(name);
}
}
}