类继承 有关问题
类继承 问题
TInfo = class(TObject)
protected
class funciton TableName(Mode: string): string;
public
end;
TInfoWare = clas(TObject)
public
怎么样把父类中的 TableName 声明为 public
end;
---
问题就是把父类中声明的 protected 的函数或过程
在子程声明 public
谢谢
------解决方案--------------------
属性可以,方法不行的
------解决方案--------------------
没试过,不知道。不过这显然不符合oo的基本规则,类的保护属性或方法只能对类本身或类的派生类可见,如果声明为public那函数就是完全公开的了。
------解决方案--------------------
你的TableName在TInfo中定义成static method,不明白你在折腾什么
------解决方案--------------------
貌似 TInfoWare 没有从TInfo 继承下来吧
而且TableName也是个类方法 不符合类封装的要求
TInfo = class(TObject)
protected
class funciton TableName(Mode: string): string;
public
end;
TInfoWare = clas(TObject)
public
怎么样把父类中的 TableName 声明为 public
end;
---
问题就是把父类中声明的 protected 的函数或过程
在子程声明 public
谢谢
------解决方案--------------------
属性可以,方法不行的
------解决方案--------------------
没试过,不知道。不过这显然不符合oo的基本规则,类的保护属性或方法只能对类本身或类的派生类可见,如果声明为public那函数就是完全公开的了。
------解决方案--------------------
你的TableName在TInfo中定义成static method,不明白你在折腾什么
------解决方案--------------------
貌似 TInfoWare 没有从TInfo 继承下来吧
而且TableName也是个类方法 不符合类封装的要求