在C#中,用构造函数来初始化对象和用new关键字来初始化有什么区别

2025-02-01 19:54:17
推荐回答(3个)
回答1:

构造函数才是真正的初始化函数,new()是调用该类里边的构造函数把对象进行初始化。
比如example ex=new(example); example类里边的构造函数中有int i=0;这样执行new()函数后会使ex=0

回答2:

这不是对象,是字符引用。C#是使用虚拟机的。程序构成(堆和栈)。堆中放对象。栈中放字面值。堆由垃圾回收机制回收,栈由程序执行完释放。堆由程序员分配,如对象。栈中数据由程序自己分配,程序员不能分配,由编译器编译后,运行时执行时分配。你自己看看他们的哈希值就知道他们是不是同一个对象。String a = "abc";String b = "abc"; a==b;

回答3:

new 是为声明的对象分配内存空间,然后调用构造函数去执行初始化操作
构造函数是类的默认方法,除非你声明了静态的构造函数,否则是无法直接调用的