c# - 是否可以在 Java 或 C# 中实例化泛型类型的对象?

标签 c# java generics

例如,在Java中,如果我有一个参数化类,是否可以执行以下操作?

public class MyClass<T>{
  public void aMethod {
    ..
    T object = new T();
    ..
  }
  ..
}

在Java中,我认为这是不可能的,因为编译器不知道要调用什么构造函数。但在 C# 中呢?我不懂这种语言,而且我读到可以做很多黑暗的事情,所以我只是想知道..

最佳答案

如果您对 T 类型设置约束以具有无参数构造函数,则在 C# 中这是可能的。

public class MyClass<T> where T:new(){
   public void aMethod {
   ..
   T object = new T();
   ..
   }
   ..

}

参见here .

关于c# - 是否可以在 Java 或 C# 中实例化泛型类型的对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1578290/

相关文章:

c# - 页面加载时出现 NullReferenceException

javascript - 在我的代码中,javascript 无法与 asp.net 正常工作?

java - 指定方法参数的通用类型

java - 我该如何避免 NullPointerException?

java - 在 Java 中是否可以定义一个泛型方法来将父类(super class)型类作为参数?

Delphi - 免费泛型

c# - LINQ - 嵌套查询

c# - Entity Framework 6 中的基类?

java - 打印内存地址而不是字符串值

java - Cassandra IllegalArgumentException 创建键空间