面向对象考题收集



1.下列不属于面向对象技术的基本特征的是( B )。 

  A. 封装性     B. 模块性     C. 多态性         D. 继承性 


2. 面向对象程序设计将描述事物的数据与 ( C ) 封装在一起,作为一个相互依存、不可分割的整体来处理。

  A. 信息       B. 数据隐藏    C. 对数据的操作   D. 数据抽象


3. 关于面向对象方法的优点,下列不正确的叙述是 ( C )。 

    A. 与人类习惯的思维方法比较一致     B. 可重用性好   C. 以数据操作为中心         D.可维护性好 


4.(  D)描述了一组交互对象间的动态协作关系,它表示完成某项行为的对象和这些对象之 间传递消息的时间顺序。     

    A.对象图      B. 协作图         C. 状态图       D. 序列图  


5.  在UML中,有四种关系,下面哪个不是(B)

  A 依赖关系   B 继承关系   C 泛化关系  D 实现关系


6 在用例之间,会有三种不同的关系,下列哪个不是它们之间的可能的关系(D)

  A 包含(include)    B 扩展(extend)   C 泛化( generalization)  D 关联(connect)


7.(  D )为编程人员提供了重复利用程序资源的一种途径,使编程人员可以扩充和完善旧的程序以适用新的需求。  

     A. 封装机制     B. 抽象机制     C. 多态机制      D. 继承机制 


8. 下面哪个选项中 ( C )不是序列图中的基本元素。  

  A.对象       B. 生命线      C. 泳道            D.消息


9 在面向对象程序设计语言中,对象之间通过( A)方式进行通信。
A.消息传递
B.继承
C.引用
D.多态


10 以下关于好的面向对象程序设计语言的叙述中,不正确的是(C)。
A.应该支持被封装的对象
B.应该支持类写实例的概念
C.应该支持通过指针进行引用
D.应该支持继承和多态


11 如果要表示待开发软件系统中软件组件和硬件之间的物理关系,通常采用UML中的(B)。

A.组件图
B.部署图
C.类图
D.网络图

12 在UML用例图中,参与者表示(A )。
A.人、硬件或其他系统可以扮演的角色
B.可以完成多种动作的相同用户
C.不管角色的实际物理用户
D.带接口的物理系统或者硬件设计


以下关于UML状态图的叙述中,不正确的是(1 C)。对下图的描述正确的是(2 D)。


(1)A.用于描述一个对象在多个用例中的行为
B.用于某些具有多个状态的对象而不是系统中大多数或全部对象
C.用于描述多个对象之间的交互
D.可以用于用户界面或控制对象
(2)A.ON是一个并发状态
B.因为此状态图中没有终止( final)状态,所以此图是无效的
C.play、stop和rew是动作
D.ON是超状态


15. 一个设计得好的OO系统具有(B)

A. 低内聚、低耦合的特征 C. 高内聚、高耦合的特征

B. 高内聚、低耦合的特征 D. 低内聚、高耦合的特征


16.构成对象的两个主要因素是(A)。

A. 属性和服务

B. 标识和内容

C. 继承和多态

  • 2
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Java面向对象程序设计期末考试试题及答案 1. 请简要说明面向对象程序设计的三大特征。 答案:封装、继承和多态是面向对象程序设计的三大特征。封装指的是将数据和操作数据的方法封装在一起,可以通过访问权限控制提高安全性;继承指的是子类可以继承父类的属性和方法,便于代码重用;多态指的是同一个方法名可以有多种不同的实现方式,实现了代码的灵活性和扩展性。 2. 请使用Java语言编写一个简单的类,并在主函数中实例化这个类。 答案:代码如下 ```java public class Person { private String name; private int age; public Person(String name, int age) { this.name = name; this.age = age; } public String getName() { return name; } public int getAge() { return age; } public static void main(String[] args) { Person person = new Person("Tom", 25); System.out.println("Name: " + person.getName()); System.out.println("Age: " + person.getAge()); } } ``` 3. 请简要说明抽象类和接口的区别。 答案:抽象类是一种包含抽象方法的类,不能被实例化,只能被继承;接口是一种只包含抽象方法和常量的类,实现接口的类必须实现接口中定义的所有方法。一个类可以实现多个接口,但只能继承一个抽象类。 4. 请使用多态的概念简要说明方法重写和方法重载的区别。 答案:方法重写是子类重新定义了父类的方法,实现了多态,调用父类引用指向子类对象时将调用子类的方法;方法重载是在一个类中可以定义多个方法名相同但参数列表不同的方法,通过参数的类型、个数和顺序来区分调用不同的方法。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

随风九天

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值