当有一个分号时,Java需要一个分号

时间:2013-11-15 23:51:32

标签: java

public class Machine{
   String machineType;
   public Machine(String s){ //Sets machineType to String s
      String getName();
   }
}

为什么不编译?我不断收到错误,说它期待分号,但有一个分号!

4 个答案:

答案 0 :(得分:3)

我们不能称这样的方法

 public Machine(String s){ //Sets machineType to String s
  String getName();    // Method
 }

而是将其分配给变量

 public Machine(String s){ //Sets machineType to String s
  String var = getName();    // assuming getName returns a string
 }

即使这样也可行

 public Machine(String s){ //Sets machineType to String s
   getName();    
 }

答案 1 :(得分:3)

这一行:

 String getName();

没有任何意义。要么改为:

 String name = getName();

或者更有可能:

public Machine(String s) {
    machineType = s;
}

但我不知道你怎么能打算这样,但得到你得到的代码。

答案 2 :(得分:0)

您似乎正在尝试调用方法getName() 如果是这种情况,您必须这样做:

getName();

String name = getName();

如果方法没有返回类型(void),则使用第一个,如果是String,则使用第二个。

答案 3 :(得分:0)

即使你可以这样做,

 public void Machine(String s){ 
      getName();
}