今天学习了重写,有沉入学习了继承,下面就跟大家分享一下:
1、什么是重写?用什么方法可以强制检测当前方法是否重写父类方法?
重写发生在子类和父类之间,子类的方法名和父类相同,参数列表也相同,返回类型也相同。当调用子类方法时,会优先调用子类重写的方法。
用@Owerride可以强制检测。
2、构造方法能继承吗?子类继承父类,子类构造方法第一句应该如何书写?
构造方法不能被继承。 super必须是子类构造方法第一句。
3、final的用法?String可以继承吗?为什么?
1)final用于类,表示类不能被子类继承。
2)final用于方法,表示方法不能被子类重写。
3)final用于变量,表示变量值不能改变。
由于String申明为final,所以不能继承。
4、下列方法中哪些重写了父类方法?
class A{
public int test(String s){
System.out.println("aaa");
}
}
class B extends A{
public int test(String rrr){}//a
public void test(String rrr){}//b
public int test(int rrr){}//c
public int test(){}//d
}
重写:public int test(String rrr){}//a
5、说出代码执行结果
public class X{
public int x;
public int y;
public X(int x){
this.y = x;
}
}
class Child extends X{
public Child(int x){
super(x);
}
}
class Test{
public static void main(String[] aa){
Child c = new Child(10);
System.out.println(c.x);
}
}
执行结果:10