变量(variable):
java是强类型语言,在声明变量前必须为其指定变量类型,变量也是java中最基本的存储单元,变量名相当于现实生活中的门牌号,比如我去你家xxxx村,xx号,我通过门牌号就可以找到你家,当然java中可以通过变量来找到该变量所引用的值(对象)。
变量声明 type 变量名 [=变量值]; 或者 type 变量名[,变量名,变量名];
变量有局部变量和成员变量(实例变量或属性):
局部变量:在方法内部定义的变量,使用前必须初始化,否则报编译错误!
成员变量:在方法外部,类内部定义,使用前如果不初始化,byte、short、int、long默认初始值为0,float和double默认初始值为0.0,char默认初始值为:u0000 布尔类型默认初始值为false!其它引用变量默认初始值为null。
1 package edu.test; 2 3 /** 4 * @author lzj 5 * @create 2017年11月8日 上午11:16:08 6 * @describe 测试成员变量/实例变量/属性的默认初始值(局部变量使用前必须初始化) 7 * jdk版本1.8 8 */ 9 public class TestVariable { 10 11 /** 12 * at 2017年11月8日 上午11:16:08 by lzj 13 * @Parameters1 String[] args 14 * @Returns void 15 */ 16 static byte a; 17 static short b; 18 static int c; 19 static long d; 20 static float e; 21 static double f; 22 static char h; 23 static boolean i; 24 static String j; 25 26 public static void main(String[] args) { 27 System.out.println("byte成员变量默认初始值为:"+a); 28 System.out.println("short成员变量默认初始值为:"+b); 29 System.out.println("int成员变量默认初始值为:"+c); 30 System.out.println("long成员变量默认初始值为:"+d); 31 System.out.println("float成员变量默认初始值为:"+e); 32 System.out.println("double成员变量默认初始值为:"+f); 33 System.out.println("char成员变量默认初始值为:"+h); 34 System.out.println("boolean成员变量默认初始值为:"+i); 35 System.out.println("String及其它引用类型成员变量默认初始值为:"+j); 36 } 37 38 }
测试输出结果:
byte成员变量默认初始值为:0
short成员变量默认初始值为:0
int成员变量默认初始值为:0
long成员变量默认初始值为:0
float成员变量默认初始值为:0.0
double成员变量默认初始值为:0.0
char成员变量默认初始值为: //注意此处有一个空格,jdk1.8char默认初始值为一个空格 。
不能从一个static方法内部直接使用非static变量。static方法只能使用静态属性。
2*8=2<<3;//效率最快