- ベストアンサー
違うクラスのデータを読み込むにはどうすればいいですか?
はじめまして、Javaを勉強したばかりの初心者です。 下のようばプログラムでclassAのdata配列を class Cで参照するにはどうすればよいでしょうか? public class A extends B{ ・・・・ short data[] = new short[10]; } public class C extends D{ }
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
public class A extends B { private short[] data = new short[10]; public A() { for (int i = 0; i < data.length; i++) { data[i] = (short)i; } } public short[] getData() { return data; } } public class C extends D { public static void main(String[] args) { A a = new A(); short[] data = a.getData(); if (data != null && data.length > 0) { for (int i = 0; i < data.length; i++) { System.err.println(data[i]); } } } } こんな感じでどうでしょう?
その他の回答 (2)
どういう意図で他クラスの変数を参照したいのかによって回答は異なります。
- covachan
- ベストアンサー率38% (46/120)
いくつかの方法があります。 ●継承する方法。 ●修飾子publicで宣言する方法。 ●メソッドで値を渡す方法。 継承はextendsなどでクラスCをサブクラスとすればメンバーの変数へアクセスできます。 publicは装飾子publicで宣言することですべてのクラスからアクセスをすることができます。メソッドの場合はgetNameなどのようにreturnに値として渡すことでできます。これらはよく、それぞれアクセスさせたい範囲を限定したいなどの場合に使いわけます。