已采纳回答 / AAnonymous
@override表示覆盖(Java里是这么叫么?)简单来说,子类继承父类或实现某各接口,我们可以重写父类的某个方法,这就叫做覆盖。其作用就是父类引用变量引用子类对象时可以调用子类覆盖的方法,这就是多态(C++中是使用虚函数实现的)至于这个@Override写不写都可以,写了的话,编译的时候,编译器会检查下面的方法是否确实是对父类或接口方法的覆盖,是则通过,不是则报错。这个属于Java注解类。具体可以参考Java注解类的内容
2015-08-05
super
子类的构造的过程当中必须调用其父类的构造方法。
如果子类的构造方法中没有显示调用父类的构造方法,则系统系默认调用父类无参的构造方法。
如果显示的调用构造方法,必须在子类的构造方法的第一行。
如果子类构造方法中既没有显示调用父类的构造方法,而父类又没有无参的构造方法,则编译出错。
子类的构造的过程当中必须调用其父类的构造方法。
如果子类的构造方法中没有显示调用父类的构造方法,则系统系默认调用父类无参的构造方法。
如果显示的调用构造方法,必须在子类的构造方法的第一行。
如果子类构造方法中既没有显示调用父类的构造方法,而父类又没有无参的构造方法,则编译出错。
2015-08-05
final 修饰类,不允许被继承。
final 修饰方法,不允许被覆盖或重写。
final 修饰属性,该属性的值只能赋一次值。
不允许改变的量就是常量。
final 修饰方法,不允许被覆盖或重写。
final 修饰属性,该属性的值只能赋一次值。
不允许改变的量就是常量。
2015-08-05
1、向上类型转换(隐式/自动类型转换),是小类型到大类型的转换(无风险)
2、向下类型转换(强制类型转换),是大类型到小类型(有风险)
3、instanceof运算符,来解决引用对象的类型,避免类型转换的安全性问题,输出布尔值,配合IF使用
2、向下类型转换(强制类型转换),是大类型到小类型(有风险)
3、instanceof运算符,来解决引用对象的类型,避免类型转换的安全性问题,输出布尔值,配合IF使用
2015-08-05
其实老师已经说得很清楚了。子类构造方法中“super();”显式调用是否必须,关键只有一个:父类到底有没有无参构造函数:有,显式,隐式皆可;无,必须显式!
2015-08-05