我的第一个问题是-
class Explain() {
public Explain() {
}
}
构造函数应始终声明为公共吗?
如果我创建一个private
构造函数该怎么办。
我总是看到构造函数是隐式的public
。那么为什么private
构造函数有用呢?还是根本没有用。因为没有人可以调用它,或者永远也不能创建对象(由于private
构造函数)!这是我的第二个问题。
不, 构造函数 可以是public
,private
,protected
或default
(根本没有访问修饰符)。
做某事private
并不意味着没有人可以访问它。这只是意味着该类之外的任何人都不能访问它。因此private
构造函数也很有用。
private
构造函数的用途之一是为单例类提供服务。单例类是将对象创建的数量限制为一个的类。使用private
构造函数,我们可以确保一次最多只能创建一个对象。
范例-
public class Database {
private static Database singleObject;
private int record;
private String name;
private Database(String n) {
name = n;
record = 0;
}
public static synchronized Database getInstance(String n) {
if (singleObject == null) {
singleObject = new Database(n);
}
return singleObject;
}
public void doSomething() {
System.out.println("Hello StackOverflow.");
}
public String getName() {
return name;
}
}
问题内容: Gson用户指南指出,我们应该为任何可以正常使用Gson的类定义默认的无参数构造函数。甚至,在Gson 类的javadoc中说,如果我们尝试对缺少默认构造函数的类实例进行反序列化,则会抛出异常,在这种情况下 应 使用该异常。但是,我尝试对缺少默认构造函数的类使用Gson进行测试,并且序列化和反序列化工作都没有任何麻烦。 这是反序列化的代码。没有非参数构造函数的类: 和一个测试: 效果很
Gson用户指南指出,我们应该为任何类定义默认的无参数构造函数,以便正确使用Gson。更重要的是,在Gson的类的javadoc中说,如果我们试图反序列化缺少默认构造函数的类的实例,将引发异常,在这种情况下,我们应该使用。然而,我已经尝试在缺少默认构造函数的类中测试使用Gson,并且序列化和反序列化都可以顺利工作。 下面是反序列化的一段代码。没有非参数构造函数的类: 还有一个测试: 这很好用。 所
本文向大家介绍React组件的构造函数是必须的吗?相关面试题,主要包含被问及React组件的构造函数是必须的吗?时的应答技巧和注意事项,需要的朋友参考一下 function组件不用考虑构造函数; 对于class组件,如果不写构造函数,默认会被隐式调用
问题内容: Gson用户指南指出,我们应该为任何可以正常使用Gson的类定义默认的无参数构造函数。更重要的是,在Gson 类的javadoc中说,如果我们尝试对缺少默认构造函数的类实例进行反序列化,则会抛出异常,并且在这种情况下应使用该异常。但是,我尝试对缺少默认构造函数的类使用Gson进行测试,并且序列化和反序列化工作都没有任何麻烦。 这是反序列化的代码。没有非参数构造函数的类: 和一个测试:
如果将移到构造函数的最后一行,我不明白为什么下面的代码会显示错误。 我已经检查了很多关于StackOverflow的答案,但我仍然不能理解这其中的原因。请帮我用一些简单的例子和解释弄清楚这个错误。
问题内容: 以下代码向我返回错误信息: 我不明白。我的代码中的构造函数是第一条语句。我究竟做错了什么? 问题答案: 构造函数名称必须与类名称相同,因此请将类名称更改为或将构造函数名称更改为。 示例 (请注意,在Java中通常第一个字母是大写字母) :