2014-03-01 33 views
-2

为什么会有人想使用一个通用类:Java泛型与非泛型构造

Animal<T> (T t) {} 

,而不是一个非通用类与构造函数的具体参数。在这种情况下:

Animal(String s) {} 

我应该根据我觉得更方便的选择其中之一吗?

+1

你问关于泛型构造函数或关于泛型类的构造函数? –

+0

@SotiriosDelimanolis两者。为什么有人会选择使用非泛型的泛型? – Gregg1989

+0

阅读本教程的第一句话[here](http://docs.oracle.com/javase/tutorial/java/generics/why.html)。 –

回答

2

泛型在编译时提供类型安全性,这可以避免严重的运行时错误,如ClassCastExceptions。

+0

这真的是一个评论,而不是一个答案,但它是完全正确的。 – aliteralmind

+0

感谢:D。我想我应该简单点说明一下。 –