面向对象程序设计作业

面向对象程序设计作业,第1张

23 //

24cin

25MAIN

26复合

27>>

28#include

29#

30;

31a i++ i

320 0 2 3 x!=y x=y

3310,20

34class Rectangle {

private:

int width;

int height;

public:

Rectangle(int w,int h): width(w),height(h){}

~Rectangle(){}

int Circumference(){return width2 + height2;}

int Square(){return widthheight;}

};

35求10个100以内的质数

class Company;

class yearworker : public Company

{

virtual int salary() const = 0;

}

class monthwoker : public Company

{

}

class weekworker : public Company

{

}

每个子类去实现它(int salary() const ),

自定义类MyNumber:

import javautilArrayList;

import javautilList;

public class MyNumber {

public int[] delZero(int[] arr){

int[] newArr = new int[arrlength];

for (int i=0; i<arrlength; i++){

//删除所有含0的元素(0,10,20)

//            if (arr[i] == 0 && arr[i]%10 == 0){

//删除所有为0的元素

if (arr[i] == 0){

arr = delAnyPosition(arr,i);

}

}

return arr;

}

public static int[] delAnyPosition(int[] arr,int position){

//判断是否合法

if(position >= arrlength || position < 0){

return null;

}

int[] res = new int[arrlength - 1];

for(int i = 0;i<reslength;i++){

if(i < position){

res[i] = arr[i];

}else{

res[i] = arr[i + 1];

}

}

return res;

}

}

《面向对象程序设计》第03章在线测试

剩余时间:

57:18

答题须知:1、本卷满分20分。

2、答完题后,请一定要单击下面的“交卷”按钮交卷,否则无法记录本试卷的成绩。

3、在交卷之前,不要刷新本网页,否则你的答题结果将会被清空。

第一题、单项选择题(每题1分,5道题共5分)

1、假定AA为一个类,a为该类公有的数据成员,若要在该类的一个成员函数中访问它,则书写格式为(A )。

A、a B、AA::a

C、a() D、AA::a()

2、在关键字public后面定义的成员为类的(B )成员。

A、私有 B、公用

C、保护 D、任何

3、假定 ab 为一个类,则执行 ab x ;语句时将自动调用该类的 ( B) 。

A、有参构造函数 B、无参构造函数

C、拷贝构造函数 D、赋值构造函数

4、一段程序的定义如下,在函数f()中将动态对象的成员n的值改为34的语句应该为 ( C) class A { int n; public: setn(int nl) {n=nl;} A(int x) {n = x; } } int f() {A ptr = new A(45); }

A、An=34; B、ptrsetn(34);

C、ptr->setn(34); D、setn(34);

5、假定AB为一个类,则执行“AB p=new AB(1,2);”语句时共调用该类构造函数的次数为(B )。

A、0 B、1

C、2 D、3

第二题、多项选择题(每题2分,5道题共10分)

1、下列可以作为类的成员的是( ACD)

A、自身类对象的指针

B、自身类对象

C、自身类对象的引用

D、另一个类的对象

2、关于封装,下列说法中正确的是(ABC )。

A、通过封装,对象的全部属性和 *** 作结合在一起,形成一个整体

B、通过封装,一个对象的实现细节被尽可能地隐藏起来(不可见)

C、通过封装,每个对象都成为相对独立的实体

D、通过封装,对象的属性都是不可见的

3、定义析构函数时,错误的说法是 ( ABD) 。

A、其名与类名完全相同

B、返回类型是 void 类型

C、无形参,也不可重载

D、函数体中必须有 del_ete 语句

4、下面关于静态数据成员的说法错误的是(BCD )

A、静态数据成员是类的所有对象所共有的

B、静态数据成员要在构造函数内初始化

C、类的每个对象有自己的静态数据成员

D、静态数据成员不能通过类的对象调用

5、下列描述属于类的成员函数的是(ABD )

A、构造函数

B、析构函数

C、友元函数

D、拷贝构造函数

第三题、判断题(每题1分,5道题共5分)

1、假定AA为一个类,a为该类公有的数据成员,x为该类的一个对象,则访问x对象中数据成员a的格式为x->a。 F

正确 错误

2、对类中引用成员的初始化是通过构造函数中给出的初始化表实现的。T

正确 错误

3、析构函数的作用是在对象被撤销时收回先前分配的内存空间。T

正确 错误

4、使用关键字class 定义的类中缺省的访问权限是私有private的。T

正确 错误

5、当两个对象之间进行复制时,复制完成后这两个对象的内容将完全独立,没有关联。 F

正确 错误

一前言

其实不管是java还是net都是属于面向对象程序设计语言,归根结底,它们都离不开面向对象,所以什么是面向对象呢,意思就是object-oriented将对数据和对数据的 *** 作作为一个相互依赖的关系、不可分割的整体,才用信息隐蔽技术和数据抽象,更简单地解决现实当中的问题!

上面的概念比较抽象,这里涉及到一个类的问题,通俗地说,就是把一个事物抽象出来成为类,而这个类的实例就是对象,类跟对象的关系其实就相当于设计图纸跟实物之间的关系,面向对象其实就是面向于类的!

面向对象的三大特性:封装、继承、多态!

二基本概念

1封装

封装的意思其实很简单:就像你使用优盘一样,优盘被封装在一个盒子里面,你根本不需要知道它是怎么工作的,你只要知道怎么用它就行了,当然用的时候是使用USB接口,对封装的类进行调用的时候也是用特定的接口进行调用的!

2继承

继承是指一个对象从另一个对象中获得属性的过程是面向对象程序设计的三大原则之二,它支持按层次分类的概念例如,波斯猫是猫的一种,猫又是哺乳动物的一种,哺乳动物又是动物的一种如果不使用层次的概念,每个对象需要明确定义各自的全部特征通过层次分类方式,一个对象只需要在它的类中定义是它成为唯一的各个属性,然后从父类中继承它的通用属性因此,正是由于继承机制,才使得一个对象可以成为一个通用类的一个特定实例一个深度继承的子类将继承它在类层次中的每个祖先的所有属性

继承与封装可以互相作用如果一个给定的类封装了某些属性,它的任何子类将会含有同样得属性,另加各个子类所有得属性这是面向对象程序在复杂性上呈线性而非几何增长的一个重要概念新的子类继承其所有祖先的所有属性子类和系统中的其他代码不会产生无法预料的交互作用

3多态

多态是指一个方法只能有一个名称,但可以有许多形态,也就是程序中可以定义多个同名的方法,用"一个接口,多个方法"来描述可以通过方法的参数和类型引用

三封装、继承、多态之间的关系

下面我给你讲一个封装、继承、多态组合起来的例子:

在由封装,继承,多态所组成的环境中,程序员可以编写出比面向过程模型更健壮,更具扩展性的程序经过仔细设计的类层次结构是重用代码的基础封装能让程序员不必修改公有接口的代码即可实现程序的移植多态能使程序员开发出简洁,易懂,易修改的代码例如:汽车

从继承的角度看,驾驶员都依靠继承性来驾驶不同类型(子类)的汽车,无论这辆车是轿车还是卡车,是奔驰牌还是菲亚特牌,驾驶员都能找到方向盘,手刹,换档器经过一段时间驾驶后,都能知道手动档与自动档之间的差别,因为他们实际上都知道这两者的共同超类:传动装置

从封装的角度看,驾驶员总是看到封装好的特性刹车隐藏了许多复杂性,其外观如此简单,用脚就能 *** 作它发动机,手刹,轮胎大小的实现对与刹车类的定义没有影响

从多态的角度看,刹车系统有正锁反锁之分,驾驶员只用脚踩刹车停车,同样的接口可以用来控制若干种不同的实现(正锁或反锁)

这样各个独立的构件才被转换为汽车这个对象的同样,电脑培训>

1 若给出函数声明:

void f(int a=1,int b=2,int c=3,int d=4); 下面的函数调用合法的有___ABD_____。

Af( ) Bf(5) Cf(5,6) Df(5,6,7) Ef(5,6,7,8)

2 不能用友元函数重载的运算符有___ABDE_____。 A= B[ ] C+

D-> E( )

3 对一元运算符进行重载后,正确的显式调用方式有___BD_____。

A@a Boperator@(a) Ca@b Daoperator@( ) Ea@

4 关于构造函数,正确的描述有___BD____。

A可以是虚函数 B可以有参数 C可以被继承 D可以重载 E可以显式调用

以上就是关于面向对象程序设计作业全部的内容,包括:面向对象程序设计作业、面向对象程序设计c++编程题,求解脱......跪求大神...小弟财富值没了,实在不好意思!、Java面向对象程序设计一道作业题 程序设计求解答 希望用简单的方法谢谢等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9335119.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-27
下一篇 2023-04-27

发表评论

登录后才能评论

评论列表(0条)

保存