荔园在线

荔园之美,在春之萌芽,在夏之绽放,在秋之收获,在冬之沉淀

[回到开始] [上一篇][下一篇]


发信人: playboy (壮志凌云), 信区: Program
标  题: 什么是对象
发信站: BBS 荔园晨风站 (Sun Feb 13 17:29:52 2000), 转信




什么是对象?是书上就有对象的概念,但关键是
你对对象这个概念理解有多少?对象这个概念我很早
就有所接触,但一直被一句关于'对象内的数据不能被
外界所改变'所困惑,我一直在想,有什么东西不能被
Debug或Softice改掉呢,真奇怪!后来,玩了一年Delphi
后,我才对对象有了更加深刻的理解。对象中那句'对象
内的数据不能被外界所改变'的本义,是指,对象没有给
外界留下直接操纵对象内部数据的机会,也没有为外界提
供这一便利的方法,对象内部的东西,可以是私有的,外
界若想控制对象内部的数据,必需通过向对象发消息来申
请之,而不是疯狂地去改变它。
对象我们每时每刻都在接触,比如C&C中的坦克,MUD中的
人物和物品,风云中的步惊云,帝国时代是的大象,诸如
此类的,都是对象!对象本身就是"一小堆有行为的数据"
大家想想我刚举的几个例子就会明白这种"有行为的数据"
是什么意思了。(刚才的您不会一个也没见过吧,如果真
的是这样,我建议您先找几个游戏玩玩,这样也能对OOP理解得更好。)
支持面向对象的编程Delphi并不是第一家,在此之前,
VB/VC/C++都是面向对象的支持者,只不过是在我眼中看
来,Delphi对面向对象的支持更高明一些。或者说,
Delphi对面向对象的编程支持得太好了,以至于它产生
了以下的副作用:
    Delphi中编程是可视化的,以至于"对象"也可视化
了,这样的结果会让初学者对面向对象有一种误解,以
为面向对象编程都是这个样子,而且有这种思想倾向的
朋友在进一步抽向面向对象的函意时会遇到一些困难。
{这一点VB和Delphi倒是很象,不过在Delphi中内建的Object
    Pascal 倒是很高雅的一种语言(我个人认为)}。

--
※ 来源:·BBS 荔园晨风站 bbs.szu.edu.cn·[FROM: gnet124.szptt.net.cn]


[回到开始] [上一篇][下一篇]

荔园在线首页 友情链接:深圳大学 深大招生 荔园晨风BBS S-Term软件 网络书店