正如我们已经知道的,在使用private关键字的类中定义的字段只能在同一个类中访问,并且对外部世界不可见。
那么,如果我们将定义一个私有类,那么该类将只在定义它的实体(在我们的例子中,该实体是它的包)内可访问,会发生什么呢?
让我们考虑下面的A级示例
package com.example;
class A {
private int a = 10;
// We can access a private field by creating object of same class inside the same class
// But realy no body creates object of a class inside the same class
public void usePrivateField(){
A objA = new A();
System.out.println(objA.a);
}
}
字段_现在让_s假设我们可以将类__a_声明为私有,因此在这种情况下,类_a_将成为包_com的私有。示例_,并且将无法从包外部访问。
因此,定义对类的私有访问将使它在默认关键字已经为我们做的相同包中可访问,因此定义私有类没有好处,它只会使事情变得模糊不清。