2014-09-01 175 views
-2
Public class Parent { 

    int a, b; 

    public void sum() { 

     System.out.println(a + b); 

    } 

} 

class Child extends Parent { 

    public void mul() { 

     System.out.println(a * b); 

    } 

} 

class Inh1 { 

    public static void main(String args[]) { 

     Child c = new Child(); 

     c.a = 20; 
     c.b = 20; 

     c.sum(); 
     c.mul(); 

    } 

} 

这段代码工作正常,如果没有“公开”写在孩子和父类....输出将是...... 40和400但一次市民提前写父类的我得到这个错误Inh1.java:1:类,接口,或枚举预期另外,如果我写的公共进取子类的相同错误出现如何解决枚举或接口的预期错误

我的第二个疑问是,当我写“公共“(资本P)我得到

Inh1.java:1: class, interface, or enum expected 

但如果我写”公众“(小P)的错误是

Inh1.java:1: class Parent is public, should be declared in a file named Parent.java 

请澄清我的这些小疑问,我是新来编程,Java和OOPS

+0

这是一个简单的拼写错误。任何IDE都会自动纠正这个问题,这就是使用它们的理由。 – soulcheck 2014-09-01 18:13:37

+0

另请参见:java区分大小写。 – soulcheck 2014-09-01 18:14:12

+0

在Java中,每个公共类都需要在具有该名称的文件中声明。所以公共Parent类需要在Parent.java – selig 2014-09-01 18:30:08

回答

0

首先,写出公众小写ppublicPublic

其次,只有一个(顶层)类可以在一个文件中是公共的(如果该文件名为Parent.java只有Parent类可以是公共的)

1
  • 只能有一个顶层公共类的文件
  • 文件应该由公共类被命名为唯一
  • 它是公共的小p
+0

@soulcheck你的评论是正确的,但不相关。内部类不在这个问题的范围内。 – alfasin 2014-09-01 18:24:58

+0

@soulcheck - 我同意alfasin。我仍然更新我的答案是否正确。 – Adi 2014-09-01 18:26:17