首页 > 其他 > 详细

深入类中的方法(9)- 不能被覆盖的方法与不能被继承的类

时间:2020-04-20 19:11:19      阅读:67      评论:0      收藏:0      [点我收藏+]
{
   抽象类是一定要被继承才可以使用的; 抽象方法是一定要被覆盖才可以使用的.
   现在说的是不能被覆盖的方法, 与不能被继承的类.
}

//譬如:
TA = class
  procedure Proc; virtual; {TA 中的虚方法, 将要被覆盖}
end;

TB = class(TA)
  procedure Proc; override; {覆盖}
end;

TC = class(TB)
  procedure Proc; override; {再次覆盖}
end;

//假如要设定 TB.Proc 为最终方法, 不允许再覆盖了, 需要 final 指示字.
TA = class
  procedure Proc; virtual; {TA 中的虚方法, 将要被覆盖}
end;

TB = class(TA)
  procedure Proc; override; final; {最终覆盖}
end;

TC = class(TB)
  //procedure Proc; override; {再覆盖不行了}
end;

//用 class sealed 是不能被继承的
TMyClass = class sealed(TObject)
//...
end;

深入类中的方法(9)- 不能被覆盖的方法与不能被继承的类

原文:https://www.cnblogs.com/fansizhe/p/12729764.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!