构造函数

java – 为什么泛型类型具有相同的签名?

我有以下泛型类:我尝试编译时为什么会出现以下错误:在我看来,两个构造函数共享相同的签名,尽管它们具有不同的泛型类型参数.为什么?更新我现在明白了这个问题.编译器需要一种方法来区分这两种类型.添加这样的约束对我的用例来说是可以的.所以我想补充一个问题:如何指定A和B这两种类型可能是不同的?不幸的是,您无法在构造函数中轻松解决此问题.您可以使用工厂方法替换重载的构造函数,并提供不同的名称,例如OrWithA和OrWithB:

java – 写第一个JUnit测试

所以我已经阅读了官方的JUnit文档,其中包含了大量的例子,但是,我已经开始Eclipse了,我正在编写我的第一个JUnit测试,而且我扼杀了一些基本的设计/概念问题.所以如果我的WidgetUnitTest正在测试一个名为Widget的目标,我想我需要在整个测试方法中创建相当数量的Widget.我应该在WidgetUnitTest构造函数中或在setUp()方法中构造这些Widget吗?

java – 在构造函数结束之前如何引用/处理“this”?

如果构造函数是“创建”由此引用的对象,那么在构造函数返回之前如何使用它?例如,那些没有默认值但必须由构造函数提供的东西呢?如果我有私有的最终字符串SOME_VALUE;声明,我明白这应该默认为null,但是在构造函数中为常量提供值之前,该对象不应该完全形成.那么参考,尽管是最终的,可能会有变化的价值?

java – 使用String literal 创建String对象时调用的String类构造函数

10个当我们使用Stringliteral创建字符串对象时,会调用哪个字符串类的构造函数.例:在这种情况下,字符串类的构造函数是什么?解决方法当JVM加载包含String文字的类时它以UTF-8编码从类文件中读取字符串文字,并从中创建一个char数组然后它使用String构造函数从这个char数组创建一个String对象然后JVM将String对象放在String池中,并将对该String对象的引用赋给str变量.

java – 为什么还可以使用空白构造函数?

)对我来说是新的:在程序中,具有多个构造函数的类也总是包含一个空白构造函数.例如:第一个构造函数似乎不是一个“真正的”构造函数,似乎在每种情况下都会使用其他构造函数之一.那么为什么要定义构造函数呢?

java – 创建新的实例类引用

我有一个这样的枚举:所有这些dto类都扩展了相同的抽象类:这将是TestADto的示例Dto实现:是否有可能在枚举引用类中创建这些的具体实例,而不需要知道它具体是什么?让我说在一个函数中的某个点,即时通讯具有Enum_A.现在我想创建一个dto实例.对此最好的方法或模式是什么?我想要达到的一切是将dto名称分配给枚举,以便稍后在某些特定点创建它.但如果可能的话,不要创造巨大的条件……

java – 不变性和可读性

我目前正在处理这个问题,我有一个带有巨大构造函数的Immutable类,我想重构一些更易读的东西,而不会破坏不变性.解决方法一种选择是提供一个单独的构建器类,它提供了setter,它负责构造实际的对象.在Bloch的第二版“EffectiveJava”中,第2项为不可变类说明了这一点.关键的想法是:>构建器为每个选项都有一个可变字段.>构建器将自身作为单个参数传递给不可变类的构造函数.

java – Spring singleton创建了多次

我还尝试过singleton=“true”和scope=“singleton”,但它们没有任何差异.谢谢.解决方法Spring中的singelton-ness是每个应用程序上下文,每次创建应用程序上下文的新实例时,所有单例都将被实例化.您需要拥有单个应用程序上下文并在应用程序中重复使用它

java – kryo.readObject导致与ArrayList的NullPointerException

当我使用kryo反序列化ArrayList对象时,我得到一个NullPointerException.我可以看到StdInstantiatorStrategy在不调用其构造函数的情况下创建了一个ArrayList,而其中一个字段未初始化导致异常.文档说首先应该调用无参数构造函数,如果没有可用的话,应该使用StdInstantiatorStrategy来进行字段初始化.我究竟做错了什么?解决方法随着