日期:2014-05-20 浏览次数:21084 次
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);//调用超类方法
    }  
}