当前位置: 技术问答>java相关
怎么样在.java文件中包含同一个包下面的类?在线等
来源: 互联网 发布时间:2017-03-31
本文导语: 我想在a.java文件中使用b.class类,他们都属于一个包,用import c.b;语句说出错(不能解析符号,c是包名),请问要如何做才行,小弟在线等,多谢了! | 你这个问题不是源码的问题,也就是说...
我想在a.java文件中使用b.class类,他们都属于一个包,用import c.b;语句说出错(不能解析符号,c是包名),请问要如何做才行,小弟在线等,多谢了!
|
你这个问题不是源码的问题,也就是说与语法没有关系,
最大可能是你的classpath没有包含当前目录;
其次是你生成的.class不在同一个目录下;
最后是你.class能在JSP中调用吗?
如果都没问题,说明问题应该解决
最大可能是你的classpath没有包含当前目录;
其次是你生成的.class不在同一个目录下;
最后是你.class能在JSP中调用吗?
如果都没问题,说明问题应该解决
|
不用包含!
|
不用包含啊,在同一目录下的类是可以自动找到的啊
|
你可以把需要a调用的类成员函数或变量设置为public,加入一个构造函数public a(){},然后在b中实例化a:a temp_a=new a();使用a的实例temp_a即可。
也可把b作为a的子类:class b extends a{},这样b就可直接使用a中的函数和变量了,当然你也可以重载a的成员函数。
也可把b作为a的子类:class b extends a{},这样b就可直接使用a中的函数和变量了,当然你也可以重载a的成员函数。
|
你应该好好看一下流行的一本电子书:think in java
|
a.java和b.java的package语句一致确认
编译生成的a.class b.class是否位于同一目录下
比如 c=dadao.myclass 则class文件应该在
/dadao/myclass/下
如果以上前提成立,那么无需import文
在a.java中可以直接生成b的实例
实例生成后 b的方法(函数)和域(变量)就可以使用了
private宣言除外
编译生成的a.class b.class是否位于同一目录下
比如 c=dadao.myclass 则class文件应该在
/dadao/myclass/下
如果以上前提成立,那么无需import文
在a.java中可以直接生成b的实例
实例生成后 b的方法(函数)和域(变量)就可以使用了
private宣言除外
|
比如:如果a.java和b.java都用了package test,a.java位于test目录下,a.java要调用b.class,那么在test目录下再建一个test目录,把b.class放到里面。
|
如果使用jsdk1.4或1.4.1,系统环境变量中的classpath中要加上当前目录:
.
.
|
a,b类为什么是一样的阿
晕
希望可以重新贴一下
而且好像你在a类的构造函数中有b ab = new b();
在b类中有a ab = new a();这样会出现死循环的
属于逻辑错误,所以不能够互相用。
晕
希望可以重新贴一下
而且好像你在a类的构造函数中有b ab = new b();
在b类中有a ab = new a();这样会出现死循环的
属于逻辑错误,所以不能够互相用。