免费智能真题库 > 历年试卷 > 软件设计师 > 2015年上半年 软件设计师 上午试卷 综合知识
第37题      
知识点   消息   继承   封装   消息传递
关键词   封装   继承   面向对象   消息传递   对象   消息      分类   面向对象的基本概念       

 
对象、类、继承消息传递是面向对象的4个核心概念。其中对象是封装(37)的整体。
 
 
  A.  命名空间
 
  B.  要完成任务
 
  C.  一组数据
 
  D.  数据和行为
 
 
 

 
  第38题    2011年下半年  
   50%
一个类是(38)在定义类时,将属性声明为private的目的是(39)。
  第16题    2009年下半年  
   45%
面向对象开发方法的基本思想是尽可能按照人类认识客观世界的方法来分析和解决问题,(16)方法不属于面向对象方法。
  第38题    2014年上半年  
   11%
某些程序设计语言中,在运行过程中当一个对象发送消息请求服务时,根据接收对象的具体情况将请求的操作与实现的方法进行连接,称..
 


   知识点讲解    
   · 消息    · 继承    · 封装    · 消息传递
 
       消息
        对象之间进行通信的一种构造叫做消息。但一个消息发送给某个对象时,包含要求接收对象去执行某些活动的信息,接收到消息的对象经过解释,然后予以响应,这种通信机制叫做消息传递。发送消息的对象不需要知道接收消息的对象如何对请求予以响应。
 
       继承
        继承是父类和子类之间共享数据和方法的机制。这是类之间的一种关系,在定义和实现一个类的时候,可以在一个已经存在的类的基础上进行,把这个已经存在的类所定义的内容作为自己的内容,并加入若干新的内容。
        一个父类可以有多个子类,这些子类都是父类的特例,父类描述了这些子类的公共属性和操作。一个子类可以继承它的父类(或祖先类)中的属性和操作,这些属性和操作在子类中不必定义,子类中还可以定义自己的属性和操作。
        如果一个子类只从一个父类得到继承,叫做"单重继承";如果一个子类有两个或更多个父类,则称为"多重继承"。
 
       封装
        面向对象系统中的封装单位是对象,对象之间只能通过接口进行信息交流,外部不能对对象中的数据随意地进行访问,这就造成了对象内部数据结构的不可访问性,也使得数据被隐藏在对象中。封装的优点体现在以下三个方面。
        (1)好的封装能减少耦合。
        (2)类内部的实现可以自由改变。
        (3)一个类有更清楚的接口。
 
       消息传递
        消息是内存空间中一段长度可变的缓冲区,其长度和内容均由用户定义。从操作系统的角度来看,所有的消息都是单纯的字节流,既没有确切的格式,也没有特定的含义。对消息内容的解释是由应用来完成的,应用根据自定义的消息格式,将消息解释成特定的含义,如某种类型的数据、数据块的指针或空。
        消息传递指的是任务与任务之间通过发送和接收消息来交换信息。
        消息机制由操作系统来维护,包括定义寻址方式、认证协议、消息的数量等。一般提供两个基本的操作:send操作,用来发送一条消息;receive操作,用来接收一条消息。如果两个任务想要利用消息机制来进行通信,它们首先要在两者之间建立一个通信链路,然后就可以使用send和receive操作来发送和接受消息。
        任务之间的通信方式可以分为直接通信和间接通信两种。
        (1)直接通信。在直接通信方式下,通信双方必须明确知道与之通信的对象。采用类似下面的通信原语:
        .send(P,message):发送一条消息给任务P;
        .receive(Q,message):从任务Q那里接收一条消息。如果没有收到消息,可以阻塞起来等待消息的到来,也可以立即返回。
        在通信双方之间存在一条通信链路,该链路具有如下特征:
        .通信链路是自动建立的,由操作系统来维护;
        .每条链路只涉及一对相互通信的任务,每对任务之间仅存在一条链路;
        .通信链路可以是单向或双向的。
        (2)间接通信。在间接通信方式下,通信双方不需要指出消息的来源或去向,而是通过共享的邮箱(mailbox)来发送和接收消息,每个邮箱都有一个唯一的标识。采用类似下面的通信原语:
        .send(A,message):发送一条消息给邮箱A;
        .receive(A,message):从邮箱A接收一条消息。
        间接通信的特点:
        .对于一对任务,只有当它们共享一个公共邮箱时才能进行通信;
        .一个邮箱可以被多个任务访问,每对任务也可以使用多个邮箱来通信;
        .通信可以是单向或双向的。
        邮箱只能存放单条消息,它提供了一种低开销的消息传递机制,其状态只有两种:空或满。另外一种间接通信机制是消息队列。它与邮箱是类似的,但可以同时存放若干条消息,提供了一种任务间缓冲通信的方法。如下图所示,发送消息的任务将消息放入队列,而接收消息的任务则将消息从队列中取出。
        
        消息队列示意图


 题号导航      2015年上半年 软件设计师 上午试卷 综合知识   本试卷我的完整做题情况 
1 /
2 /
3 /
4 /
5 /
6 /
7 /
8 /
9 /
10 /
11 /
12 /
13 /
14 /
15 /
 
16 /
17 /
18 /
19 /
20 /
21 /
22 /
23 /
24 /
25 /
26 /
27 /
28 /
29 /
30 /
 
31 /
32 /
33 /
34 /
35 /
36 /
37 /
38 /
39 /
40 /
41 /
42 /
43 /
44 /
45 /
 
46 /
47 /
48 /
49 /
50 /
51 /
52 /
53 /
54 /
55 /
56 /
57 /
58 /
59 /
60 /
 
61 /
62 /
63 /
64 /
65 /
66 /
67 /
68 /
69 /
70 /
71 /
72 /
73 /
74 /
75 /
 
↓第37题