有人能解释一下为什么TestClass构造函数没有被调用吗?如果我创建另一个类,但不使用包含main方法的类,它就能工作?
public class TestClass {
public void TestClass(){
System.out.println("initializing Test Class");
}
public static void main(String[] args) {
TestClass testClass = new TestClass();
}
}
您在类TestClass
中创建的不是一个没有参数的构造函数,而是一个与您的类同名的方法。这在Java中是允许的,事实上,您通过添加返回类型void
来了解这一点。
在您的例子中,当您在main方法中实例化类时,您实际上是在调用“default”构造函数,该构造函数是编译器自动添加的。
如果您想看到您的行被打印出来,您必须删除“void”子句,这样才能有一个没有参数的正确构造函数。应该是这样的:
public class TestClass {
public TestClass(){
System.out.println("initializing Test Class");
}
public static void main(String[] args) {
TestClass testClass = new TestClass();
}
}
为什么x没有在下面初始化? 平均而言,对于一半的迭代,for循环中的将是,从而初始化。对于另一半,找到的 循环替换为 同样糟糕。只有
如果我有一个struct Foo和一个struct Bar: 如果我初始化一个条并打印正确得到的值: 但是现在如果我声明这样的构造函数: 我失去了Bar::foo的默认构造,程序输出了32764 0 5! 为什么我不得不像这样无声地初始化每个成员变量: 只要我声明一个构造函数?在这种情况下,为什么默认构造不起作用?
问题内容: 我有这个代码: 这会导致编译错误:可能尚未初始化,这很公平。 现在,我将代码更改为: 我得到同样的编译错误!我必须初始化为null: 那么,不初始化对象和初始化为null有什么区别?如果我声明一个没有初始化的对象,它是否为null? 谢谢 问题答案: 字段(成员变量)被初始化为(或初始化为默认的原始值,如果它们是原始的) 局部变量未初始化,您有责任设置初始值。
为什么打印(或其他一些随机数)?什么是 printing?为什么它不是 (或 )?
问题内容: 我对Swift类有疑问。我有一个UITableViewController类和UITableViewCell类的快捷文件。我的问题是UITableViewCell类和插座。此类存在错误 类别“ HomeCell”没有初始化程序 ,并且我不理解此问题。 感谢您的回复。 问题答案: 您必须使用隐式展开的可选变量,以便Swift可以在初始化阶段处理循环依赖关系(在这种情况下,UI组件的父级<