我算是刚入门的菜鸟,今天说下声明、初始化和实例化的区别和使用,如有不对的地方欢迎各位指正。
声明是指使用一个对象的时候,先定义属于哪个类型并,比如string _str;
_str是声明(定义)了一个string类型的对象。
初始化可以理解为给声明的对象赋值的过程。string _str ="hello";
_str现在已经被初始化了,实例化后它具有“hello”这个值。
实例化是类用到的,A a = new A();当new的时候为对象分配内存,这个过程是对象的实例化。
总结:
声明,只生成对象不赋值的过程。
初始化,是给对象赋值的过程。
实例化,是使用new为对象分配内存的过程。
int i;//没有默认值
int j=i+2; 这样编译不通过,使用了未赋值的i。
static int i;//static时才有默认值
int j=i+2; //j = 2
当static int i;为静态的时候i才会被赋默认值。