日期:2014-05-20  浏览次数:20659 次

大牛们,过来看一下,我老师给我解释不了这个问题。。
为什么这个小程序不能运行??
package pack_1;

public class test_1 {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated 

method stub
Circle c1 = new Circle();
System.out.println();
System.out.println();
System.out.println();
System.out.println();
}
}
class Circle{
final double PI=3.1315;
private double r;
//private float area;
public void setRadius(int r){
r = r;
}
public double getArea(){
return PI *r * r;
}
public double getPerimeter(){
return 2 * PI * r;
}
public double getRadius(){
return r;
}
}
为什么删掉这一句“package pack_1;”就可以了

------解决方案--------------------
LZ是在dos 下编译吧
这是带包的程序
编译应该这样
javac -d . test_1.java (把编译生成的包存于和源文件同一个目录,当前目录)
然后java pack_1.test_1就OK了
还有一种方式 就是
1.在当前目录下自己建好pack-1这个文件夹
2.编译test_1.java (javac test_1.java)
3.将生成的class文件拷到pack_1文件夹中
4.运行class 文件 (java pack_1.test_1)
网上有,搜一下“如何在dos下运行带包的java文件”看