1. 问题:多态的好处?
回答:
目前只感受到了一点:减少修改代码时的工作量;
扩展父类功能。其他的作用在敲代码的过程中再慢慢感受吧
2 .问题: this super 理解了吗?
回答:
this:
this() 调用本类中的其他构造器
例如
//两个单数的构造器
public Student(name,age){
this.name=name;
this.age=age;
}
//三个参数的构造器
public Stundent(score){
this(name,age);
this.score=score;
}
super
super() 调用父类的构造器
父类中的构造器同样有无参、一个参数、多个参数的情况
super()
super(name,age)
上述代码加到当前子类构造器的开头即可
注意: this() super() 两者选一,放在构造器的开头
3.问题:构造器的理解
回答:
结构:类名+()
构造器也是类图纸的一部分,相当于一个机器,按照参数要求,设计出不同的对象生产标准,在构造器中初始化变量属性,在实例化中真正完成对象制造。
例如:
无参构造器: public Person(){}
无参构造器,方法体内初始化变量:
pubic Person(){
int age=10;
}
带参构造器:
public Person(int age ,String name){
this.age =age;
this.name=name;
}
解释:实例化变量过程中,方法区加载类的字节码信息,堆 按照上述信息生成对象属性并开辟空间,此时age初始化值为0;随后执行构造器中的初始化,age 赋值变为10;后续如果利用 setAge(20),修改age,则age 会变为20。