日期:2014-05-20 浏览次数:20874 次
class Test{ void compare(int j){ //前面声明void类型,不返回值 System.out.println("中国"); } } class Test2 extends Test{ void compare(int j){ //与父类的方法一摸一样地声明一个,因为要覆盖它。 super.compare(int j); //这句话先去执行父类compare的功能,可能你说的继承是指这个,但用词让人误解。 // …… //其他后续代码,实现个性化功能。 } }
------解决方案--------------------
1.在接口里面的方法不能有参数列表吗?
可以有参数列表,在接口中方法没有方法体,没有具体实现
public static void show(String str,int i);
2.在父类中,如果一个方法中有参数列表,那么在子类中如何继承有参数的父类的方法呢?
只要之类继承了父类,那么之类就会拥有父类的非私有成员
可以通过this和super访问
class Test{
compare(int j){//在这里编译出错:reason:没有返回类型 void compare(int j){打印}正确写法
System.out.println("中国");
}
}
class Test2 extends Test{
super.compare(int j); //这行带面编译出错:reason:在类中如果想要访问超类成员并且用super.成员的方式进行访问需要将super.成员放置方法或构造之中
}
下面写法:
class Test{
void compare(int j){
System.out.println("中国");
}
}
class Test2 extends Test{
public Test2(int j){
super.compare(j);//调用超类方法
}
}