小弟比较弱的问题:子类屏蔽父类属性? ( 积分: 50 )

  • 主题发起人 主题发起人 gemouzhi2
  • 开始时间 开始时间
G

gemouzhi2

Unregistered / Unconfirmed
GUEST, unregistred user!
D中的子类如何屏蔽父类属性?
如:TOpenDialog没有其父类TCommonDialog的Template属性,
呵呵,小弟问的问题可能比较弱,
 
D中的子类如何屏蔽父类属性?
如:TOpenDialog没有其父类TCommonDialog的Template属性,
呵呵,小弟问的问题可能比较弱,
 
你把TOpenDialog类的代码复制一份
自己新弄一个类,但是把Template的声明删除就可以了
 
为什么要屏蔽呢?不用不就行了?
重定义的话就override一下,我觉得没必要屏蔽掉
 
以下不知是不是你的要求呢?
//--------------------------------------------------------------------
type
TC=class
private
FStr: string;
public
property str: string read FStr write FStr;
end;

TC1=class(TC)
protected
property str: string read FStr write FStr; //要屏蔽的属性
public
end;
 
子类要屏蔽父类属性,只要继承后,把需要屏蔽的属性放入保护或私有区域内
就可以了!
 
继承父类后不把属性放到public 和 published 就行了
 
wyb0026说的不错啊你做父类时就要考虑子类要用的属性的。
 
已公开的类成员是无法再屏蔽的。
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
345
import
I
D
回复
0
查看
1K
DelphiTeacher的专栏
D
I
回复
0
查看
511
import
I
后退
顶部