2016-09-27 9 views
-1

私は1つのクラスで初期化されている変数を持っています。別のJavaクラスで使用したいのですが、 と私はデータベース用の別のクラス私はそれを行うことができますどのようにヘルパークラス...それを読む時間を作るために事前に 感謝:) 私はあなたがパブリックstaticとしてその変数を宣言することができますし、あなたがそれをから使用することができます他のクラスで宣言されている変数の使い方

public class example() 
{ 
String collect; 
//and here i have one spinner 
//and in itemSelected in spinner 
//i getting that item like this 
String item = getItemslected.toString; 
collect=item; 
} 
+0

あなたは 'static'変数を意味していますか? – Blobonat

答えて

1

オプション:静的変数1.Use

宣言static String collect; として他のクラスからアクセスします<YourClassNmae>.collect; YourClassNameは、静的変数を宣言したクラスです。 アプリケーションクラス2.Use

マニフェストのようにアプリケーションのクラス名を宣言

public class MyApplication extends Application { 

    private String someVariable; 

    public String getSomeVariable() { 
     return someVariable; 
    } 

    public void setSomeVariable(String someVariable) { 
     this.someVariable = someVariable; 
    } 
} 

アプリケーションを拡張するアプリケーションクラスを作成します。あなたの活動に続いて

<application 
    android:name=".MyApplication" 
    android:icon="@drawable/icon" 
    android:label="@string/app_name"> 

あなたを変数を取得して設定することができます:

// set 
((MyApplication) this.getApplication()).setSomeVariable(collect); 

// get 
String collect = ((MyApplication) this.getApplication()).getSomeVariable(); 
+0

ちょうど知っていれば、アプリケーションを拡張することは、あまり使用するとランタイムを遅くすることがありますか、それとも静的変数を使用することと同じですか? –

+1

大きな違いはありません:http://stackoverflow.com/questions/10844492/static-variables-vs-application-variables – kgandroid

+0

メインアクティビティで静的変数を宣言し、別のクラスで使用している場合は、このアンドロイドで行います。私のデータベースクラスは、mainactivity.mystaticのようなテーブルを作成する:) – Badprince

0

以下の例のコードを持っています他のクラス。それを使う他の方法は、setメソッドとgetメソッドを使うことです。

0

変数staticを作成し、Classname.variableを使用してそれを参照することができます。静的にしたくない場合は、クラスのインスタンスへの参照が必要になり、myInstance.variableを使用して参照してください。もう1つの方法は、メソッドを使用してそれを返すことです(静的または非静的)。

変数(または方法)は、適切なアクセス修飾子が必要になります https://docs.oracle.com/javase/tutorial/java/javaOO/accesscontrol.html

0
public class Main{ 
    public static void main(String[] args) { 
     System.out.println(Example.test); 
     Example.test = "123"; 
     System.out.println(Example.test); 
    } 
} 

public class Example{ 
    public static String test = "This is a Test"; 
} 

出力:

This is a test 
123 
関連する問題