1. 可以。但是只能有一个public类。命名规则就是不能同名咯。public类必须和文件名一致。没有public类时,可以和文件名不一致。你的根类是什么定义呢?2。Java里边没有真正意义上的全局变量。你可以将这个"全局变量“放在某一个类中声明为public static变量来使用。公共函数也是这样啦。public static 函数。

解决方案 »

  1.   

    .java文件里面可以包含几个互不相干的同层次的类.
    public类必须和文件名一致,命名规则没有其它要求.
    public类必须为.java文件里的根类..java文件里面的各个class是独立的跟卸再多个文件没有区别,
    所以第二条就不必去想了,你可能是搞C或是basic出身的,
    所以建议你先树立好面向对象编程的习惯就好。
      

  2.   

    to  mercury1231(我被MM黑了:():我说的根类就是在这个文件里就只有这个类在最上层,其他的类都是包含在他里面或者被他调用。to oicu(阿猫) :那请问是不是如果一个.java里包含有public类时,这里面的其他任何类都需要被这个public类所包含?调用算不算?是否不能再出现和这个public类毫不相干的其他类在这个文件中?
      

  3.   

    to oicu(阿猫) :我又仔细理解了一下你的答复,“.java文件里面的各个class是独立的跟卸再多个文件没有区别”,是不是可以这样理解.java文件的含义:其实同一个包里的每个.java文件存在的作用只是把这个包里所有的公共或私有类分开来管理,所以每个文件里的类甚至可以毫无关系,也不必去考虑.java里类的层次要求,同时除了限定每个.java里只能有一个和文件同名的public类且只要保证这个类不是被本.java文件中的其他类所包含的就可以了?此外.java文件里对类没有任何约束(包括层次和命名等方面),对么?
      

  4.   

    完全可以再一个.java文件里面有几个类,但是public类只能有一个。
    象上面几位说的那样,public类必须和文件名一致。没有public类时,
    可以和文件名不一致。我也没明白你说的的根类是什么意思。
    你说的全局变量在在java里面实现是这样的: 
    一个public类里面声为明public static变量来使用。
    公共函数实现方法与上面一样.
      

  5.   

    问题2.做一个public static的类
      

  6.   

    1. 只能有一个public类,其它的类你想定义多少就定义多少吧,
       可以有多个并行类的.
       class A{
          class B{}
       }
       class C{
          class D{}
       }
    2。用public static修饰吧,
       以后就用类名.变量调用就可以了.
      

  7.   

    physical的.java文件跟实际的类理论上可以没有关系。至于掉用来调用去并不能作为判断标准之一。楼主是学C/C++的吧。
      

  8.   

    to mercury1231(我被MM黑了:() :呵呵,我以前是在linux下写c程序的,后来又用DELPHI了,现在由于工作需要开始搞J2EE,快死了~~~~:)