社区
Delphi
帖子详情
请教一个关于类方法重载的设计问题,面向对象有经验请进
gzssqx
2003-10-16 10:32:17
容器class A 包含 class B 的一个实例,
MB1是 B 的一个方法,
有没有办法在 A 中对 B 的方法MB1进行重载?
...全文
37
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,379
社区成员
262,722
社区内容
发帖
与我相关
我的任务
Delphi
Delphi 开发及应用
复制链接
扫一扫
分享
社区描述
Delphi 开发及应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章