繁体   English   中英

泛型类型是什么意思?

[英]What does generic type mean?

我一直在阅读有关抽象类的Java for Dummies一书,它说:“当您要创建一个通用类型用作两个或多个子类的超类时,抽象类非常有用,但是超类本身并不代表一个实际的对象。” 您无需继续解释抽象类,只需解释一下“泛型”的含义,因为我对其含义感到困惑。 我对Java中的泛型一无所知,至少我不认为我可以...请用简单的术语解释一下,谢谢:D

在Java中,“泛型”是类型的参数。 这听起来可能令人困惑,但这是一个简单的解释。 如果要创建一个许多其他类都将继承的类,则要使其广泛而灵活。 因此,您将使用“通用”类型来创建实例变量。

通用类型可以实现为:(请注意方括号“ <>”)

public abstract class TestClass<T>

关于抽象类:在Java中,如果扩展一个类,则必须实现所有方法,除非您声明了abstract类。 如果声明抽象类,则可以声明方法,方法是将关键字abstract放在其定义的前面,并在声明后加上分号。 扩展类时,必须使用相同的返回类型和相同的参数实现该方法。

对象和抽象类:您无法创建抽象类的实例,因为并非所有方法都已开发。 创建实例时,将调用方法,程序将开始运行,但是,如果您尝试创建Abstract Class的实例,它将调用没有代码的方法,Java将感到困惑,并且程序将失败。

使用泛型创建实例这可能比您的问题更深入,但是我想我会提到如何创建泛型类的实例。

请注意,菱形括号中的参数必须是一个对象。 对于基本类型,您可以仅使用Int,Double,Float(大写首字母),Java会将对象“自动装箱”为基本类型。

ClassName<String> obj = new ClassName<>();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM