重複の可能性:
パッケージの可視性
Java - クラス「ClassName」とパブリック クラス「ClassName」の違い
基本的に、クラスのこれら 2 つの修飾子に違いはありますか? public 修飾子がないことに違いはありますか?
public class MyClass {}
class MyClass {}
重複の可能性:
パッケージの可視性
Java - クラス「ClassName」とパブリック クラス「ClassName」の違い
基本的に、クラスのこれら 2 つの修飾子に違いはありますか? public 修飾子がないことに違いはありますか?
public class MyClass {}
class MyClass {}
public
クラスは他のどのクラスからも可視ですが、(class
修飾子なしの) はパッケージの可視性を持ちます。
Java仕様から:
クラスまたはインターフェイス型が public と宣言されている場合、それが宣言されているコンパイル ユニット (§7.3) が監視可能であれば、任意のコードからアクセスできます。
最上位のクラスまたはインターフェイスの型が public と宣言されていない場合、宣言されているパッケージ内からのみアクセスできます。
1.Public クラスはその パッケージの外部からアクセスできますが、クラスはそうではありません。2.ソース ファイル
内に存在できるパブリック クラスは 1 つだけであり、ソース ファイルの名前は同じでなければなりません。
デフォルトは package-private ですhttp://docs.oracle.com/javase/tutorial/java/javaOO/accesscontrol.html