Topic: 有关package 的问题 |
Print this page |
1.有关package 的问题 | Copy to clipboard |
Posted by: yangjinfeng Posted on: 2004-08-13 16:08 下面这段程序能编译通过,但就是运行不了,错误信息是类不能加载。 如果吧这个文件分成两个类文件,则B1不能编译。请问怎么回事? 为什么加上package 语句,不能运行,去掉却又可以呢,当然我是把类文件放在对应的文件夹里 package mypackage; //定义类所属的包 class C1 { public int number; public int age; public C1(int n, int a) { number = n; age = a; } public void output() { System.out.println("number = " + number + "\n" + "age = " + age); } } public class B1 { public static void test() { C1 s1 = new C1(0,0); s1.number = 1; //同一包中的其他类可以访问public成员 s1.age = 25; //同一包中的其他类可以访问默认权限成员 s1.output(); } public static void main(String[] args){ B1.test(); } } |
2.Re:有关package 的问题 [Re: yangjinfeng] | Copy to clipboard |
Posted by: letmein Posted on: 2004-08-13 16:22 建一个目录mypackage 把你的文件扔进去 在包含mypackage目录的目录下执行java mypackage.yourClass |
3.Re:有关package 的问题 [Re: yangjinfeng] | Copy to clipboard |
Posted by: yangjinfeng Posted on: 2004-08-14 09:40 多谢letmein,如果两个类都在一个java文件里,则编译通过,象你说的那样运行也ok,你可以解释一下吗? 现在把 两个类分成两个java文件,现编译C1没问题,但是在编译B1就有错了,请问这是为什么?当然如果在mypackage目录下javac *.java 又可以编译成功,回到上一层目录java mypackage.B1,也能得到正确结果,这又是为什么呢? 我的这些疑问在jbuilder里是不存在的,这我也很纳闷。 package mypackage; public class C1 { public int number; public int age; public C1(int n, int a) { number = n; age = a; } public void output() { System.out.println("number = " + number + "\n" + "age = " + age); } } package mypackage; public class B1 { public static void test() { C1 s1 = new C1(0,0); s1.number = 1; s1.age = 25; s1.output(); } public static void main(String[] args){ B1.test(); } } 希望指点迷津 |
4.Re:有关package 的问题 [Re: yangjinfeng] | Copy to clipboard |
Posted by: letmein Posted on: 2004-08-16 08:15 所以开始学Java的时候,不要用什么工具 对深入理解没有帮助 要先编译被依赖的类 |
5.Re:有关package 的问题 [Re: yangjinfeng] | Copy to clipboard |
Posted by: bsspirit Posted on: 2004-08-18 18:13 我在JCreator里,没问题!! 做成两个文件时,要导入 import mypackage.C1; |
Powered by Jute Powerful Forum® Version Jute 1.5.6 Ent Copyright © 2002-2021 Cjsdn Team. All Righits Reserved. 闽ICP备05005120号-1 客服电话 18559299278 客服信箱 714923@qq.com 客服QQ 714923 |