单选题
在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数的个数、类型或顺序各不相同,传回的值也可以不相同,这种面向对象程序特性称为哪个
A
A.A:重写
B
B.B:重载
C
C.C:隐藏
D
D.D:覆盖
答案解析
正确答案:B
解析:
这道题考察的是Java中面向对象编程的一个重要特性,即方法的重载(Overloading)。
A. 重写(Overriding): 这是指子类重新定义父类中已有的方法,且方法名、参数列表必须完全相同。重写与题目描述的情况不符。
B. 重载(Overloading): 这是正确的选项。当一个类中可以有多个同名的方法,但它们的参数列表(参数个数、类型或顺序)不同,这样的机制就叫方法重载。它允许我们在同一个类中使用相同的函数名称来实现不同的功能。
C. 隐藏(Hiding): 在Java中,如果子类中的静态方法与父类中的静态方法具有相同的方法签名,那么子类的方法隐藏了父类的方法。这不是题目所描述的情况。
D. 覆盖(Covering): 这个术语在Java中并不常见,通常不用于描述任何特定的语言特性。这里可能是指“覆盖”,也就是“重写”,但这不是正确答案。
根据题目描述,“一个类可同时定义许多同名的方法,这些方法的形式参数的个数、类型或顺序各不相同”,这是典型的重载(Overloading)现象,因此正确答案是 B. 重载。
A. 重写(Overriding): 这是指子类重新定义父类中已有的方法,且方法名、参数列表必须完全相同。重写与题目描述的情况不符。
B. 重载(Overloading): 这是正确的选项。当一个类中可以有多个同名的方法,但它们的参数列表(参数个数、类型或顺序)不同,这样的机制就叫方法重载。它允许我们在同一个类中使用相同的函数名称来实现不同的功能。
C. 隐藏(Hiding): 在Java中,如果子类中的静态方法与父类中的静态方法具有相同的方法签名,那么子类的方法隐藏了父类的方法。这不是题目所描述的情况。
D. 覆盖(Covering): 这个术语在Java中并不常见,通常不用于描述任何特定的语言特性。这里可能是指“覆盖”,也就是“重写”,但这不是正确答案。
根据题目描述,“一个类可同时定义许多同名的方法,这些方法的形式参数的个数、类型或顺序各不相同”,这是典型的重载(Overloading)现象,因此正确答案是 B. 重载。
相关知识点:
Java方法特性,重载参数各不同
