2017-06-18 4 views
0

私は誤ってこの方法で自分のトーストをコード化し、それは動作し続けます。Android:makeTextがToastインスタンスで動作するのはなぜですか?

public class MainActivity extends AppCompatActivity { 

    private Toast mToast; 

    ... 

    private void onClickHandler(int itemIndex) { 
    mToast = new Toast(); 
    mToast.makeText(this, String.valueOf(itemIndex), Toast.LENGTH_SHORT).show(); 
    } 
} 

makeTextが静的メソッドであるとすれば、上記の理由は何ですか?静的メソッドと変数は、彼らにそのようにアクセスし、

しかし、クラスのインスタンスからもアクセスできることであるので

答えて

2

+1

うん、その悪い習慣とみなさとAndroid Studioは、それを強調してのIDEの一つでありますJavaを使用するときのコンパイルエラーとは対照的に、推奨される変更です。さらに、Kotlinはインスタンスからの静的メソッドの使用をまったく許容しません。 – DaveNOTDavid

関連する問題