一个菜鸟关于类定义的初级问题?(50分)

components?
语言中并没有components这个概念出现。
所谓components不过是一种特定的对象罢了,
很难有确切的定义。
而且也没有published不能有方法一说。
这样生造反而混淆视听。
 
不要听Another_eYes,的.这样你会更加糊涂.
更不能就不存在什么components类型的封装级别.
部件不过是特定对象的一种体现罢了.
 
to wr960204: 你不是这么教条的一个人吧?
一个简单的比方: 你认为一个圆周只能是360度吗? 难道我说一个圆周是384“度”(呵呵,有一个游戏里的运算就是这么定的)甚至是2PI“度”(delphi中的sin,cos函数用到的)就错了吗?
所谓指示字也是人定的。 为了理解方便自己完全可以另定嘛。 我认为将delphi的类分为5部分没有什么不妥。 只是为了方便理解而已。 其实说到底运行时哪有什么private, protected, public呀,甚至没有类,只有字节。
 
--> 一个圆周是384“度”
--> 甚至是2PI“度”(
全都错了。数学上的概念也是有严格定义的,不能乱来。如果你的
中学老师这样教你,早就被扫地出门了。
--》将delphi的类分为5部分没有什么不妥。 只是为了方便理解而已
大大不妥,请你看清题目,这里不是讨论使用什么技巧的时候,
关键是帮他建立一个清晰的概念,只有很好的掌握了基本知识,
才能在实际运用中进行变通,才有使用类似“384度”的可能。
--》说到底运行时。。。只有字节。
现在是讨论语法定义的时候,说到运行时的情况,离题太远了,
要是再引出去,反正代码最终都是0和1,还学什么语言?
这样答题,易成误导,于事无补,反有卖弄之嫌。
 
各位大侠,我真的有些发晕了...
 
>>全都错了。数学上的概念也是有严格定义的,不能乱来。如果你的
>>中学老师这样教你,早就被扫地出门了。

[:D][:D][:D][:D][:D]

stlont快写论文吧。 找一家世界影响的专业计算机杂志发表。
可以义愤填膺地质问谁竟敢设定delphi, c/c++等语言中的sin, cos用2PI作为一个圆周而不是360度!!
因为这是“错”的!!!

 
Another_eYes:
驳你两句,就扯到天外天去了,越说越离谱,离题太远了。
sin, cos的内部实现我没研究过,不过我倒可以跟你说点
数学的东西: pi=3.1415......., 2PI=6.28.....
360度指的是圆周角, 所谓圆周一般是指圆周长,圆周长=2PI*r,
r=1时, 可以有:圆周长=2pi的简化。
另外,除了平面直角坐标,还有个叫极坐标的东西,不知你有
没有印象? 说说里面的圆的情况来听听吧。
 
喂,你们就扯到那里去了,我不要知道什么圆周率、2PI,我只想知道类的几个指示字的通俗
含义,拜托,不要神仙打仗,就不管小弟了!
 
"还有,如果这是一个完整的类定义,Button的单击过程代码为什么要放在implementation
后面,而不是在类定义中呢?"
procedure Button1Click(Sender: TObject);并不天生就是Button1的OnClick处理方法.
Button1Click只是一个TNotifyEvent类型的方法,它可以赋值给任何一个TNotifyEvent类型
的事件,包括Button1的Onclick事件.
把Button1的Onclick事件和Button1Click方法连接起来的地方在窗体的DFM文件中,这样,当
程序运行时就自动将Onclick事件和Button1Click方法连接起来.
因此,
1,Button1的OnClick事件处理方法可以是任何一个TNotifyEvent方法,它们可以不叫Button1Click;
2,如果没有在设计时指定Button1的OnClick事件处理方法,可以在运行时指定;
3,多个Button可以共享同一个OnClick事件处理方法,
如果多Button共享同一事件,如何在事件处理方法中分辨是谁触发该事件呢?
答案就是Sender参数.
可以将Sender强制转换成相应的类,从而取得其信息.

 
Delphi会在类的里面存储方法的指针,
Implement的意思是完成,当然就是完成具体的代码了
Delphi中的Object Pascal的语法相当严谨,所以没有允许在定义中写代码

大家不要扯得那么远,无论如何都是为了共同进步嘛
 
多人接受答案了。
 

Similar threads

S
回复
0
查看
648
SUNSTONE的Delphi笔记
S
S
回复
0
查看
660
SUNSTONE的Delphi笔记
S
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
顶部