2014-02-16 21 views
0

我試圖通過在兩個數字中輸入來計算遠方的程序。 我已經創建了兩個對象a,b,並且想要在給予它們一個值之後將它們發送給我的方法距離,但是我得到一個錯誤=(。我該如何解決這個問題? 我的代碼如下。當試圖把方法中的對象時出錯

提前感謝!

import java.util.*; 

import javax.swing.*; 

public class Hey { 
    public static void main(String args[]) { 

     Locale.setDefault(Locale.US); 
     num a = new num(); 
     num b = new num(); 
     String s1 = JOptionPane 
       .showInputDialog("Koordinateter för den frösta pinkten?"); 
     Scanner sc = new Scanner(s1); 
     a.num1 = sc.nextDouble(); 
     a.num2 = sc.nextDouble(); 

     String s2 = JOptionPane 
       .showInputDialog("Koordinateter för den frösta pinkten?"); 
     sc = new Scanner(s2); 
     b.num1 = sc.nextDouble(); 
     b.num2 = sc.nextDouble(); 

     double d = distance(a, b); 
     JOptionPane.showMessageDialog(null, "Avstpbd: " + d); 

    } 

    public static double distance(num a, num b) { 
     return Math.sqrt((a.num1 - a.num1) * (a.num1 - a.num1) 
       + (b.num1 - b.num1) * (b.num1 - b.num1)); 
    } 

    class num { 
     double num1; 
     double num2; 
    } 
} 
+0

你會得到什麼錯誤?和哪裏?請張貼也。 – Batty

+0

'num'是內部類,它意味着它是'嗨'類的「成員」,因此您只能通過其外部類的實例來使用它。也許你想把它放在「嗨」班之外?創建它的實例的其他選項不帶外部類的實例是使其成爲「靜態」。 – Pshemo

+0

也請不要叫你的班'num',把它叫做'Num'。 '嗨'是一個奇怪的名字,請考慮改變它。 – Maroun

回答

2

num類是Hey類裏面,所以你需要使用Hey object

Reference

調用NUM類對象

這樣做

Hey h=new Hey(); 
num a = h.new num(); 
num b = h.new num(); 
相關問題