2017-03-22 12 views
1

別のクラスのボタンを押したときにメソッドを呼び出すにはどうすればよいですか?Javaを使用して別のクラスからメソッドを呼び出す方法

public class PersonalInfo extends JPanel { 
    private void initialize() { 
     JButton btnSave = new JButton("Save"); 
     btnSave.addActionListener(new ActionListener() { 
      public void actionPerformed(ActionEvent arg0) { 
       // call the `setRDF` method here 
      } 
     }); 
    } 
} 

public class GenerateRDF extends Object { 
     public void setRDF() { 
     String personURI = "http://localhost/amitkumar"; 
     String givenName = "Amit"; 
     String familyName = "Kumar"; 
     String fullName  = givenName+familyName; 

     Model model = ModelFactory.createDefaultModel(); 

     Resource node = model.createResource(personURI) 
       .addProperty(VCARD.FN, fullName) 
       .addProperty(VCARD.N, 
           model.createResource() 
            .addProperty(VCARD.Given, givenName) 
            .addProperty(VCARD.Family, familyName)); 
     model.write(System.out); 
    } 
} 
+0

サイドノート: 'extends Object'は必要ではありませんが、暗黙的です。すべてのクラスは、javaではデフォルトで 'Object'を拡張しています。 'Object'が作成したクラスであれば、その名前を変更する必要があります。他のデフォルトのJavaクラスと同じ名前のクラスを作成することは、他の開発者を混乱させる最良の方法です。 – BackSlash

答えて

1

あなたは新しいを作成します。私は他のクラスからsetRDFメソッドを呼び出したいSaveボタンのクリックイベントの火災はこれが私のコードであるGenerateRDF

命名例えば

GenerateRDFオブジェクトを呼び出し、そのメソッドを呼び出します。たとえば、

public class PersonalInfo extends JPanel { 
    private void initialize() { 
     JButton btnSave = new JButton("Save"); 
     btnSave.addActionListener(new ActionListener() { 
      public void actionPerformed(ActionEvent arg0) { 
       GenerateRDF generator = new GenerateRDF(); 
       generator.setRDF(); 
      } 
     }); 
    } 
} 

注:extends Ojbectを書く必要はありません。すべてデフォルトでObjectに拡張されます。

関連する問題