关于继承对象的重定义(隐藏),说法正确的是: A. 同一个类中,不能存在相同名称的成员函数 B. 在基类和子类中,可以存在相同名称和形参列表的函数,形成的是重定义 C. 在基类和子类中,不能存在函数原型完全相同的函数,因为编译时会报错。 D. 以上均不是。
时间: 2023-06-25 10:04:30 浏览: 75
答案是B。在基类和子类中,可以存在相同名称和形参列表的函数,形成的是重定义。这种情况下,子类中的函数会隐藏基类中的函数,但是可以通过作用域解析运算符`::`来调用基类中的同名函数。注意,如果基类中的同名函数是虚函数,那么在子类中同名函数的定义就自动成为虚函数,不需要显式地使用`virtual`关键字。
相关问题
以下关于枚举类说法正确的是? 每一个枚举值都是枚举类的实例对象 枚举类与java中的普通类一样,在声明枚举类时,也可以声明属性、方法和构造函数. 枚举类不能存在带参的构造方法 枚举类不能被继承
以下说法正确的是:
每一个枚举值都是枚举类的实例对象;枚举类不能被继承。
以下说法错误:
枚举类与java中的普通类一样,在声明枚举类时,也可以声明属性、方法和构造函数。实际上,枚举类也可以声明属性、方法和构造函数。
枚举类不能存在带参的构造方法。实际上,枚举类也可以存在带参的构造方法,但是枚举值必须在枚举类声明时就已经确定,因此枚举类的构造方法不能被外部调用。
2、以下选项中关于匿名内部类的说法正确的是()D A. 匿名内部类可以实现多个接口,或者继承一个父类 B. 匿名内部类可以是抽象类 C. 匿名内部类没有类名,所以匿名内部类不等定义构造方法 D. 匿名内部类可以直接访问外部类的所有局部变量
关于匿名内部类的说法正确的是D. 匿名内部类可以直接访问外部类的所有局部变量。 匿名内部类可以实现多个接口,或者继承一个父类,并且可以访问外部类的成员变量和方法。虽然匿名内部类没有类名,但是它是通过继承或实现一个类或接口来创建的,因此是可以定义构造方法的。 匿名内部类也可以是抽象类,只要它没有实现父类或接口中的所有抽象方法即可。所以,选项A、B和C都是正确的说法。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* [【java笔记】Java中的匿名类和匿名内部类](https://blog.csdn.net/zuzhiang/article/details/118016420)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"]
- *3* [抽象类在Java语言中表示的是一种继承关系,一个类只能使用一次继承.但是一个类却可以实现多个接口.](https://blog.csdn.net/weixin_35749786/article/details/114547124)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]