私が入力した場合:Javaのメソッドのデフォルトスコープは何ですか?
void doThis(){
System.out.println("Hello Stackoverflow.");
}
doThis()
のデフォルトの範囲は何ですか?
公開?保護された?プライベート?
私が入力した場合:Javaのメソッドのデフォルトスコープは何ですか?
void doThis(){
System.out.println("Hello Stackoverflow.");
}
doThis()
のデフォルトの範囲は何ですか?
公開?保護された?プライベート?
デフォルトのスコープはpackage-privateです。同じパッケージ内のすべてのクラスは、メソッド/フィールド/クラスにアクセスできます。パッケージプライベートは保護されたスコープよりも厳しいですが、プライベートスコープよりも許容されます。
詳細情報:
http://docs.oracle.com/javase/tutorial/java/javaOO/accesscontrol.html
デフォルトの有効範囲は「デフォルト」です。それは変です - 詳しくはthesereferencesをご覧ください。
実際にそうではありません:それはパッケージプライベートです –
THanks Maurice、私は私の答えを更新しました。 –
私の答えは受け入れられたので、私はそれを削除できません。私はジョーに@エスコの答えを伝えるよう勧めます! –
パッケージプライベートとして定義されたものはすべてクラス自体によってアクセスすることができ、同じパッケージ内ではなく、パッケージの外側ではなく、サブクラスによって他のクラス。
は、アクセス修飾子なしでアクセスレベル修飾子の便利なテーブルのためのthis page ...
評判の良い情報源を唯一認識してくれてありがとう。インターフェイスのメンバーについての詳細は、 –
を参照してください、クラスメンバーは、それが宣言されていたパッケージ全体にアクセス可能です。 Java Language Specification, §6.6.
インターフェイスのメンバーは、明示的に宣言されているかどうかにかかわらず、常に公にアクセスできます。
+1を参照してください。 – Wazza
あなたのメソッドに修飾子を与えていない場合、デフォルトではパッケージ内のスコープを持つDefault修飾子になります。あなたはhttp://wiki.answers.com/Q/What_is_default_access_specifier_in_Java
のJava 8は今デフォルトスコープ(とのみ、静的)とのインターフェース自体の内部メソッドの実装を可能に参照することができます詳細は
。
はるかに良い答え - @ジョー - これで行く、私のではない。 –
"パッケージのデフォルトがより厳しい..." – reinaldoluckman
"package-private"は、外部ユニットテストのためのメソッドを公開するときに使用するのに適したスコープです。 –