![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
No.2ベストアンサー
- 回答日時:
こんにちは。
同一クラス内でよければ、フィールド変数と呼ばれるところに宣言すればよいです。
public class Test {
//ここがクラス内から参照できる宣言
private int[] a = { 10, 20 }
public void a() {
// ここだとローカル変数
int[] b = new int[2];
System.out.println ( a[0] );
}
public void b() {
System.out.println ( a[0] );
}
}
こうすれば、A,Bともにaの参照が可能です。
staticはまた別の話になります。
No.3
- 回答日時:
No.1 の補足について
private/public は、カプセル化という哲学(中略)なので、さして意味がありません。
マルチスレッド云々は、デバッグ困難な同期処理を(中略)なので、必要になるまで考えずとも良いです。
this は、メソッド内から変数を特定するための書き方で、お決まりすぎて省略可能な程です。
というわけで、本質的な回答としては
class こうすれば複数のメソッドで同じ配列オブジェクトを使いまわせます {
int[] a = new int[2];
void 書く(){ a[0] = 1; }
void 読む(){ 表示(a[0]); }
}
obj = new こうすれば複数のメソッドで同じ配列オブジェクトを使いまわせます();
obj.書く();
obj.読む();
No.1
- 回答日時:
class 一般的な共有のしかた {
private int[] a = new int[2];
public void 書く(){ this.a[0] = 1; }
public void 読む(){ 表示(this.a[0]); }
public void 書いて読む(){
this.書く();
this.読む();
}
}
class マルチスレッドでも安全な共有のしかた・ちょっとダサいのが難点 {
public void 書く(int[] a){ a[0] = 1; }
public void 読む(int[] a){ 表示(a[0]); }
public void 書いて読む(){
int[] a = new int[2];
this.書く(a);
this.読む(a);
}
}
この回答への補足
こちら側の都合で申し訳ないですが、まだ文法の知識(特にクラス)がかなり未熟なので
「private, public, 'this.', マルチスレッド」の言葉の意味をまだよく理解できていません。
漠然と「非公開にする」「公開する」「このクラスの」「複数の処理の並行」といった意味であるとだけは分かりますが...
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Java javaでのプログラム(配列)について質問です. 2 2022/10/14 22:27
- Java Java・配列の問題です。 int 「」nums = new int「5」 ⤴︎ この5の事を言葉で 2 2023/06/21 22:30
- C言語・C++・C# C言語の課題が出たのですが自力でやっても分かりませんでした。 要素数がnであるint型の配列v2の並 3 2022/11/19 17:41
- C言語・C++・C# このプログラミング誰か教えてくれませんか 1 2022/06/02 15:27
- その他(プログラミング・Web制作) pythonのプログラムについての質問です。 1 2023/05/26 10:31
- Excel(エクセル) ExcelVBAでリストの項目に必要数と同じ手配数を分配していくマクロを作りたいです。 1 2022/07/29 18:36
- C言語・C++・C# このプログラミングの問題を教えてほしいです。 キーボードからデータ数nとn個のデータを入力し、平均値 3 2022/12/19 22:51
- C言語・C++・C# このプログラミングの問題を教えて欲しいです。 キーボードから整数kを入力し、kが配列aの中に何個存在 2 2022/12/19 22:50
- Java java 飾子を付けること(public static・・・) ・コンソールへの出力処理はmainメ 2 2022/06/16 19:34
- Java プログラミング教えてください。 5 2022/10/12 09:35
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ピクチャボックスのクリックイ...
-
C#で、あるクラスのメンバーす...
-
GetDIBits関数の使い方について
-
Junitテストでvoid戻り値メッソ...
-
Javaでデリゲート
-
ボタンの複数割り当てについて
-
appletの画像が表示されない
-
vc++ 2005 Pictureboxの透過処理
-
メンバ変数の隠蔽
-
なぜエラーになるのかがわかり...
-
C# WinForm のDataGridView Cel...
-
長方形をドラッグするJavaアッ...
-
ユーザーコントロールを動的に...
-
javaのrepaint()について
-
1枚の画像を分割すると分割画...
-
C# MouseHoverを何度も呼ぶには
-
C#でレート別に管理するクラス...
-
大量のデータを読み込んで表示...
-
C言語のポインターに関する警告
-
eclipseに記述したjavaファイル...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
大量のデータを読み込んで表示...
-
C#で、あるクラスのメンバーす...
-
Junitテストでvoid戻り値メッソ...
-
C#でのWNetAddConnection3の使...
-
Processingでマウスクリックで...
-
ボタンの複数割り当てについて
-
エンターキーを押すとOKボタン...
-
C# 矢印キーの取得
-
C# visibleプロパティをfalseに...
-
Thread.sleepのInterruptedExce...
-
C# DataGridView列カスタマイズ
-
C#でキーイベントが発生しない...
-
LVM_SETITEMSTATEでListViewの...
-
[C#.net]スレッド化された別フ...
-
GetDIBits関数の使い方について
-
C# 半角カナの文字化けについて
-
C# 親フォームで指定した値を...
-
javaアプレット repaintのタイ...
-
デスクトップマスコットのドラ...
-
C#で別のFormへ複数の値を返そ...
おすすめ情報