声明、初始化和实例化的区别 陀螺

我算是刚入门的菜鸟,今天说下声明、初始化和实例化的区别和使用,如有不对的地方欢迎各位指正。

声明是指使用一个对象的时候,先定义属于哪个类型并,比如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才会被赋默认值。
 
原文地址:https://www.cnblogs.com/xjt927/p/2882644.html