黑马程序员技术交流社区
标题:
有一个小问题请解答
[打印本页]
作者:
完美恋爱
时间:
2013-10-14 15:38
标题:
有一个小问题请解答
本帖最后由 完美恋爱 于 2013-10-14 18:27 编辑
比如有一个java文件名叫aaa.java
里面的主函数所在的类的类名是这么定义的
class bbb{},名字跟java文件的名字不一样,但是可以编译成功
但是在class前面加个public,编译就失败,这是为什么啊?
作者:
郑齐育
时间:
2013-10-14 15:48
java源文件命名规则,如果源文件只有一个类,那么文件名必须与类名相同,如果源文件有多个类,且有一个是public的,那么源文件名必须与这个类名相同。如果源文件有包含多个类且没有public类,那么源文件的名字只要与某个类的名字相同即可。
作者:
赖波
时间:
2013-10-14 16:35
class Test {
public class Test1{
int a=6;
}
public static void main(String []args){
Test1 t1=new Test().new Test1();
System.out.println(t1.a);
}
}
复制代码
我的运行可以,不知你的是怎么回事,还是我理解错了
如果是权限的话记住
public
>包类型的,即默认类型
>protected
>private
作者:
air
时间:
2013-10-14 17:03
你没有认真看视频哦。毕向东老师的视频里有讲,class 前面 如果有public,就是必须保证 类的名称和文件名同样是XXX的意思,没有就随便你怎么命名。
作者:
air
时间:
2013-10-14 17:05
赖波 发表于 2013-10-14 16:35
我的运行可以,不知你的是怎么回事,还是我理解错了
如果是权限的话记住
public
他的意思是文件名和类名不一样,加了public就会编译失败。可能是常识吧,视频里面没有讲,我也不知道更深的原因是什么
作者:
小周务商
时间:
2013-10-14 17:05
看到英文就头疼。。。。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2