Difference between public static and private static variables

前端 未结 5 1756
星月不相逢
星月不相逢 2020-12-02 15:07
class Employee{
 // salary  variable is a private static variable
private static double salary;

// DEPARTMENT is a constant
 public static final String DEPARTMENT =         


        
5条回答
  •  庸人自扰
    2020-12-02 15:29

    A public variable is accessible everywhere in the code - a private variable is only accessible within the class itself. In this case you're using Employee.salary within the Employee class, so that's fine.

    Note that the variable being static is a completely separate matter - and methods and classes have accessibility in the same way as variables.

    There are other levels of access available too - protected and the default "package" access (which can't be specified explicitly). See section 6.6 of the Java Language Specification for more details.

    (As a side matter, it's also worth learning about what static means - you almost certainly don't want these variables to be statics, as they apply to each Employee rather than the Employee concept in general. It's odd for DEPARTMENT to be a constant here, too.)

提交回复
热议问题