首页 > 试题广场 >

将类的成员的访问权限设置为默认的,则该成员能被( )

[单选题]

将类的成员的访问权限设置为默认的,则该成员能被( )

  • 同一包中的类访问
  • 其它包中的类访问
  • 所有的类访问
  • 所有的类的子类访问

public:可以被所有其他类所访问;

protected:自身、子类及同一个包中类可以访问;

default:同一包中的类可以访问;
private:只能被自己访问和修改。
public>protcted>default>priavte
编辑于 2017-06-04 21:16:25 回复(3)
发表于 2018-01-15 18:02:06 回复(0)

访问修饰符权限如下所示:

访问修饰符的权限常容易搞混,特别是default和protected这两种的访问权限,于是使用简化记忆的方式(访问范围有小到大):私下(private)里友好(friendly),才能更好地保护(protected)公众(public),通过这种方式,记忆几遍之后就快速准确地解决了这种题型。

具体的说明如下:
private使用范围仅限本类中 ;
protected使用范围为含继承关系的类中(子类可以使用父类); 
什么都不写叫友好类,默认是本包中;
public特别随意,包内包外,类内类外都可访问 。
而default和protected老有人记不住,只要记住protected一个特点是只要子类都能访问,不管在不在一个包即可。
发表于 2017-11-18 15:03:44 回复(3)
我看很多人解释不到点上 其实选错的关键原因在于 default才是默认修饰符。
发表于 2021-10-02 14:18:01 回复(1)

访问控制符

作用域 当前类 子类 同一 package 的类 其他 package 的类
public 😀 😀 😀 😀
protected 😀 😀 😀 😡
private 😀 😡 😡 😡
default 😀 😡 😀 😡
发表于 2020-08-10 13:46:14 回复(1)
默认访问权限为同一包
发表于 2017-05-27 10:41:41 回复(0)
默认权限为当前类和同一包,子孙类不能访问,其他包更不能访问
发表于 2017-05-27 22:49:35 回复(0)
访问修饰符能被访问的优先级为public>protected>default>private,其中protected与default主要区别是能否被子类访问,default修饰的成员变量是不能被子类访问的,除非父类和子类在同一个包下。
发表于 2021-03-06 21:24:37 回复(0)
public>protcted>default>priavte
所有包  当前包,子类  当前包 当前类
发表于 2021-01-25 10:10:24 回复(0)
public:同一个类,同一个包的类,不同包的子类,不同包的非子类;protected:同一个类,同一个包的类,不同包的子类;Default:同一个类,同一个包的类;private:同一个类
发表于 2019-10-26 10:39:30 回复(0)
come from GPT:

当我们在Java中创建一个类时,通常会定义类的成员变量和成员方法。而对于成员变量而言,我们可以设置其访问权限,以控制不同包中的类对其的访问限制。在本题中,我们将类的成员访问权限设置为默认的,那么这将会产生什么样有趣的后果呢?

首先,我们需要明确“默认访问权限”的意思。在Java中,“默认访问权限”也称为“包访问权限”,这是一种介于public和private之间的访问权限。当我们将类的成员访问权限设置为默认的时候,这意味着这些成员变量和成员方法只能在同一个包中的其他类中进行访问,而对于其他包中的类而言,是无法访问这些成员变量和成员方法的。

假设我们在一个名为“animal”的包中定义了一个名为“Cat”的类,而这个类又定义了一个默认访问权限的成员变量“age”,那么在同一个包中的其他类(如Dog类)中,是可以访问该成员变量的,但是在其他包中的类中(如Bird类)就无法访问该成员变量了。所以正确答案是A,也就是同一包中的类可以访问该成员变量。

在Java中的访问权限控制非常重要,在编写基于面向对象的程序时,需要根据实际需要配置恰当的访问权限,以控制类成员的访问范围,确保程序的安全性和健壮性。


发表于 2023-03-10 12:37:00 回复(0)
<p>为什么默认权限同一包内能访问,自己的子类不能访问,有没有什么说法?太容易混淆了</p>
发表于 2023-02-26 18:08:38 回复(0)
public>protcted>default>priavte   所有包      当前包,子类        当前包    当前类
其中protected与default主要区别是能否被子类访问,default修饰的成员变量是不能被子类访问的,除非父类和子类在同一个包下。
发表于 2022-10-23 13:29:00 回复(0)
权限修饰符的访问范围:✔
                 同一个类中   同一个包中其他类   不同包中子类   不同包中无关类
    public          ✔            ✔                ✔          ✔
    protected       ✔            ✔                ✔
    缺省            ✔            ✔
    private         ✔

发表于 2022-10-10 13:37:04 回复(0)

public:可以被所有其他类所访问;

protected:自身、子类及同一个包中类可以访问;

default:同一包中的类可以访问;
private:只能被自己访问和修改。
public>protcted>default>priavte
发表于 2022-06-01 22:20:44 回复(0)
默认default,也叫作同包权限修饰符
发表于 2022-01-13 11:55:09 回复(0)
<p> public 所以的都能访问 </p><p>protect 同一个包里才能访问</p><p>defult 同一个包 同一类能访问</p><p> private 只有自己自己能访问</p>
发表于 2020-09-10 10:23:41 回复(0)
public不是应该所有的类都可以访问吗?为什么不是c呢?
发表于 2020-06-10 08:29:44 回复(0)
default是同一包中的类可以访问,protected特点是在default基础上能被子类访问
发表于 2019-08-03 09:58:49 回复(0)
如果没有指定 public或 private , 这 个 部分 ( 类 、 方法或变量 ) 可以被同一个包中的所有方法访问
发表于 2019-02-21 15:09:51 回复(0)