社区
Delphi
帖子详情
请教一个关于类方法重载的设计问题,面向对象有经验请进
gzssqx
2003-10-16 10:32:17
容器class A 包含 class B 的一个实例,
MB1是 B 的一个方法,
有没有办法在 A 中对 B 的方法MB1进行重载?
...全文
47
11
打赏
收藏
请教一个关于类方法重载的设计问题,面向对象有经验请进
容器class A 包含 class B 的一个实例, MB1是 B 的一个方法, 有没有办法在 A 中对 B 的方法MB1进行重载?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
zhoutian618
2003-10-17
打赏
举报
回复
不能重载,
可以考虑用回调方法或事件的形式来实现一下同类似的功能!
zzh54zzh
2003-10-17
打赏
举报
回复
不可能进行重载。除非a是b的派生类。
flyinwuhan
2003-10-16
打赏
举报
回复
同意scsun(明月清风)
先从class b 派生 class c ,
class c 中重载MB1
class a 再包含class c.
哈哈!
HiMrXia
2003-10-16
打赏
举报
回复
直接的重载好像没有这个语法吧,重载应该只是针对祖先类中方法而言的。
不过你是不是可以先由B继承一个C,在C中申明C.MC1对B.MB1进行重载,实现C.MC1时 inherited的同时调用一个本地方法C.MC2,将class A中B实例的祖先改为C,再在A中定义一个本地方法指向C.MC2,这样或许可以
瞎说的,还得看高手指点,就当抛块砖吧
UP
huojiehai
2003-10-16
打赏
举报
回复
容器class A 包含 class B 的一个实例,
MB1是 B 的一个方法,
有没有办法在 A 中对 B 的方法MB1进行重载?
class A不是class B的派生类
不是继承没重载(override)的说法
g58521547
2003-10-16
打赏
举报
回复
这个东西我也是一知半解,哈哈强烈关注,学习。。。
scsun
2003-10-16
打赏
举报
回复
呵呵,从class B派生class C,然后在Class A中包含其实例。。。。。。
dickeybird888
2003-10-16
打赏
举报
回复
好象没有什么好的办法!
vavyboyleon
2003-10-16
打赏
举报
回复
“一个方法可以使用overload 指示字来重新声明,此时,若重新声明的方法和祖先类的方法具有不同的参数,它只是重载了这个方法,并没有隐藏它。当在派生类中调用此方法时,依靠参数来决定到底调用哪一个。”——《Object Pascal中文参考手册》
通过上面这段话我们可以知道,重载是一个派生类针对其主线类的一种行为。
而容器类是指一个类,它的一个实例又来存放其他类的实例,通常在容器类中存放的都是其他类型的实例的一个指针
所以,只要你的类A不是一个类B的派生类(ClassA作为一个容器类,通常不会有这种继承情况发生),就谈不到重载B的某个方法。
你说指的是不是只是实现一个类B的方法呢?
我所理解的就是这样,还往高手指正
csntgao
2003-10-16
打赏
举报
回复
那就不叫重载!
你要在classA实现MB1方法,即在MB1中调用Class B的MB1方法
建议你先看懂什么叫面向对象再说!
gzssqx
2003-10-16
打赏
举报
回复
沉得好快啊
戏说
面向
对象
程序
设计
戏说
面向
对象
程序
设计
C#版 目 录 代序..............四大发明之活字印刷——
面向
对象
思想的胜利 第一章............面试受挫——代码无错就是好? 第二章............代码规范、重构 第三章............复制VS复用 第四章............业务的封装 第五章............体会简单工厂模式的美妙 第六章...
JavaSE学习总结(六)
面向
对象
(中)代码块/继承/this和super/父类没有无参构造子类怎么办/
方法
重写/重写和
重载
的区别/final关键字/多态/多态成员访问特点/向上转型向下转型/孔子装爹
面向
对象
(中) 一、代码块 (一)代码块概述 在Java中,使用{}括起来的代码被称为代码块。 (二)代码块分类 根据其位置和声明的不同,可以分为局部代码块、构造代码块、静态代码块和同步代码块(多线程部分讲解)。 (三)常见代码块的应用 1.局部代码块 在
方法
中出现;限定变量生命周期,及早释放,提高内存利用率 2.构造代码块 在类中
方法
外出现;多个构造
方法
方法
中相同的代码存放到一起,每次调用构造
方法
都执行,并且在构造
方法
前执行 3.静态代码块 在类中
方法
外出现,并加上static修饰;静态代码块用于给类
进
行
java面试题
Java面试题 一 Java基础阶段 1.1
面向
对象
面向
对象
的特征有哪些方面?
面向
对象
的特征主要有以下几个方面: 1)抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地 注意与当前目标有关的方面。抽象并不打算了解全部
问题
,而只是选择其中的一 部分,暂时不用部分细节。抽象包括两个方面,一是过程抽象,二是数据抽象。 2)继承:继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了 一种明确表述共性的
方法
。
对象
的一个新类可以从现有的类中派生,这个过程称 为类继承。新类继承了原始类的特
JavaSE学习总结(六)
面向
对象
(中)代码块继承this和super父类没有无参构造子类怎么办
方法
重写重写和
重载
的区别final关键字多态多态成员访问特点向上转型向下转型孔子装爹
JavaSE学习总结(六)
面向
对象
(中)代码块/继承/this和super/父类没有无参构造子类怎么办/
方法
重写/重写和
重载
的区别/final关键字/多态/多态成员访问特点/向上转型向下转型/孔子装爹
基于C#的餐厅点餐系统的
设计
与实现
刚开始接到系统开发任务的时候,不知道从哪里下手,也不知道要做什么,即使上网下载一些软件也不知道怎么做,后来在阅读了《
面向
对象
技术与UML》之后,经过分析与研究,结合瀑布模型、迭代增量、螺旋模型各自的特点,我认为创建软件模型是最直接、最容易理解、也最容易操作的一种软件开发
方法
,因为这种
方法
是建立在对需求不了解,对业务规则不熟悉的情况下,最容易与开发人员、客户等沟通的最有效手段,事实也证明了这种
方法
的正确性,这个餐厅点餐系统用了不到两周的时间1.0版本就已经完成了。参数的命名
方法
,参考后面“变量的命名
方法
”。
Delphi
5,391
社区成员
262,736
社区内容
发帖
与我相关
我的任务
Delphi
Delphi 开发及应用
复制链接
扫一扫
分享
社区描述
Delphi 开发及应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章