gpt4 book ai didi

java - 类之间的区别 与仅 A

转载 作者:行者123 更新时间:2023-12-01 19:49:57 25 4
gpt4 key购买 nike

Class<? extends A> classB

对比

A classB

这里有什么区别?难道只是第一个是 Class 的实例,第二个是实际 Object 的实例?

最佳答案

Class<? extends A>A完全是两种不同的类型。

Class<? extends A> 类型的变量包含有关的信息。该类可以是 A或任何扩展 A 的类,取决于变量的值。您可以使用Class<? extends A>做的事情变量包括:获取类中声明的所有字段名、获取类中声明的所有方法名、获取类的父类(super class)等等。

A 类型的变量引用 A 的实例。如果您声明了一个名为 foo 的非静态方法在类里面A ,然后您可以调用foo直接使用此变量:

yourVariable.foo();

如果yourVariable,则不能直接执行此操作类型为Class<? extends A> .

看到这里的区别了吗? Class<? extends A>有点像“元类型”,其实例包含有关类型的信息(此类型可以是 AA 的子类),而 A是您声明的类型。 A 的一个实例代表类所模仿的任何事物。 Bicycle 的一个实例类代表一辆自行车。它可能有类似 pedal 的方法和turn和类似 durability 的字段。 Class<? extends Bicycle> 的一个实例会告诉你这样的事情:在 Bicycle 类中,有一个名为 durability 的字段。 ,并且有一个名为 pedal 的方法.

基本上,“meta”是这里的关键字。 Class是一个代表一个类的类。

关于java - 类之间的区别<?扩展 A> 与仅 A,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51779481/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com