数组初始化
C语言允许在说明时对全局数组和静态局部数组初始化,但不能对非静态局部数组初始化。
与其它变量相似,数组初始化的一般形式如下:
type-specifier array_name[size1]...[sizen]={value-list};
数值表是一个由逗号分隔的常量表。这些常量的类型与类型说明相容,第一个常量存入数组的第一个单元,第二个常量存入第二个单元,等等,注意在括号“ }”后要加上分号。
下列中一个1 0元素整型数组被初始化装入数字1到1 0:
int i[10]={1,2,3,4,5,6,7,8,9,1 0 } ;
这意味着i [ 0 ]的值为1,而i [ 9 ]的值为1 0。
存放字符串的字符数组的初始化可采用如下简化的形式:
char array_name[size] = "string&quo...
类的初始化顺序为: (静态变量、静态初始化块)—— 》 (变量、初始化块)—— 》 构造函数 测试代码: public class InitialOrderTest { // 静态变量 public static String staticField = "静态变量"; // 变量 public String field = "变量"; // 静态初始化块 static { System.out.println(staticField); System.out.println("静态初始化块"); } // 初始化块 { System.out.println(field); System.out.println("初始化块"); } // 构造器 public InitialOrderTest() { System.out.println("构造器"); } public static void main(String[] args) { new ...
在初始化一个类时,到底是先执行哪一部分,总体的执行顺序是什么样的呢,同样,当类被释放时,又是怎样一个顺序呢?先来看下面的代码好了。 package net.moon.insignificant.commonclass; class CommonSubClass extends CommonSupperClass { static { System.out.println("Common sub static initial"); } public CommonSubClass() { System.out.println("Common sub construct"); } @Override protected void finalize() throws Throwable { // TODO Auto-generated method stub System.out.println("Common sub finalize"); super.finalize(); } } abstract class CommonSupperClass {...