面向对象编程中的“消息”,是什么意思,请举例说明 20
展开全部
消息是对象之间的通信机制。比如,当对象A调用对象B的一个方法时,对象A就是在向对象B发送一个消息,对象B的响应由其返回值定义。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
消息主要指的是在面向对象的多态机制里当各个派生类的对象来初始化指向基类的指针或引用时派生类会产生不同的实现效果
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
一个类的接口(public成员)定义了这个类的功能,以及其他对象可以向这个类的对象发送的消息。
常说的“发送一条消息” 就是说调用某个对象的某个函数的过程。消息就是一个方法调用。
class Server {
public:
void get_serve(); //类接口的一部分
};
void client(Server *p) {
p -> get_serve(); // 发送一条消息给Server类的某个对象.
}
常说的“发送一条消息” 就是说调用某个对象的某个函数的过程。消息就是一个方法调用。
class Server {
public:
void get_serve(); //类接口的一部分
};
void client(Server *p) {
p -> get_serve(); // 发送一条消息给Server类的某个对象.
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
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()+...}
};
如果另一个类中的那个方法是私有的话,就不能直接调用到,如果是其他类型的话看情况,如果是静态的(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()+...}
};
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询