import的一个疑问

swz_2969 2007-12-15 10:38:00
import所引入的包中,是不是只能是public类才可以在所引入的文件中有用?
如:
//要引入的包
package Example;

class MyClass1 {

}
class MyClass2{

}

//源文件
package It5_6;
import Example.*;
class Employee {
private String name;
private MyClass1 hireDate;//编绎错误
MyClass2 c;// 编绎错误
}


如果在Example中的类改为public的则可以通过,但是只可以是一个类~!
可以两个类吗?
...全文
93 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
runshine 2007-12-16
  • 打赏
  • 举报
回复
...- -!

当然不能了,一个文件中只能有一个public类...

无修饰符的类访问权限是很低的。
不是在同一个包中,基本就只能访问public类了,如果你想把两个类写一个文件里,那就把另外一个文件Employee也放到同一个包中,就可以访问两个类了
  • 打赏
  • 举报
回复
1.类的修饰符有public 默认的(内部类可以用private)
2.具默认的修饰的类,只得被同一包,也就是同一系统文件夹下的类访问
 在别的包不能访问,这里所说的访问是反指是否能被来实例化一个类,也可以这样
 说吧,就是是否能用自定义数据类型(类)。
3.Java源文件中最多只有一个共公类(最多只有一个类的修饰符是public的)一个
 有多个类,其对应的源文件如何组织是你自己的事,但不论你怎样组织,编译成JAVA
 字节码的class文件后,都是放在同一个包中的。
4.Java源文件中具有静态主方法的类,必须具有public修饰符 
swz_2969 2007-12-16
  • 打赏
  • 举报
回复
只有这么多分,大家都帮了我,就一人给点吧~!
大家不要介意啊~!
嘻嘻,谢谢了!
网络咖啡 2007-12-16
  • 打赏
  • 举报
回复
类的访问控制符号只有2个:public和默认的
默认的只能在同一个包内部访问,而且不需要引入

所以在不同包中只能使用public修饰的类
jabeginner 2007-12-16
  • 打赏
  • 举报
回复
在不同的包中要访问其类的话,其类只能是public类型的,并且,在同样的一个java文件中,只能有一个public类型的类.
Dan1980 2007-12-16
  • 打赏
  • 举报
回复
楼主的编码习惯不好。
一般来说,如果你不需要让一个类隐藏在所在的package中,都要定义成public的。而且,一个.java文件中只能有一个public类,这个类的名字和该.java文件的文件名要相同。
不加public的类只能在当前package中访问,该机制是java用来实现代码隐藏的手段之一。
shaoml 2007-12-15
  • 打赏
  • 举报
回复
你说的什么意思?
都是public类可以引入。

62,623

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧