A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 HM朱蛟 于 2013-3-29 08:20 编辑

今天学习集合框架的时候遇见个这个问题

我写一个源文件,文件名为List.java里面有这样的语句        
List sub = al.subList(1,3);         sop("sub="+sub);

于是编译报错:

List.java:80: 无法访问 List
错误的类文件: .\List.java
文件不包含类 List
请删除该文件或确保该文件位于正确的类路径子目录中。
         List sub = al.subList(1,3);
         ^

我后来将源文件名改成ListDemo过后就通过编译了,请问这是什么情况?


评分

参与人数 1技术分 +1 收起 理由
黄玉昆 + 1

查看全部评分

4 个回复

倒序浏览
http://bbs.itheima.com/thread-40023-1-1.html
看看这个帖子
1、public 修饰的类名要与文件名一致(一个.java文件中最多有一个public修饰的类)
2、最好不要用java的关键字、java的API包中的类名,去命名文件名,这个错误就算你用eclipse也不会提示
回复 使用道具 举报
本帖最后由 HM朱蛟 于 2013-3-29 08:32 编辑
曹睿翔 发表于 2013-3-29 07:21
http://bbs.itheima.com/thread-40023-1-1.html
看看这个帖子
1、public 修饰的类名要与文件名一致(一个.j ...

感谢了!!! 顺着链接的思路找到了   ~~  谢谢啊

源文件与类重名.png (95.97 KB, 下载次数: 46)

源文件与类重名.png
回复 使用道具 举报
如果你实在需要重名,需要用自己的类加载器加载~~~默认加载的是JDK里面的同名类~~
回复 使用道具 举报
如果类名与JDK中的类名一致的话,可以在使用类的时候加上包名,
如果包名也一样的话,那就无语了,要么改你的包名,要么你把JDK改了。。。
尽量避免重名的情况发生
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马