Scopepublic,private,protected , as well as the difference when not written
The visible range of these four scopes is shown in the following table.
Description: If no access modifier is written above the decorated element, it indicates that the Friendly . do not use keywords by default for in-package use.
Scope Current Class same package descendant class other package
Public √√√√
Protected √√√x
Friendly √√xx
Private √xxx
Note: As long as you remember that there are 4 access rights,4 Access range, and then the full selection and the range in the horizontal and vertical direction of the order from small to large or from large to small, it is easy to draw the above diagram.
Example: Application Scenario
1, Public:public indicates that the data member, the member function is open to all users, all users can call directly, anywhere else in the program access.
2, private:private means private, private means that except class himself, no one can directly use, private property sacred inviolability, even children, friends, can not be used. In contrast to public, the modified properties and methods are allowed to be accessed only within the class itself, and no other part of the program can access
3, protected:protected for children, friends, is public, free to use, without any restrictions, and for other external class,protected become private. protected, in the middle of public and private, plus the modified properties and methods, only in the subclass (extends) and the same package under the program Access, and other places can not be accessed.
4.default (Default): Classes in the same package can be accessed and declared without modifiers, which are considered friendly.
Copyright NOTICE: This article for Bo Master original article, without Bo Master permission not reproduced.
Public,private,protected, and the difference when not written