《东北农业大学21秋《面向对象程序设计》在线作业二答案参考45》由会员分享,可在线阅读,更多相关《东北农业大学21秋《面向对象程序设计》在线作业二答案参考45(14页珍藏版)》请在金锄头文库上搜索。
1、东北农业大学21秋面向对象程序设计在线作业二答案参考1. 由继承性可知,程序中子类拥有的成员数目一定大于等于父类拥有的成员数目。( )A.正确B.错误参考答案:B2. C语言中,运算符是自右向左结合的是( )。A.( )B.*C.D.+参考答案:D3. 下列( )是Java的调试器,如果编译器返回程序代码的错误,可以用它对程序进行调试。A.javaprof.exeB.java.exeC.javadoc.exeD.jdb.exe参考答案:D4. 成员函数一定是内联函数。( )A.对B.错参考答案:B5. 下列关于构造函数的描述中,错误的是( )。下列关于构造函数的描述中,错误的是( )。A.构造
2、函数可以设置默认参数B.构造函数在说明类变量时自动执行C.构造函数可以对静态数据成员进行初始化D.构造函数可以重载参考答案:C6. 一个类的数据成员中可以有本类的对象。( )A.对B.错参考答案:B7. 每个类的成员函数或者数据可以通过隐藏定义的指针访问,这个指针是( )。A.thisB.caseC.classD.char参考答案:A8. this指针是C+实现( )的一种机制。A.抽象B.封装C.继承D.重载参考答案:B9. 下列给字符数组赋初值时,正确的是( )。A.chars44=a,x,s,tB.chars323=“abc”,“xyz”C.chars24=“abcd”D.chars1=
3、“abcdef”参考答案:D10. 继承是( )的方法。A.将特殊的类变成通用的类B.把通用的参数传送给特殊的类的对象C.将通用的类变成特殊的类D.将已有的类添加新的特性,但不重写它们参考答案:CD11. 编译并且执行以下代码,会出现什么情况?( )Public class Qpublic static void main(String argv)int anar=new int1,2,3; System.out.println(anar1);A.1B.有错误,数组anar在初始化以前不能正常输出C.2D.有错误,数组的大小没有定义。参考答案:C12. 在私有继承方式下,派生类的对象可访问基类
4、中的公有成员。( )A.错误B.正确参考答案:A13. 下列字符列中,可以作为“字符串常量”的是( )。A.ABCB.“ABC”C.abcD.a参考答案:B14. 设有定义:int a=0, b=5, c; 执行语句c=(a=b)|+a&b+后,a、b、c的值分别是( )。A.5,5,1B.4,6,1C.1,6,1D.1,5,0参考答案:A15. 下列关于成员函数特征的描述中,错误的是( )。A.成员函数可以重载B.成员函数一定是内联函数C.成员函数可以设置参数的默认值D.成员函数可以是静态的参考答案:B16. Java的字符类型采用的是ASCII编码。( )A.正确B.错误参考答案:B17.
5、 类Teacher和Student是类Person的子类; Person p; Teacher t; Student s; /p, t and s are all non-null. if(t instanceof Person) s = (Student)t; 最后一句语句的结果是( )。A.将构造一个Student对象B.表达式是合法的C.表达式是错误的D.编译时正确,但运行时错误参考答案:C18. 假定类AB中有一个公用属性的静态数据成员static int bb; 在类外不通过对象名给该成员bb赋值为10的写法为static int AB:bb=10。( )A.正确B.错误参考答案:B
6、19. 函数的定义不可以嵌套,类的定义可以嵌套。( )函数的定义不可以嵌套,类的定义可以嵌套。( )A.正确B.错误参考答案:A20. 在C+中,允许从一个类派生出任意多个类,但不允许某个类同时从多个类派生。( )在C+中,允许从一个类派生出任意多个类,但不允许某个类同时从多个类派生。( )A.正确B.错误参考答案:B21. Java语言中的数组元素只能是基本数据类型而不能为对象类型。( )A.正确B.错误参考答案:B22. 通过指针或引用可以调用不同对象相同名称的函数,但可导致完全不同的行为的现象称为二义性。( )通过指针或引用可以调用不同对象相同名称的函数,但可导致完全不同的行为的现象称为
7、二义性。( )A.正确B.错误参考答案:B23. 下列代码的执行结果是( )。 public class Apublic static void main(Stringargs)int a=4, b=6, c=8; String s=abc; System.out.println(a+b+s+c);A.ababccB.46abc8C.464688D.10abc8参考答案:D24. 运算符只能用成员运算符来重载,不能用友元运算符来重载。( )运算符只能用成员运算符来重载,不能用友元运算符来重载。( )A.正确B.错误参考答案:A25. C语言中scanf命令在c+中改用cin。( )A.正确B.
8、错误参考答案:A26. 下列各输出语句中,显示结果为“123”的是( )。A.System.out.println(1+2+3+);B.System.out.println(1+2+3);C.System.out.println(1+2+3);D.System.out.println(1+2+3);参考答案:D27. 下列关于构造函数说法不正确的是( )。下列关于构造函数说法不正确的是( )。A.构造函数必须与类同名B.构造函数可以省略不写C.构造函数必须有返回值D.在构造函数中可以对类中的成员进行初始化参考答案:C28. 若类中有指针成员变量,则应编写( ),使得在对象销毁时能够自动调用该函
9、数释放指针成员变量所指向的内存空间。若类中有指针成员变量,则应编写( ),使得在对象销毁时能够自动调用该函数释放指针成员变量所指向的内存空间。A.友元函数B.虚函数C.构造函数D.析构函数参考答案:D29. 若一个类中含有纯虚函数,则该类称为( )。A.基类B.虚基类C.抽象类D.派生类参考答案:C30. 假定指针变量p定义为“int *p=new int(100);”,要释放p所指向的动态内存,应使用语句( )。A.deletepB.deletepC.delete*pD.delete&p参考答案:A31. 在保护继承中,对于派生类的访问同于公有继承,而对于派生类的对象的访问同于私有继承。(
10、)A.正确B.错误参考答案:A32. 以下哪些是Java语言的特点?( )A.面向对象B.安全可靠C.平台无关D.多支持线程E.支持分布操作参考答案:ABCDE33. 以下函数原型说明中,不正确的是( )。A.void int(double a);B.void Function(int);C.int Function(a);D.int Function( );参考答案:B34. 在下面循环语句中循环体执行的次数为( )。int i=0,s=0;while(sA.4B.5C.6D.7参考答案:C35. 以下有关类的继承的叙述中,正确的是( )A.子类能直接继承父类所有的非私有属性,也可通过接口继
11、承父类的私有属性B.子类只能继承父类的方法,不能继承父类的属性C.子类只能继承父类的非私有属性,不能继承父类的方法D.子类不能继承父类的私有属性参考答案:D36. 下列关于构造函数说法不正确的是( )。A.构造函数必须与类同名B.构造函数可以省略不写C.构造函数必须有返回值D.在构造函数中可以对类中的成员进行初始化参考答案:C37. 下面哪个说法正确( )。A.如果某公共的接口被声明在一个源文件中,则接口必须与源文件具有相同的名字B.如果源文件包含import语句,则该语句必须是除空行和注释行外的第一个语句行C.如果某源文件包含package语句,则该语句必须是第一个非空、非注释行D.接口中的
12、方法必定是抽象方法,但可以不用关键字abstract修饰参考答案:ABCD38. 构造函数和析构函数都能被继承。( )A.对B.错参考答案:B39. 下列( )是构造函数的特征。下列( )是构造函数的特征。A.构造函数在创建对象时自动调用B.构造函数不可以重载C.构造函数不可以设置默认参数D.构造函数必须指定函数类型参考答案:A40. 下列字符列中,可作为C+语言程序自定义标识符是( )。A.switchB.fileC.breakD.do参考答案:B41. 下列( )的调用方式是引用调用。A.形参是指针,实参是地址值B.形参是引用,实参是变量C.形参是变量,实参是地址值D.形参和实参都是变量参
13、考答案:B42. 析构函数名与类名没有关系。( )A.对B.错参考答案:B43. 有下面类的说明,有错误的语句是( )。Class XA.int a=2; B.X( ); public: C.X(int val); D.X( );A.AB.BC.CD.D参考答案:A44. 定义虚函数所用的关键字是virtual。( )A.正确B.错误参考答案:A45. 一般对象和指向对象指针的成员函数表示分别是运算符.和-。( )A.错误B.正确参考答案:B46. 在以下字符列中,合法的长整型常数是( )。A.OLB.4962710C.0.054838743D.2.1869e10参考答案:A47. 派生类中至少包含了它的所有基类的成员(除构造函数和析构函数外),在这些成员中可能有的是不可访问。( )A.正确B.错误参考答案:A48. 下列表示引用的方法中,( )是正确的。已知:int k=1000A.int &x=kB.char &yC.int &z=1000D.float &t=&k参考答案