c#实例化的问题

来源:百度知道 编辑:UC知道 时间:2024/06/16 18:58:09
各位高手:
在实例化类的时候通常都是A a = new A();写的时候只知道按这样的方式去写,但是却不是很清楚为什么这样写,希望高手能给小弟讲一下这句代码的详细意思。先在此多谢各位了!
new A()的详细意思是什么,A()是什么意思。

这个真的没什么好解释的
new 字面上理解 为"新的 创建"
A a=new A();的意思 就是 创新一个新的A 对象 ,他的名字叫 a
那么 你如果这么写就错了 A a=new B(); 创建一个新的B 对象, 他的名字是a ,但是显然 A a 的意思 定义个a为A类型.就好象int a;表示 a为整形一样.
所以 A a;就是表示a 是A类型的.
那么自然A a=new B();就错了;
A();的意思 当创建一个新对象A的时候,必须调用其内部构造函数.而构造函数默认都是无参数的.如果你使用A(**),也行的.只要里面有对应的构造函数.

其实在这一句话里面就包含了3个意思。
1.定义变量: A a;
2.实例化A: new A();
3.实例化的对象赋给a: a = new A();
就是这样的。。

实例化 实际就是去内存中创建一块专属于对象的内存空间 用于存储对象的信息

没个对象都有一些这些 或那些的信息

什么名字啊

颜色啊

班级啊

====之类的

之所以你在给与了他这些信息的值之后再去访问能够读到哪些信息
就是因为他把你赋予给他的东西保存到了内存

记住 只要 new 就会在内存中创建一块专属内存
不new 就有两种可能 1 引用别的对象已经创建的内存 此时当你改变自己值时实际上是改变的你引用对象的值
此为传引用
情况2 是值类型 或
在字符池池创建内存

只要记住这些就好

非常抽象的东西 时间是最好的老师

说得通俗点吧,比如你定义了一个person(人)类
你在实例化这个类的时候
比如这样来实例化
person wangmazi = new person();
你现在的角色就好像是女娲,在造人
从一堆人的模型中造出来了一个叫王麻子的人,而这个王麻子包含了人类的特性
大概就是这样了。其中的per