1

アクセスレベルがデフォルトのクラス「Hoge」を作ったときの違いは?

 Hoge(){} 

public Hoge(){}

?

クラスが他のパッケージから見えないことは知っていますが、その場合、その「パブリック」はどのように機能しますか?

4

2 に答える 2

4

公式ドキュメントを参照してください:

                  Access Levels
------------+---------+---------+-----------+------
Modifier    |   Class | Package |  Subclass | World
------------+---------+---------+-----------+------
public      |     Y   |    Y    |     Y     |   Y
protected   |     Y   |    Y    |     Y     |   N
no modifier |     Y   |    Y    |     N     |   N
private     |     Y   |    N    |     N     |   N

コンストラクターはクラスのメンバーであり、コンストラクターのアクセス レベルは他のメンバーと同じように扱われます。

于 2013-08-05T06:52:32.077 に答える
0

クラス メンバーが public の場合、クラスを表示できるすべてのユーザーに表示される(他のユーザーには表示されない)ことを意味します。

したがって、クラスがパッケージ プライベートである場合、そのパブリック メンバーとパッケージ プライベート メンバーは本質的に同じ可視性を持ちます。

私が考えることができる唯一の違いは、後でクラスがパブリックになると、パブリック メンバーは (クラスと共に) すべてのユーザーに表示されるようになり、パッケージ プライベート メンバーはそのまま残ることです。

于 2013-08-05T06:54:53.600 に答える