Java中的public,protected,package-private和private有什么区别?


Java中的public,protected,package-private和private有什么区别?

 Class  Package  Subclass  Subclass  World
                            (same pkg)(diff pkg)
────────────┼───────┼─────────┼──────────┼──────────┼────────
public         +       +        +          +       +     
────────────┼───────┼─────────┼──────────┼──────────┼────────
protected      +       +        +          +             
────────────┼───────┼─────────┼──────────┼──────────┼────────
no modifier    +       +        +                   
────────────┼───────┼─────────┼──────────┼──────────┼────────
private        +                                    

+ : 可以访问
 : 不能访问