首页 > 编程知识 正文

java基本数据类型和引用数据类型,java基本数据类型转换

时间:2023-05-04 19:46:42 阅读:221388 作者:2603

public class DefaultInitValue {

private int iValue;//0

private long lValue; //0

private boolean bValue;//false

private char cValue;//(short)0 || 'u0000'

private float fValue; //0.0

private double dValue;//0.0

private String sValue;//null

@SuppressWarnings("unused")

private final int i;

public DefaultInitValue() {

i = 1;

}

public static void main(String[] args) {

DefaultInitValue div = new DefaultInitValue();

System.out.println(div.iValue);

System.out.println(div.lValue);

System.out.println(div.bValue);

System.out.println(div.cValue);

System.out.println(div.fValue);

System.out.println(div.dValue);

System.out.println(div.sValue);

if(div.cValue == 0 && div.cValue == 'u0000')

System.out.println("cValue = 'u0000'");

}

}

输出为:

0

0

false

0.0

0.0

null

cValue = ' '

* 若某个基本数据类型属于一个类成员,那么即使不明确(显式)进行初始化,也可以保证它们

获得一个默认值。然而,这种保证却并不适用于局部变量——那些变量并非一个类的字段。

* 对于局部变量,我们责任是在正式使用前分配一个适当的值。如果忘记,就会得到一条编译期错误,

告诉我们变量可能尚未初始化。

* final类型成员必须在声明时初始化或者在构造器中初始化。重载多个构造器时,每个构造器中

都必须明确初始化或者调用具有初始化代码的构造器。确保final字段在使用前获得正确的初始化。

* 类内所有private 方法都自动成为final。由于我们不能访问一个private 方法,

所以它绝对不会被其他方法覆盖(若强行这样做,编译器会给出错误提示)。

* 之所以要使用final 方法,可能是出于对两方面理由的考虑。第一个是为方法“上锁”,防止任何

继承类改变它的本来含义。

采用final 方法的第二个理由是程序执行的效率。将一个方法设成final 后,编译器就可以把

对那个方法的所有调用都置入“内联(inline)”调用里。

* 所谓内联函数就是指函数在被调用的地方直接展开,编译器在调用时不用像一般函数那样,参数

压栈,返回时参数出栈以及资源释放等,这样提高了程序执行速度。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。