我在一个类中声明的 public static void show(){.......} 方法
并不能在其他类中(包括其子类)通过 类名.show() 进行调用
public 根本就没有用处
------解决方案--------------------
public 就是表示该方法是公开的方法,允许被其他类调用
你也可以试试把它改成private后,你能否通过 类名.show() 进行调用
------解决方案--------------------
你认为应该出什么错?
------解决方案--------------------
public 是声明该方法作用域的权限,
public 后面还有 static 表示静态,
需要用类名直接调用该方法。
可以看看你JDK 和JVM是否正常。
------解决方案--------------------
编译没问题,但是运行会出错,在控制台下要你自己搞定
aaa/myclass3:
aaa> javac myclass3/cl.java
myclass3> javac cl.java
都没有错
但是运行的话只能
aaa> java myclass3.cl
------解决方案--------------------
public 允许外部的类调用! private的话只有本类才能调用!
------解决方案--------------------
楼主。有问题的愿意是不是因为你没有MAIN函数?
public class Test
{
public void show1()
{}
static void show()
{
System.out.println( "static ");
}
public static void main(String[] args){
Test.show();
}
}
我在myeclipse里面是可以运行的。
不知道是不是这个问题的答案
------解决方案--------------------
如果我使用 javac cl.java 编译 带有package myclass3; 语句的cl.java
-------------------
1.4 1.5也不会报错
------解决方案--------------------
编译的时候,带不带 -d都不会有问题,只是不带的话,不会自动放到相应的包名文件夹下。
运行的时候,jvm就要检查.class文件的路径了,包路径不正确就会出错了