C#中的类和对象和实例的白话解释

不要专业的术语解释,只要举例的比喻的解释!我一直不明白类到底是什么?对象又是什么?实例?请高手用比较容易懂的话解释一下谢谢了!尤其是用类new出来的那个对象能干啥?new... 不要专业的术语解释,只要举例的比喻的解释!我一直不明白类到底是什么?对象又是什么?实例?请高手用比较容易懂的话解释一下谢谢了!尤其是用类new出来的那个对象能干啥?new它是为了干什么? 展开
 我来答
307482311
2010-08-08 · TA获得超过1471个赞
知道小有建树答主
回答量:388
采纳率:0%
帮助的人:307万
展开全部
这样子同你说吧。类,他就是讲的一个种类。不懂?OK,比如人类。
这个“人”他们都有思维,都有眼睛鼻子等等共同的特征。他就叫做一个类。叫做“人类”。
还有“植物类”,这个“植物”它们都有根,叶子等等共同的特征。它就叫做一个类。
“张三”是个人,他只是人类中的一个特例,我们就把他叫做一个具体的对象。也就是C#中的对象。
一句话说完了,类都是一群对象的集合,里面包含了N多的对象。而对象只是类的一个特例。比如学校里有1000个学生,然后校长在广播里面喊:请张三同学到校长室来一下。这时候“李四,王五,赵六”等等听到广播,就知道,校长叫的是张三,而不是自己。所以张三李四王五这些都是这个学生类的一些特例(也就是一个个对象),他们除了有眼睛鼻子思维这些共同的特征之外,还有其他不同的地方,例如名字就是不同的。这样子比较通俗了吧。
实例就是“张三”这个名字。比如Student stu = new Student();stu就是一个实例。这个stu他就已经被实例化了。表示他是这个Student类里的一个对象。new他是为了把他实例化,让电脑内存知道,现在已经存在一个这样的对象了,然后你就可以使用这个对象了。
wangbenson
2010-08-12 · TA获得超过161个赞
知道答主
回答量:283
采纳率:0%
帮助的人:191万
展开全部
String 类
String str str是对象
String str = “abc”; “abc”是实例,也是对象.
这样也能解释instance of object这种说法 str的实例是”abc”

对象和实例从宏观的角度看,区别是:对象是同类事物的一种抽象表现形式,而实例是对象的具体化,一个对象可以实例化很多实例,对象就是一个模型,实例是照着这个模型生产的最终产品。实际上就是这样,一个对象可以实例化N个实例。就像根据一个模型可以制造多个实例的产品一样。
从内存分配的角度来看,对象是保存在堆中的,而实例是存储中栈中的,实例其实只是对象的一个引用,也就是指向对象的指针。

类是生存在代码区的,当程序用到类的时候,为了实现类,需要具体的数据,这样不可能将代码区的类代码原原本本的搬到堆里来,要在堆中创建类的抽象,即对象,堆中的这个对象是实现这个类的数据结构,由于类是引用类型,代码区的类要访问到这个对象,先在堆栈中建立指向这个数据结构即对象的索引,光有了对象和索引,程序是不能运行的,必需要有具体的数据,这就是初始化和运行中赋值,赋值后的对象就是实例,实例就是堆栈中的索引,实例的值可以随便指定的,但为了实现代码区那个类而在堆中创建的数据结构是不可变的,它是实现类的具体方法,这就是对象,你在那个堆结构中填入不同的数据,就得带了不同的实例。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
EE_Sure
2010-08-13 · 超过11用户采纳过TA的回答
知道答主
回答量:31
采纳率:0%
帮助的人:29.2万
展开全部
类是什么呢?我们把苹果,梨,香蕉叫做一“类”。对象是什么?里面的苹果……。实例是什么?是你手中的苹果,梨……归你的,你可以吃!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
albertbanda
2010-08-08 · TA获得超过193个赞
知道小有建树答主
回答量:402
采纳率:100%
帮助的人:62.1万
展开全部
对象是类的实例
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式