我对练习考试中的一个问题感到困惑。
在Java中,Integer类扩展了基本抽象类Number。现在,假设 我们有一个签名如下的方法:
public <T extends Number> T method( Integer x ) {...}
对于以下各项,请在空白处填写“可以”或“不能”以正确填写 声明。
______方法接受扩展了Integer类型的任何输入
我很困惑,因为当我尝试创建自己的扩展Integer的类时,IntelliJ告诉我“无法从最终的'java.lang.Integer'继承”。
如果我不能从Integer类继承,那么我将如何给出首先“扩展Integer”的输入?
答案 0 :(得分:2)
那句话的表述很糟糕。我希望这样写是为了使学生感到困惑,而不是因为它们忘记了原始类型的包装器是final
类。
因此,要回答您的问题,答案将是“ 不能”。
但是,如果可以,请与您的教授或考官澄清这一点。
答案 1 :(得分:0)
您应该查看javadoc。您不能扩展声明为final的类
答案 2 :(得分:0)
Java的Integer类为Comparable
,不能继承。
final