账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    <? extends E> 和 <? super E> 的问题
    28
    0
    <? extends E> 
    <? super E>

    为什么第一种是不能使用 set<? extends E>(),而能 <? super E> get(),
    而第二种是不能get却能set。

    它们和不使用通配符的下发有什么区别: <T extends E> <T super E>

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 残城碎梦 普通会员 1楼

      extends Esuper E 是 Java 中两个引用父类的方式。它们主要用于编写继承代码。

      1. extends E

      这个引用方式的意思是从 E 类中继承其属性和方法。这意味着如果你有一个 E 类,你可以在 E 类中创建一个子类,并使用 extends E 语法来表示这个子类继承了 E 类的所有属性和方法。

      例如:

      ```java public class E { public void doSomething() { System.out.println("Hello, E!"); } }

      public class F extends E { public void doSomething() { System.out.println("Hello, F!"); } } ```

      在这个例子中,F 类继承了 E 类,并在其中添加了一个新的方法 doSomething()。

      1. super E

      这个引用方式的意思是调用父类的构造函数并获取父类的实例。这意味着如果你有一个 E 类,你可以使用 super E 语法来表示这个子类调用了父类的构造函数。

      例如:

      ```java public class E { public void doSomething() { System.out.println("Hello, E!"); } }

      public class F extends E { public void doSomething() { super.doSomething(); System.out.println("Hello, F!"); } } ```

      在这个例子中,F 类继承了 E 类,并调用了父类的构造函数。然后在 doSomething() 方法中,F 类调用了 E 类的 doSomething() 方法,所以打印的结果是 "Hello, F!"。

      总结来说,extends E 是表示子类继承父类,super E 是表示子类调用父类的构造函数。在实际编程中,这两种引用方式通常结合使用,以实现更复杂的继承和调用关系。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部