java吧 关注:1,253,695贴子:12,740,653
  • 17回复贴,共1
class test
{
static int a = 1;
int b = 2;
protected int c = 3;
}
class Test extends test
{
public static void main(String [] args)
{
Test one = new Test();
System.out.println(one.a);
System.out.println(one.b);
System.out.println(one.c);
}
}


1楼2015-11-18 15:33回复
    为什么老是提示找不到或无法加载主类呀


    2楼2015-11-18 15:37
    收起回复
      你这里的test和Test是两个类处于同一个java类中,一旦包含main函数,那么文件名必须以包含main的类名相同,也就是你这个文件必须叫Test.java


      来自Android客户端3楼2015-11-21 01:27
      收起回复
        这是我验证的结果:编译之后,仅生成了一个Test.class文件,并没有生成test.class。而我将Test.class内容用反编译器,打开发现内部竟然是test.class的内容。就说明此时jdk已经搞不清楚他们的大小写了。这里解决方法:可以将test换个名字一切OK。


        IP属地:陕西来自Android客户端4楼2015-11-21 09:43
        收起回复


          IP属地:陕西来自Android客户端5楼2015-11-21 09:45
          回复
            454107452:不对,不是jdk区分不了大小写了,而是我们的电脑问题,在同一个文件夹下,不可能出现Test.class和test.class(不信可以验证,你自己新建两个试试),所以jdk实际上编译会产生两个,而电脑在同一文件夹只能有有一个,才会有这问题出现。现在问题已经找到最终答案


            IP属地:陕西来自Android客户端7楼2015-11-21 10:47
            回复