第二题(各种访问权限下变量的初始化)

题目来自竞考网(http://www.jingkao.net/)2015年“甲骨文杯”全国Java程序设计大赛-赛前模拟

第二题(各种访问权限下变量的初始化)_第1张图片


最终选择c

这道题考察的是变量的初始化和类属性的初始化

JVM规定,默认值这个特权属于类的数据成员变量与数组,一般的变量(本地变量:方法中的)不具备此特权。

数据成员变量的默认值则按照规定赋予:

boolean                                    false
char                                           '/u0000'
整形(byte,short,int,long)        0
浮点型(float, double)           +0.0f或+0.0d
引用型                                        null

import java.util.*;
public class VariableInit{
        private int a;
        public int b;
        protected int c;
        int d;
        public static void main(String[] args){
                VariableInit test = new VariableInit();
                int a = test.a++;
                int b = test.b++;
                int c = test.c++;
                int d = test.d++;
                int e ;
                System.out.println(e);//错误,尚未初始化变量    
                System.out.println(a+"-"+b+"-"+c+"-"+d);
        }
}




你可能感兴趣的:(变量初始化和属性的初始化)