为什么这个小程序不能运行??
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;”就可以了
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;”就可以了
就是这个java文件是否在pack_1这个文件夹下面。
文件夹名:pack_12.在c盘下的pack_1文件夹下建立文件
文件名:test_1.java
文件内容:.....然后再运行
3.在c盘下建立文件
文件名:test_1.bat
文件内容:
javac pack_1/test_1.java
java pack_1/test_1
4.双击test_1.bat这个文件
你可以这样运行:先进入pack_1,对test_1进行编译,然后再出来(pack_1外),用java pack_1.test_1
来执行
而且public void setRadius(int r){
r = r;
}
这句赋值语句有问题。如果程序运行,你的所有值都是为0.
这是带包的程序
编译应该这样
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文件”看