标签:
在Java的世界里,“万物皆对象”。这就体现了Java的设计理念。
既然万物皆对象,任何对象引用的创建过程中,都必须初始化。这就好比电视和遥控器的关系。遥控器是你电视的引用,创建了电视的实例,这个实例就是遥控器。它可以控制电视的一切行为。这其中包括了实例化的一部分。
任何对象实例化创建的过程中都必须初始化。所谓初始化,对于class对象(我们所想当然认为的),class中有构造器,类似C++的构造函数。而对于基本数据类型(即字段)的初始化,比如int,short,long,double等,最好创建的过程中直接初始化,虽然这些字段在创建的过程中可能编译器默认初始化这些对象,但是,既然都是对象,我们最好初始化,做到掌控全局。
在初始化的过程中,初始化的顺序也尤其重要。虽然Java比C/C++改进了一些,比如:int i = f();
int f(){return 11;}?在C/C++中需要对函数f()进行声明,但在Java中却不需要这么做。
而下面这段代码:
1 public class test{ 2 3 int i = g(j); //Illegal forward reference 4 5 int j = f(); 6 7 int g(int i){ 8 9 return 2 * i;? 10 11 }? 12 13 int i = f(); 14 15 int f(){return 11;} 16 17 }?
在Java中是行不通的。因为你在没有初始化j的情况下初始化i。
标签:
原文地址:http://www.cnblogs.com/zhaoyansheng/p/4824729.html