【Java构造函数最终变量赋值】教程文章相关的互联网学习教程文章

java – Spring @Autowired构造函数导致@Value在测试类中实例化时返回null【代码】

我在服务中使用自动装配的构造函数,当在测试类中实例化时,会导致@Value注释返回null.自动装配依赖项直接解决了问题,但项目遵循使用基于构造函数的自动装配的惯例.我的理解是,在测试类中实例化服务并不是从Spring IoC容器创建它,导致@Value返回null.有没有办法使用基于构造函数的自动装配从IoC容器创建服务,而无需直接访问应用程序上下文? 示例服务:@Component public class UpdateService {@Value("${update.success.table}")pri...

java – 仅仅为了测试而使用额外的构造函数有多好?【代码】

目前我需要编写SecondClass并决定使用这种解决方案编写,否则它将无法测试.@Component public class FirstClass {public void doStuff() {System.out.println("First Class stuff!");}}@Component public class SecondClass {private final Random random;private final FirstClass firstClass;@Autowiredpublic SecondClass(FirstClass firstClass) {this(new Random(), firstClass);}public SecondClass(Random random, FirstClas...

jAVA中的构造函数

jAVA中的构造函数每次在创建实例变量,对类中的所有变量都要初始化是很乏味的.即使你对setDim ( ) 这样的方法增加有用的功能时,你也不得不这样做.如果在一个对象最初被创建时就把对它的设置做好,那样的话,程序将更简单并且更简明.因为对初始化的要求是共同的,Java 允许对象在他们被创造时初始化自己.这种自动的初始化是通过使用构造函数来完成的.构造函数(constructor )在对象创建时初始化.它与它的类同名,它的语法与方法类似.一旦定...

java – Springframework构造函数-arg【代码】

我有一个MainClass有2个变量.我想将这两个值传递给springframework bean类“Test”.我如何在applicationContext.xml中定义它,以及如何将这两个变量值传递给bean“Test”. 例如:class MainClass {public int var1;public int var2;public Test test;public void setVar1(int var11) {var1 = var11;}public void setVar2(int var22) {var2 = var22;}public static void main(String args[]) {ApplicationContext context = new File...

java – 最终变量赋值:在声明或构造函数中?【代码】

首先,这不是Initialize final variable before constructor in Java的完全重复.它可能是相关的,但没有任何答案让我满意. 我的问题是关于Swing GUI中的最终变量.它特别关注自定义操作.我有许多最终变量和一些静态最终变量. 问题是:如果变量实际上是一个常量,那么更好的是:在构造时初始化它们,还是在声明时初始化它们? 我在上面提到的问题上的答案通常指向在您声明变量时能够分配变量的静态变量.这对我来说没有意义,因为变量不在静...

java – 何时在构造函数外部进行初始化?【代码】

假设我有class MyObject {Object object1 = new Object();Object object2;public MyObject(){object2 = new Object();}public MyObject(Object object2){this.object2 = object2;}public MyObject(Object object1, Object object2){this.object1 = object1;this.object2 = object2;} }object1何时初始化?在object2之后,在object2之后,取决于? 如果我的构造函数与object1的全局定义冲突,会发生什么,例如在上面的第三个构造函数中....

java – 无法处理隐式超级构造函数抛出的异常类型【代码】

我有一个Cage类:public class Cage<T extends Animal> {Cage(int capacity) throws CageException {if (capacity > 0) {this.capacity = capacity;this.arrayOfAnimals = (T[]) new Animal[capacity]; }else {throw new CageException("Cage capacity must be integer greater than zero");}} }我试图在另一个类main方法中实例化Cage的对象:private Cage<Animal> animalC...

构造函数在java中重载【代码】

我收到以下代码片段的错误 错误是:在调用超类型构造函数之前无法引用x(并指出注释1中的语句)class Con{int x =10;Con(){this(++x); //1System.out.println("x :"+x);}Con(int i){x=i++;System.out.println("x :"+x);} }在主要方法中,我有这个说法Con c1=new Con();我不明白这个错误.有人能解释一下这里到底发生了什么吗?解决方法:在创建类的实例时,构造函数首先调用它的超类构造函数来初始化超类字段.一旦所有超类构造函数都运行...

java – Junit测试构造函数中的异常?【代码】

在下面的测试中,我试图测试构造函数在尝试创建对象时传递非法参数时是否抛出异常,我在每个实例变量的setter中添加了验证,当它们传递无效数据时抛出一个例外.// test for invalid const@Test(expected = IllegalArgumentException.class)public void testInvalidBookStringStringStringInt() {// create a new bookBook b = new Book(invalidISBN, invalidAuthor, invalidTitle,invalidRating1);}目前测试失败了,我做错了什么? 预订...

java – 使用枚举中定义的静态字段作为构造函数中的参数【代码】

我有一个枚举,并希望在构造函数中使用静态值作为参数.public enum Enum {e1(0),e2(1),e3(SPECIAL_VALUE);static int SPECIAL_VALUE = -1;int value;private Enum(int value){this.value = value;} }在此示例中,SPECIAL_VALUE在初始化之前被访问,因此这显然不起作用.我想知道是否有一个共同的解决方案.或者我不应该这样做的原因. 注意:某处可能存在重复,但我能找到的所有内容都与在构造函数体中使用静态字段有关,而不是作为参数,我...

java – 不建议使用构造函数BitmapDrawable()修复【代码】

参见英文答案 > BitmapDrawable deprecated alternative 2个我有一个扩展BitmapDrawable的类,如下所示:public class MyDrawable extends BitmapDrawable {protected Drawable drawable;@Overridepublic void draw(Canvas canvas) {if(drawable != null) {drawable.draw(canvas);}}// some other methods... }和Eclipse警告我不推荐使用构造函数BitmapDrawable().一切都工作得很好,但我想修理我...

java – 自定义视图CustomView未使用2或3参数的View构造函数【代码】

我知道我可以这样做,警告指示我;创建2或3参数的View构造函数. 但是,CustomView来自第三方SDK,这是最终的,所以我觉得我必须使用这个来充分利用SDK.无论如何,没有机会扩展最终的CustomView. 有没有解决方法? 另外,我试图使用的视图是MetaioSurfaceView by Metaio. 以下是崩溃后的logcat消息:A/WTF(18270): Unable to start activity ComponentInfo{com.suzi.application/com.suzi.application.CustomActivity}: android.view.Infla...

java – 为什么ArrayList没有varargs构造函数?【代码】

我的问题可能听起来很愚蠢,但请先阅读整个问题. 我想知道很长一段时间,为什么ArrayList和其他类实现List,Set等,没有提供一个简单的构造函数来接受参数的变量计数?List<Integer> list = new ArrayList<>(1, 2, 3);这看起来简单明了. Java 9提供了新的List.of()静态工厂方法,它只复制Apache Utils和Guava引入的相同内容.我们被迫使用冗长的解决方法.List<Integer> list = Arrays.asList(1, 2, 3); List<Integer> list = Stream.of(1...

java – 如何通过它实现的接口在具体类中强制实现类型构造函数?【代码】

让我来描述一下情况,我确定我只是错误地思考这个问题.我有一个实现接口的具体类.我想在合同中强制该类必须具有特定类型的构造函数.例如:interface MyInterface {} public class MyClass implements MyInterface {public MyClass(HashMap<String, String> params) {} }我想确保使用单个HashMap参数实例化MyClass,看起来它会像这样做:interface MyInterface<T>除了在方法签名上使用泛型之外,我从未将它们与类或接口一起使用,而且我...

java – 复制构造函数类实例化【代码】

这是我的类,它实现了复制构造函数public class TestCopyConst {public int i=0;public TestCopyConst(TestCopyConst tcc){this.i=tcc.i;} }我试图在我的main方法中为上面的类创建一个实例TestCopyConst testCopyConst = new TestCopyConst(?);我不确定我应该作为参数传递什么.如果我必须传递一个TestCopyConst的实例,那么我必须再去“new”,这反过来将再次提示参数TestCopyConst testCopyConst = new TestCopyConst(new TestCopyCo...

构造函数 - 相关标签