有那位大哥帮一下MM呀!急救!MM在这里跪谢啦! 当一个类别继承一个基类的属性但却未提供接入说明符时,以下哪项是它的缺省接入说明符?(A) public (B) private (C) protected (D) None 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 我记得是public类型的,不知道有没有记错。 the answer is "public" 应该是和它继承的那个属性的访问限制符一样吧,基类属性的限制符是"protected",它就是protected。 我怎么也记得是protected的啊?缺省是public但是友好接入也可以算是缺省了`` 一个类别继承一个基类那么这个类的访问类型要比基类的访问类型宽, 所以按理是public 没哟缺省的吧? 父类是public, 子类就是public, 父类是protected, 子类就是protected. 我觉得提供的答案选项不是很正确,java中的可见性有以下4种:public:用于任何访问protected:用于子类和同一包下访问package(default):用于包内访问(如果省略声明,则为package)private:本类内访问 public:用于任何访问protected:用于子类和同一包下访问package(default):用于包内访问(如果省略声明,则为package)private:本类内访问 不管LZ是不是MM,我只求一个明白。一个类别继承一个基类那么这个类的访问类型要比基类的访问类型宽, 所以按理是public 这是真的假的?如果是这样的话,数据安全性何在?LZ的这个题目出的也有问题,太没水平了。题目说一个类继承一个基类,那么这个基类在哪个包呢?子类又在哪个包呢?别说我小题大做,这重要得很。如果子类和基类在一个包下,那么除了它的私有成员以外,子类继承的属性其限定和父类属性的限定一致,也就是说,如果父类的属性是私有的,子类无法继承之,注意:这里的无法继承是指子类无法访问和操作父类的私有属性,如果父类的属性是包/公共/保护的,那么子类的属性也对应是包/公共/保护的。如果子类B和基类A不在一个包下,那么公共属性保持不变,包访问限定的属性从此变成私有的,父类的私有属性无法被访问,对于保护限定,比较麻烦点,如果子类B在pack2下,而基类A在pack1下,那么子类B通过继承得到父类A的受保护的属性,如果此属性为attr,那么在pack2下的其它类无法直接访问attr,看上去就像私有的一样但其实还是protected的,attr实际上是基类A的属性,也就是说attr只在pack1下享受访问权,在pack2下由于受到保护而无法访问,这意味着如果在pack1下定义一个新的类创建的子类B的对象可以直接使用b.attr进行访问却在pack2下不行。如果通过继承可以放宽限定的话,这就意味着我只要写一个类去继承另一个关键类,借着这种继承放宽限定的特性就可以直接操作此关键类的属性,这明显是不合理的。综上所述,在同一包下,继承不改变属性限定,在不同的包下,public限定和protected限定不变,默认的包访问变成私有。 同意楼上的,问就问嘛,MM怎么了!?难道MM的问题就应该特殊对待么!` MM = 明明 敏敏 ...不一定是MM啊 狼多肉少啊 C++中默认继承为public,而java中好像是protected 如何获得swing组件的上一级组件 有一个字符数组,把它用了toString()方法以后,能否恢复为原来的字符数组 java里隐式转换只能是常量? 请教一个odbc访问远程服务器上数据库的问题!iFIX real数据库 hashCode()应用 jdbc 连接sql server的问题,我都快崩溃了!那位大哥能帮帮忙? 关于swt,table数据实时更新。 周末无聊吐槽下ACM 请问jb里面不支持自动换行显示吗? 请问学JAVA的最佳年龄 程序运行时遇到的问题! 初学者的困惑!
public:用于任何访问
protected:用于子类和同一包下访问
package(default):用于包内访问(如果省略声明,则为package)
private:本类内访问
protected:用于子类和同一包下访问
package(default):用于包内访问(如果省略声明,则为package)
private:本类内访问
这是真的假的?如果是这样的话,数据安全性何在?LZ的这个题目出的也有问题,太没水平了。题目说一个类继承一个基类,那么这个基类在哪个包呢?子类又在哪个包呢?别说我小题大做,这重要得很。如果子类和基类在一个包下,那么除了它的私有成员以外,子类继承的属性其限定和父类属性的限定一致,也就是说,如果父类的属性是私有的,子类无法继承之,注意:这里的无法继承是指子类无法访问和操作父类的私有属性,如果父类的属性是包/公共/保护的,那么子类的属性也对应是包/公共/保护的。如果子类B和基类A不在一个包下,那么公共属性保持不变,包访问限定的属性从此变成私有的,父类的私有属性无法被访问,对于保护限定,比较麻烦点,如果子类B在pack2下,而基类A在pack1下,那么子类B通过继承得到父类A的受保护的属性,如果此属性为attr,那么在pack2下的其它类无法直接访问attr,看上去就像私有的一样但其实还是protected的,attr实际上是基类A的属性,也就是说attr只在pack1下享受访问权,在pack2下由于受到保护而无法访问,这意味着如果在pack1下定义一个新的类创建的子类B的对象可以直接使用b.attr进行访问却在pack2下不行。如果通过继承可以放宽限定的话,这就意味着我只要写一个类去继承另一个关键类,借着这种继承放宽限定的特性就可以直接操作此关键类的属性,这明显是不合理的。
综上所述,在同一包下,继承不改变属性限定,在不同的包下,public限定和protected限定不变,默认的包访问变成私有。