package javan;
import java.util.*;
interface Common{
public abstract int ComputerTime(String v,int a,int b,int c);
}class Car007 implements Common
{
int A,B,C;
String car;
public int ComputerTime(String car,int a,int b,int c)
{
car="Car";
this.A=a;
this.B=b;
this.C=c;
return a*b/c;
}
}public class Main {
public static void main(String[] args) {
Car007 A=new Car007();
System.out.print("the car speed is " +A.ComputerTime("car", 10, 20, 30));
}
}
为什么在Car007的ComputerTime方法必须声明为public呢?不声明的话就会报错。就解释,谢谢了.
import java.util.*;
interface Common{
public abstract int ComputerTime(String v,int a,int b,int c);
}class Car007 implements Common
{
int A,B,C;
String car;
public int ComputerTime(String car,int a,int b,int c)
{
car="Car";
this.A=a;
this.B=b;
this.C=c;
return a*b/c;
}
}public class Main {
public static void main(String[] args) {
Car007 A=new Car007();
System.out.print("the car speed is " +A.ComputerTime("car", 10, 20, 30));
}
}
为什么在Car007的ComputerTime方法必须声明为public呢?不声明的话就会报错。就解释,谢谢了.
解决方案 »
- 关于JavaSwing的文本框问题 望各路英雄好汉帮助啊
- [紧急求助] 哪位大哥知道IBM java JVM的下载地址啊??
- 用ajax如何实现将数组从后台传回jsp页面中供js使用,谢谢!
- 用JAVA生成的密钥是什么格式,怎么输出啊
- 有谁用过红旗5,播放影片时卡的非常厉害,请问如何解决!
- 为何我的java线程会引起oracle的TNSLSNR.EXE进程占用100%的CPU
- poi在weblogic和jbuilderx的配置?
- 初学者提问
- 关于java 2d的问题,请教各位大哥。
- 菜鸟问题 (我的第一个java程序) 有可能是和环境变量的设置有关
- static变量
- notify和notifyAll
public void foo();
}public class Sub implements Super{
private void foo(){
//do stuff
}
}
上述代码的子类缩小了父类中foo方法的可见范围,这样编译肯定无法通过,为什么要这么规定?如果我作如下方法调用:...
Super su = new Sub();
su.foo();
...
根据多态性,su.foo()会调用Sub类中的foo()方法,但是该方法是private的,无法被外界访问,因此这里出现了矛盾,所以java中会有如此规定。
所以定义其他的访问级别就报错了
就是权限的问题。因为接口中的方法都是默认的全符修饰的,你就是不加,系统也会默认的给你加上的。全符就是
public static abstract 方法名();
当你要实现这个接口的时候就要覆盖它里面的方法,那么这个方法的访问权限就要大于或等于接口中的方法,那么肯定就只能是public了,因为public的访问权限是最大的,这个你懂的,,楼主。
新手意见理性采纳。感觉其他人说的都对。我就当给你总结一下吧,谢谢!!!