default和protected有什么不同
时间: 2023-12-30 15:03:04 浏览: 51
default和protected都是访问修饰符,它们的主要作用是控制类的成员变量和成员方法的访问权限。
default表示默认访问修饰符,也称为包访问权限。当一个类成员没有明确指定访问修饰符时,它就默认为default,只有在同一包中才能被访问。如果在不同的包中,即使是子类,也不能访问default的成员变量或者成员方法。
protected表示受保护的访问修饰符,表示这个成员只能被自身以及其子类和同一包中的类访问。在子类中可以访问它的protected成员,但是在不同包中的非子类不能访问。
所以,default和protected的主要区别在于访问权限的范围不同。
相关问题
那default和protected有什么区别
`default`和`protected`都是Java中的访问修饰符,它们的作用是限制类、接口、变量和方法的访问范围。
`default`修饰符表示默认访问级别,即在同一个包内可见,但是在包外不可见。`default`修饰符可以用于接口中的方法和变量,以及类中的变量和方法(没有显式地使用`public`、`private`或`protected`修饰符的变量和方法)。
`protected`修饰符表示受保护的访问级别,即在同一个包内和子类中可见,但是在包外不可见。`protected`修饰符只能用于类中的变量和方法,不能用于接口中的方法和变量。子类可以访问父类中被`protected`修饰的变量和方法,但是其他类不能访问。
所以,`default`和`protected`的主要区别在于可见性的范围不同。`default`修饰符的可见性范围比`protected`更小。
default和protected范围
default是Java中的一种访问修饰符,表示该成员变量或方法只能在同一个包中被访问,不能在其他包中被访问。
protected也是Java中的一种访问修饰符,表示该成员变量或方法只能在同一个包中被访问,或者在其他包中的子类中被访问。protected修饰的成员变量或方法不能在其他包中的非子类中被访问。
阅读全文