运行具有两个类的Java程序

时间:2014-12-01 08:15:57

标签: java inner-classes

我想知道如何通过纠正错误来执行这个java程序。

代码是:

import java.io.*;
class start
{
   public static void main(String args[])
   {
      System.out.println("STARTING JAVA PROGRAM");
   }
}
class finish
{
   System.out.println("FINISH");
}

执行此程序产生的错误是:

D:\Downloads\PRO>javac start.java

start.java:10: error: <identifier> expected
System.out.println("FINISH");
start.java:10: error: illegal start of type
System.out.println("FINISH");

我们可以在java程序中允许两个类吗? 任何人都可以帮助我。

3 个答案:

答案 0 :(得分:5)

您无法在班级使用System.out.println()

class finish{
 System.out.println("FINISH"); // you can't do this.
}

您可以在方法内部使用。

class finish{
 public void myMethod(){
  System.out.println("FINISH"); // now this is inside a method.
 }
}

您也可以使用以下方式。放入non-static initializersstatic block

class finish{ 
 { // non-static initializers
  System.out.println("FINISH"); // now this is inside a block.
 }
}

您还可以在构造函数中使用System.out.println()

答案 1 :(得分:0)

你不能直接在一个类中编写System.out.println(), 您需要一个方法或构造函数,您可以通过创建该类的对象然后调用相应的方法

来调用它

答案 2 :(得分:0)

如果我理解你的问题,你需要在一个文件中需要两个类,并且想要从包含main方法的类中调用另一个类的方法。
您可以编写如下所示的代码来调用其他类的方法。

class start
{
   public static void main(String args[])
   {
      System.out.println("STARTING JAVA PROGRAM");
      //finish.myMethod();
      finish f = new finish(); //this will call myMethod() from static block
   }
}
class finish
{  
    static
    {
       myMethod();
    }
    public static void myMethod()
    {
       System.out.println("FINISH");
    }
}  

OutPut:

STARTING JAVA PROGRAM
FINISH