在类的方法名前面和成员变量名前面加上public和protected有何区别?
2024-08-04Java语言程序设计(一)(04747)
在类的方法名前面和成员变量名前面加上public和protected有何区别?
【正确答案】:加上public,类外的任何方法都访问它们。加上protected后,对于不是这个类的子类和不在同一包中的别的类来说,不能访问它们。
【题目解析】:(1)首先不论在类的方法名前面和成员变量名前面加上什么访问权限,这个类本身的方法都可以访问它们。(2)在类的方法名前面和成员变量名前面加上public访问权限,则类外的任何方法也都能访问这些加了public访问权限的方法和成员变量。(3)加上protected受保护访问权限,则只允许这个类的子类和同一包中的别的类可以访问这些方法和成员变量,对于不是这个类的子类且不在同一包中的类来说,不能访问这些方法和成员变量。
【正确答案】:加上public,类外的任何方法都访问它们。加上protected后,对于不是这个类的子类和不在同一包中的别的类来说,不能访问它们。
【题目解析】:(1)首先不论在类的方法名前面和成员变量名前面加上什么访问权限,这个类本身的方法都可以访问它们。(2)在类的方法名前面和成员变量名前面加上public访问权限,则类外的任何方法也都能访问这些加了public访问权限的方法和成员变量。(3)加上protected受保护访问权限,则只允许这个类的子类和同一包中的别的类可以访问这些方法和成员变量,对于不是这个类的子类且不在同一包中的类来说,不能访问这些方法和成员变量。
