面向对象编程中的“消息”,是什么意思,请举例说明

如题所述

在对象外,想要对象执行执行它的某个方法(函数),就需要向其发送一条消息。

例子:
class A
{
public:
void fun(){}
};

int main()
{
A a;
a.fun();//这条语句就是向a对象发送的一个消息,请求它执行它的fun方法(函数)
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-04-07
消息是对象之间的通信机制。比如,当对象A调用对象B的一个方法时,对象A就是在向对象B发送一个消息,对象B的响应由其返回值定义。
第2个回答  2013-04-06
消息主要指的是在面向对象的多态机制里当各个派生类的对象来初始化指向基类的指针或引用时派生类会产生不同的实现效果
第3个回答  2013-04-06
一个类的接口(public成员)定义了这个类的功能,以及其他对象可以向这个类的对象发送的消息。

常说的“发送一条消息” 就是说调用某个对象的某个函数的过程。消息就是一个方法调用。

class Server {
public:
void get_serve(); //类接口的一部分

};

void client(Server *p) {
p -> get_serve(); // 发送一条消息给Server类的某个对象.

}
第4个回答  2014-05-22
A对某个类的实例B发送消息就是调用B的方法,B.f()

如果另一个类中的那个方法是私有的话,就不能直接调用到,如果是其他类型的话看情况,如果是静态的(static)话,直接用类名可以调用到,如果是非静态的,就需要利用另一个类的实例(也就是用那个类生成的对象)来调用。

举例:
class Goods
{
private:
name,id,price
public:
getPrice(){}
};
class Item
{
subtotal;
public:
CalSubtotal(Goods g,int amount)
{subtotal = g.getPrice()*amount;}
getSubtotal(){}
};
class Sale
{
total;
public:
CalTotal(Item1,item2,...)
{total=item1.getSubtotal()+...}
};
相似回答