Java定义或初始化类的属性
定义 类属性和 初始化 它们之间有区别吗?在某些情况下,您想彼此做一个吗?
以下代码段应指出我的意思。我在那里使用一个原语和一个对象:
import Java.util.Random;public class Something extends Activity {
int integer;
Random random = null;
Something(){
integer = 0;
random = new Random();
....
与
import Java.util.Random;public class Something extends Activity {
int integer = null;
Random random;
Something(){
integer = 0;
random = new Random();
....
回答:
首先,您不能将原语设置为null,因为原语只是数据,其中null
是对象引用。如果尝试编译int i = null
,则会收到不兼容的类型错误。
其次,像在Java中那样,在类中将变量初始化为null
或0
在类中声明变量时是多余的,原语默认为0
(或false
),对象引用默认为null
。局部变量不是这种情况,但是,如果您尝试以下操作,则在编译时会出现初始化错误
public static void main(String[] args) {
int i;
System.out.print(i);
}
明确地将它们初始化为0
or或false
or
的默认值null
是没有意义的,但是您可能希望将它们设置为另一个默认值,然后可以创建一个具有默认值的构造函数,例如
public MyClass{
int theDate = 9;
String day = "Tuesday";
// This would return the default values of the class
public MyClass()
{
}
// Where as this would return the new String
public MyClass (String aDiffDay)
{
day = aDiffDay;
}
}
以上是 Java定义或初始化类的属性 的全部内容, 来源链接: utcz.com/qa/417169.html