2011-09-12 74 views
0

我在java中有一個簡單的代碼,但我無法解決一些錯誤。 錯誤是:java代碼錯誤

1)非法開始表達式 2)「;」預期 的誤差都在行發現*

public class Exer5 { 

    public static void main (String[] args) { 
     int num1; 
     int num2; 
     float dieresi; 
     int pollaplasiasmos; 
     int prosthesi; 
     int aferesi; 

     num1=10; 
     num2=6; 


    *public void prosthesi(int num1,int num2) { 
     prosthesi = num1 + num2; 
     System.out.println("To apotelesma tis prosthesis einai:"+prosthesi); 
    } 

    *public void aferesi() { 
     aferesi = num1 - num2; 
     System.out.println("To apotelesma tis aferesis einai:"+aferesi); 
    } 

    *public void dieresi() { 
     dieresi = num1/num2; 
     System.out.println("To apotelesma tis dieresis einai:"+dieresi); 
    } 

    *public void pollaplasiasmos() { 
     pollaplasiasmos = num1 * num2; 
     System.out.println("To apotelesma tou pollaplasiasmou einai:"+pollaplasiasmos); 
    } 
} 
} 
+6

您沒有關閉您的主要方法。 – Eder

回答

4

如果這是你原來的代碼,你是不是關閉main功能。 public void prosthesi(int num1,int num2)

4

你需要一個關閉的主要方法}

1

你錯過了你的主要方法右括號之前缺少一個}權利。應該是這樣!

3

我在這裏看到幾個問題:

  1. 的主要方法關閉}是在類的結束(它沒有丟失)。
  2. main...定義的變量都沒有達到其他方法可見,你應該定義實例屬性(見下面的例子)
  3. 的主要方法是靜態的,而所有其他的方法都是非靜態

我建議看看basic concepts of Java's implementation of object-orientation。簡化面向對象解決方案可能看起來像這樣(去掉了一些代碼):

public class Exer5 { 
    int prosthesi; // for your next exercise, mark this private 

    public static void main (String[] args) { 

     // attribute prosthesi is *not visible* to main 

     int num1=10; 
     int num2=6; 

     // create the object and send a message to it 
     Exer5 e5 = new Exer5(); 
     e5.prosthesi(num1, num2); 
    } 

    public void prosthesi(int num1,int num2) { 
     this.prosthesi = num1 + num2; // assign result to instance attribute 
     System.out.println("To apotelesma tis prosthesis einai:" + prosthesi); 
    } 

    // ... 
} 

希望這有助於...