码迷,mamicode.com
首页 > 编程语言 > 详细

一个JAVA类文件中只能有一个public类吗?

时间:2017-10-05 22:01:48      阅读:445      评论:0      收藏:0      [点我收藏+]

标签:style   title   test   java内部类   结果   两种   ted   target   span   

测试代码一:

1 public class Test {
2     public static void main(String[] args) {
3         
4     }
5 }
6 public class Test1{
7     
8 }

 

测试结果:

技术分享

(公有类TestTwo必须定义在它自己的类文件中)

结论:所以,一个类文件只能有一个public类。

测试代码二:

1 public class Test {
2     public static void main(String[] args) {
3         
4     }
5     public class innerClass{
6         
7     }
8 }

测试结果:

技术分享(编译通过)

其中innerClass为Test内部类。

通过查找资料得知:

  内部类可以拥有private访问权限、protected访问权限、public访问权限及包访问权限。比如上面的例子,如果成员内部类Inner用private修饰,则只能在外部类的内部访问,如果用public修饰,则任何地方都能访问;如果用protected修饰,则只能在同一个包下或者继承外部类的情况下访问;如果是默认访问权限,则只能在同一个包下访问。这一点和外部类有一点不一样,外部类只能被public和包访问两种权限修饰。(来源:Java内部类详解

结论:

  • java源文件中直接定义的public类只能有一个,且该类名必须与源文件名一致。
  • 内部类可以理解为外部类的一个成员,成员可以用public修饰。

一个JAVA类文件中只能有一个public类吗?

标签:style   title   test   java内部类   结果   两种   ted   target   span   

原文地址:http://www.cnblogs.com/lzq666/p/7630037.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!