3交大网络教育_面向对象程序设计(JAVA)第一次作业
国家开放大学四川02372《面向对象程序设计》第1次形成性考核作业资料
面向对象程序设计-第1次形成性考核复习题(带答案)
说明:每学期的课程题号都可能更换,请认真核对是您需要的题号后再下载!
【题号】
java是一门()语言。
a. 机器
b. 面向对象的高级
c. 面向过程的高级
d. 汇编
[认真学习课本知识,并分析作答上述题号]
参考答案:面向对象的高级
【题号】
机器语言中的指令编码为()编码。
a. 数字
b. 十进制
c. 符号
d. 二进制
[认真学习课本知识,并分析作答上述题号]
参考答案:二进制
【题号】
更接近人类自然语言的计算机语言是()语言。
a. 高级
b. 机器
c. 汇编
d. 数字
[认真学习课本知识,并分析作答上述题号]
参考答案:高级
【题号】
对象是构成现实世界的一个独立单位,它具有自己的静态特征和()特征。
a. 状态
b. 重量
c. 颜色
d. 动态
[认真学习课本知识,并分析作答上述题号]
参考答案:动态
【题号】
类是对具有共同属性和行为的对象的抽象描述,每个对象称为该类的一个()。
a. 实例
b. 元素。
java面向对象程序设计习题集
java⾯向对象程序设计习题集JA V A⾯向对象程序设计习题集⽬录引⾔随着教学改⾰的深⼊推进,项⽬制教学模式已经受到我校⼴⼤师⽣的好评,也收到了很好的效果。
为了配合我校⾃编教材的使⽤,扩⼤同学们的知识深度和⼴度,巩固Java学习知识点,本书积累了我校教学经验丰富的JAV A⽼师,历年来的教学经验总结,收集了⼤量Java 相关试题,供⼤家参考。
感谢参加本书编写的有⾦鹏、李再友、谭登超、王丽萍、牟兰、税世兵、贺华川、张曾、杨怡菡、樊豪、陈肖、李虹锋、任晶、黄荣等。
由于编者⽔平有限,时间仓促,本书错误在所难免,敬请⼴⼤读者批评指正。
意见、编者2010年7⽉第⼀章 JAVA基础⼀、填空题1、标识符是唯⼀标志⼀个变量(variable)、⽅法(method)和类(class)等的名字。
2、标识符是区分⼤⼩写的,可以为任意长度(unlimited-length),但⼀般来说,长度适中即可。
3、标识符以字母、 $ 或下划线开始,并包含这些字符和数字的字符序列。
4、标识符不能使⽤java语⾔定义的关键字。
5、基本数据类型是不能简化的、内置的数据类型,⽤以表⽰真是的数字、字符等,通常⽤来构建更复杂的数据类型。
6、java的开发⼯具包包括__SE _,__ ME __,__ EE __三种不同的⼯具包。
7、JVM是( java虚拟机 --java virtual machine),JDK是(java开发⼯具包 --Java Developer's Kit )。
8、java中最简单的⼀种数据类型是布尔型,其类型说明符为boolean 。
9、布尔类型变量的值只有两种值,其值为 ture 和 false 。
10、整数类型包括 byte、 int 、 short 、 long ,他们都是带符号的(即有正负之分),表⽰数学中的整个数。
11、byte类型数据占 8 位空间,short类型数据占 16 位空间,int类型数据占 32 位空间,long类型数据占 64 位空间。
北交《面向对象程序设计》在线作业一答案
北交《面向对象程序设计》在线作业一-0004试卷总分:100 得分:100一、单选题(共23 道试题,共57 分)1.有如下类声明:class Foo { int bar; }; 则Foo类的成员bar是( )A.私有数据成员B.私有成员函数C.公有数据成员D.公有成员函数答案:A2.下面关于派生类的描述中,()是错的。
A.派生类至少有一个基类B.派生类的成员除了它自己的成员外,还包含了它的基类的成员C.派生类中继承的基类成员的访问权限到派生类保持不变D.一个派生类可以作为另一个派生类的基类答案:C3.要定义一个具有5个元素的一维数组vect,并使其各元素的初值依次是30,50,-88,0 和0,则下列定义语句中错误的是( )A.int vect[5]={30,50,-88,0,0};B.int vect[5]={30,50,-88};C.int vect[ ]={30,50,-88,0,0};D.int vect[ ]={30,50,-88};答案:D4.在以下说明中,标识符ptr()。
int (*ptr)[3];A.说明不合法B.是一个指针数组名,每个元素是一个指向整数变量的指针C.是一个指针数组名,每个元素是一个指向整数变量的指针D.是一个指向整型变量的指针答案:B5.下列关于模板的叙述中,错误的是( )A.类模板不能有数据成员B.模板声明中的第一个符号总是关键字templateC.在模板声明中用<和> 括起来的部分是模板的形参表D.在一定条件下函数模板的实参可以省略答案:A6.下列函数中,()是对文件进行读操作的。
A.write()B.tellg()C.seekp()D.read()答案:D7.假定a为一个整型数组名,则元素a[4]的字节地址为()。
A.a+8B.a+4C.a+32D.a+16答案:D8.下列关于派生类可访问它基类成员的描述中,错误的是()。
A.私有继承方式下,派生类可访问它基类中的公有成员和保护成员B.派生类可访问它基类中的成员与继承方式有关C.派生类不可访问它基类中的私有成员D.公有继承方式下,派生类可访问它基类的私有成员答案:D9.若一个类中含有纯虚函数,则该类称为()。
3交大网络教育_面向对象程序设计(JAVA)第一次作业
c. 每个构造函数的定义只能针对一个对象。
d. 每个自定义的类只能有一个对象。
题目 15
7、 下列叙述中,错误的是() 选择一项:
a. 通过接口可以了解对象的交互界面
b. 接口与类的层次无关
c. 接口与存储空间有关 d. 通过接口说明类所实现的方法
题目 16
10、 下面关于抽象类的声明中正确的是() 选择一项:
a. 在 java 程序中,import 语句可以没有 b. 在 java 程序中,import 语句可有多个 c. 在 java 程序中,import 语句必须引入在所有类定义之前 d. 在 java 程序中,import 语句必须有一个
题目 9
3、 Java 中,能实现多重继承效果的方式是() 选择一项:
a. 接口 b. 同步 c. 内部类 d. 适配器
题目 10
1、 下列关于构造方法的叙述中,ቤተ መጻሕፍቲ ባይዱ误的是( ) 选择一项:
a. Java 语言规定构造方法名与类名必须相同 b. Java 语言规定构造方法只能通过 new 自动调用 c. Java 语言规定构造方法没有返回值,但不可用 void 声明 d. Java 语言规定构造方法不可重载
d. 当且仅当 X 是一个类,Y 是一个接口时
题目 4
15、在构造函数中使用 super 引用时有什么限制?() 选择一项:
a. 只有一个子类可以用。
b. 必须出现在构造函数的第一条语句。
c. 必须出现在构造函数的最后一条语句。
d. 只能用在父类的构造函数中。
题目 5
13、 若特快订单是一种订单,则特快订单类和订单类的关系对应于面向对象编程(OOP)中的 术语() 选择一项:
最新交大网络教育_面向对象程序设计(JAVA)第二次作业
第6讲——“输入输出流与文件”作业1、当使用File类中的方法操作文件系统时,下列功能中的哪个不能做到?(d)A) 改变当前工作路径B) 删除某个文件C) 创建某个文件D) 修改文件的安全级别2、对File类实例化时,在文件系统中便相应有一个文件被创建。
该句话是否正确?(b)A)正确B)错误3、下面哪种流类允许您从一个文件中读取基本数据类型的数据?(a)A) DataInputStream和FileInputStreamB) DataInputStreamC) FileInputStreamD) FileReader4、下列说法中错误的是(b)A) Reader类和Writer类及其派生类都可用于16位Unicode字符的输入输出B) FileInputStream类和FileOutputStream类均可用于处理16位Unicode字符的输入输出C) FileInputStream类和FileOutputStream类可用于读取图像文件D) FileInputStream类和FileOutputStream类可用于读取文本文件5、下列代码的运行结果为(a)FileOutputStream out = new FileOutputStream(“objectStore.ser”);ObjectOutputStream os = new ObjectOutputStream(out);os.writeObject(“Object on the fly!”);A) 字符串“Object on the fly!”被写入文件objectStore.serB) 第3行导致编译错误C) 代码可以编译通过,但在运行时第3行将抛出一个异常D) 第2行将出现一个异常6、考虑如下代码段:FileOutputStream fo = new FileOutputStream(“myFile.txt”);DataOutputStream do = new DataOutputStream(fo);do.writeByte(9);do.writeFloat(4.20f);do.close();上述代码执行后,有多少字节(8位)被写入文件?(b)A) 2B) 5C) 3D) 107、考虑如下代码段:1) import java.io.*;2) public class QuestionEight {3) public static void main(String[] args) throws IOException {4) File inputFile = new File(“javaCourse.txt”);5) File outputFile = new File(“javaCourseCopy.txt”);6) BuffferedReader in = new BufferedReader(inputFile);7) BufferedWriter out = new BufferedWriter(new FileWriter(outputFile));8) String line;9) while((line = in.readLine()) != null) {10) out.write(line);11) out.newLine();12) }13) in.close();14) out.close();15) }16) }上述代码的输出为:(b)A) 第3行编译时报错B) 第6行编译时报错C) 编译通过,但运行时第6行抛出异常D) 编译通过,且运行时正常。
西交《面向对象程序设计》在线作业
B. a+8
C. a+16
D. a+32
满分:2 分
23. 下面关于派生类的描述中,( )是错的。
A. 一个派生类可以作为另一个派生类的基类
B. 派生类至少有一个基类
C. 派生类的成员除了它自己的成员外,还包含了它的基类的成员
D. 派生类中继承的基类成员的访问权限到派生类保持不变
单选题
多选题
判断题
、多选题(共 5 道试题,共 10 分。)
1. 下列函数中,可以作为虚函数的是( )。
A. 普通函数
B. 非静态成员函数
C. 构造函数
D. 析构函数
满分:2 分
2. 下面说法正确的是( )
A. 将数据结构和算法置于同一个函数内,即为数据封装
满分:2 分
21. 关于关键字class和typename,下列表述正确的是( )。
A. 程序中所有typename都可以替换成class
B. 程序中所有class都可以替换成typename
C. A与B都正确
D. A与B都不正确
满分:2 分
22. 假定a为一个整型数组名,则元素a[4]的字节地址为( )。
C. this指针是指向成员函数的指针
D. this指针可以在程序中显示使用
满分:2 分
34. C++所有输入和输出流的基类是( )
A. stream.h
B. iostream.h
C. cin
D. ios
满分:2 分
35. 有关运算符重载正确的描述是( )。
A. C++语言允许重载运算符时改变运算符的操作个数
《JAVA面向对象程序设计》练习题参考答案
《J A V A语言程序设计》练习题 1一、单选择题1、编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为( )。
A. .javaB. .classC. .htmlD. .exe2、设x = 1 , y = 2 , z = 3,则表达式y+=z--/++x 的值是( )。
A. 3B. 3. 5C. 4D. 53、不允许作为类及类成员的访问控制符的是( )。
A. publicB. privateC. staticD. protected4、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( )。
A. static void method( )B. public void method( )C. final void method( )D. abstract void method( )5、给定java 代码如下,编译运行后,输出结果是( )(选择一项)。
public class test {static int i;public int aMethod() {i++;return i;}public static void main (String args[]) {Test test=new Test() ;test.aMethod () ;} }a) 0 b) 1 c) 2 d) 3二、填空题1、开发与运行Java程序需要经过的三个主要步骤为编辑源程序、编译生成字节码和解释运行字节码。
2、在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码占用2字节内存空间,这样,无论是中文字符还是英文字符,都是占用2字节内存空间。
3、设x = 2 ,则表达式( x + + )/3 的值是0 。
4、若x = 5,y = 10,则x < y和x >= y的逻辑值分别为true和false。
20XX年9月份考试Java程序设计第一次作业
20XX年9月份考试Java程序设计第一次作业以下是为大家整理的20XX年9月份考试Java程序设计第一次作业的相关范文,本文关键词为20XX年,9月份,考试,Java,程序设计,第一次,作业,,您可以从右上方搜索框检索更多相关文章,如果您觉得有用,请继续关注我们并推荐给您的好友,您可以在综合文库中查看更多范文。
20XX年9月份考试Java程序设计第一次作业一、单项选择题(本大题共50分,共20小题,每小题2.5分)1.在某类的子类中,下述方法中必须要实现的方法是()A.publicdoublemethoda();b.staticvoidmethoda(doubled1){}c.publicnativedoublemethoda();D.Abstr actpublicvoidmethoda();2.给定Filef=newFile(\可以实现向文件尾部读写的是()A.RandomAccessFilef1=newRandomAccessFile(f,\b.RandomAccessFilef1 =newRandomAccessFile(f,\c.RandomAccessFilef1=newRandomAccessFil e(f,\D.RandomAccessFilef1=newRandomAccessFile(f,\3.以下由do-while语句构成的循环执行的次数是()intk=0;do{++k;}while(k D.有语法错,不能执行4.给定类Demo定义如下下列描述中正确的是()A.新生成Demo对象时coumt的值为0b.新生成Demo对象时coumt的值未定义c.base类的对象中可以直接对count变量进行访问修改.D.以上均不对5.下列哪个不是整数类型的变量()A.-10b.045c.0xa1D.67f6.给定以下程序段//insertcodepublicclassfoo(publicstaticvoidmain(string[]args)throwsexception{printwriterout=newprintwriter(newjava.io.outputstreamwriter(system.o ut),true);out.printIn(“hello”);))要使程序能正确运行,在//insertcode处必须添加()语句A.importjava.io.printwriter;b.includejava.io.printwriter;c.importjava.io.outputstreamwriter;D.includejava.io.outputstreamwriter;7.Java语言是()A.面向问题的解释型高级编程语言b.面向机器的低级编程语言c.面向过程的编译型高级编程语言D.面向对象的解释型高级编程语言8.下列二维数组定义不正确的是()A.int[]a[]=newint[10][10];b.inta[10][10]=newint[][];c.cinta[][]=newint[10][10];D.int[][]a=newint[10][10];9.假定有一个可能引起异常的方法,用什么方式告诉方法的调用者要捕获该异常()A.throwexceptionb.throwsexceptionc.newexceptionD.不用特别指定10.给出下列声明strings=”example”,则下列选项中()不是合法的代码A.s[3]=”x”;b.intI=s.length();c.stringt=”For”+s;D.stringt=s.toLowercase();11.出下列代码段:if(x>4){system.out.println(“Test1”);}elseif(x>9){system.out.println(“Test2”);}else{system.out.println(“Test3”);}哪一个范围的x取值可以产生输出信息:”Test3”()A.小于0b.5到9之间c.大于等于10D.以上均不对12.单项选择题可以替换一个container对象布局的方法()A.setLayout(aLayoutmanager);b.addLayout(aLayoutmanager);yout(aL ayoutmanager);D.setLayoutmanager(aLayoutmanager);13.类publicclassreturnIt{returnTypemethodA(bytex,doubley){returnx/y*2;}}中的方法methodA()方法的返回值类型为()A.Intb.bytec.shortD.double14.编译并运行下列程序的正确结果是()publicclassequalsTest{publicstaticvoidmain(stringargs[]){objectA=newLong(7);LongL=newLong(7);if(A.equals(L))system.out.println(\elsesystem.out.println(\}}A.\b.\c..编译错误D.以上均不对.15.如果一个类对象要永久保存,则必须实现接口()A.Runnableb.enumerationc.serializableD.object16.关于下列程序publicclassQ{publicstaticvoidmain(stringargv[]){intanar[]=newint[]{1,2,3};system.out.println(anar[1]);}}以下结论正确的是()A.发生编译错误b.1c.2D.数组长度未指定17.下列语句哪个是错误的:()A.chara=’c’b.chara=’\\b’c.chara=”a”D.chara=’\\103’18.在使用interface声明一个接口时,只可以使用()修饰符修饰该接口.A.privateb.protectedc.privateprotectedD.public19.给定Actionevent,下列哪个方法可以识别出受改事件影响的对象()A.publicclassgetclass()b.publicobjectgetsource()c.publiccomponentgetso urce()D.publiccomponentgetTarget()20.某类example的main()方法参数为args,当输入数据javaexamplecat时,args[0]的值为()A.catb.javac.exampleD.null二、判断题(本大题共50分,共20小题,每小题2.5分)1.Java 类文件可以既是Application又是Applet.()2.使用length()方法可以获得数组和字符串的长度.()3.Java中的消息包括消息的接收者,接受者所用方法,方法所需参数三个部分.()4.类的私有属性和私有方法可以被其子类访问.()5.Java中”+”运算符除可执行加法运算外也可用于字符串的连接操作.()6.实现一个接口必须实现接口的所有方法.()7.组件必须放置在一定的容器中才能显示.()8.方法头中的关键字void用来表示方法不返回值9.Java系统的标准输入对象是system.in,标准输出对象有两个,分别是标准输出system.out和标准错误输出system.err。
西安交大网络教育《Java语言》习题
西安交大网络教育《Java语言》习题《Java语言》习题一、单项选择1)MAX_LENGTH是int型public成员变量, 变量值保持为常量100,用简短语句定义这个变量。
A public int MAX_LENGTH=100;B final int MAX_LENGTH=100;C final public int MAX_LENGTH=100;D public final int MAX_LENGTH=100.2)给出下面代码:1) class Parent {2) private String name;3) public Parent(){}4) }5) public class Child extends Parent {6) private String department;7) public Child() {}8) public String getValue(){ return name; }9) public static void main(String arg[]) {10) Parent p = new Parent();11) }12) }那些行将引起错误?A 第3行B 第6行C 第7行D 第8行3)类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 编译时正确,但运行时错误。
4)给出下面代码段1) public class Test {2) int m, n;3) public Test() {}4) public Test(int a) { m=a; }5) public static void main(String arg[]) {6) Test t1,t2;7) int j,k;8) j=0; k=0;9) t1=new Test();10) t2=new Test(j,k);11) }12) }哪行将引起一个编译时错误?A line 3B line 5C line 6D line 105)对于下列代码:1) class Person {2) public void printValue(int i, int j) {//... }3) public void printValue(int i){//... }4) }5) public class Teacher extends Person {6) public void printValue() {//... }7) public void printValue(int i) {//...}8) public static void main(String args[]){9) Person t = new Teacher();10) t.printValue(10);11) }第10行语句将调用哪行语句??A line 2B line 3C line 6D line 76) 看以下程序:boolean a=false;boolean b=true;boolean c=(a&&b)&&(!b);int result=c==false?1:2;这段程序执行完后,c与result的值是:A. c=false;result=1;B. c=true;result=2;C. c=true;result=1;D. c=false;result=2;7) 运行下列程序, 会产生什么结果public class X extends Thread implements Runable{ public void run(){}public static void main(String args[])Thread t=new Thread(new X());t.start();}}A. 第一行会产生编译错误B. 第六行会产生编译错误C. 第六行会产生运行错误D. 程序会运行和启动8) 指出下列程序的运行结果int i = 9;switch (i) {default:case 0:break;case 1:case 2:}A. defaultB. default, zeroC. error default clause not definedD. no output displayed那个9) 运行下列程序,会产生什么结果:class Outer1{private int a;void foo(double d,final float f){ String s; final boolean b;class Inner{void methodInner(){}}public static void main(String args[]) {Outer1 me=new Outer1();me.foo(123,123);}}A. in the Inner outerB. outerC. in the InnerD. 编译不通过10)面向对象程序设计方法的优点:A.可重用性、可扩展性、可操作性B.可重用性、可维护性、可操作性C.可管理性、可扩展性、可操作性D.可重用性、可扩展性、可管理性11)下面选项中,Java对类Welcome进行定义正确的是:A.public class 1WelcomeB.public class We lcomeC.public class welcomeD.public class Welcome12)有如下的程序:public class Welcome3{public static void main( String args[] ){}}则它的输出结果是:A.Welcome to Java Programming!B.WelcomentonJavanProgramming! C.WelcometoJavaProgramming!D.WelcometoJavaProgramming!13)对方法main的第1行定义正确的是:A. public main( String arg [ ] )B. public void main( String arg [ ] )C. public static void main( String arg [ ] )D. public static void main( String args [ ] )14)下面那一项不会出现编程错误:A.忘记多行注释符的一个定界符B.一个标识符的大小写字母使用不当C.括号不成对出现D.在一个显示图形用户界面的应用程序中调用System .exit15)给定下面的代码片段:1) String str = null;2) if ((str != null) && (str.length() > 10)) {4) }5) else if ((str != null) & (str.length() < 5)) {7) }哪些行会导致错误? ( )A. line 1B. line 2C .line 516)下面哪种注释方法能够支持javadoc命令: ( )A. /**...**/B ./*...*/C. //D. /**...*/17)下面关于Applet的说法正确的是 ( )A. Applet也需要main方法B. Applet必须继承自C. Applet能访问本地文件D. Applet程序不需要编译18)看下面一段程序:class Aclass{void go(){}}public class Bclass extends Aclass{void go{}public static void main(String args[]){ Aclass a=new Aclass();Aclass a1=new Bclass();a.go();a1.go();}以上程序运行结果是:( )A .AclassAclassB. BclassBclassBclassD. BclassAclass19)下列关于Java线程的说法那些是正确的()A. 每一个Java线程可以看成由代码、一个真实的CPU以及数据三部份组成。
2010年秋季学期Java程序设计第一次作业
2010年秋季学期Java程序设计第一次作业一、单项选择题(20分,共 10 题,每小题 2 分)1. 在某类的子类中,下述方法中必须要实现的方法是()A. Public double methoda();B. Static void methoda (double d1) {}C. Public native double methoda();D. Abstract public void methoda();2. 关于下列程序结果正确的是()public class MyClass{static int i;public static void main(String argv[]){System.out.println(i);}}A. Error Variable i may not have been initializedB. NullC. 1D. 03. 下列选项中为java关键字的是()A. DefaultB. RunC. IntegerD. implement4. 下列哪个标识符不是Java中的保留字()A. if;B. then;C. goto;D. case;5. 下列对常量MAX定义正确的是()A. public int MAX =100;B. final int MAX =100;C. final public int MAX =100;D. public final int MAX =100.6. 下列不属于构成元素的是A. 消息的接收者B. 消息的发送者C. 消息所需参数D. 消息所对应的方法名7. 下列程序段执行后t1的结果是:( )int x1 = 9, x2 = 6, t1;t1 = x1 > x2 ? x1 : x2;A. 6B. 9?C. 11D. 38. 为有效实现对某方法体中共享对象的同步,应采用()关键字对该方法进行修饰A. synchronizedB. abstractC. finalD. tatic9. 出下列代码段: if(x>4){System.out.println(“Test 1”);}else if(x>9){System.out.println(“Test 2”);}else{System.out.println(“Test 3”);}哪一个范围的x取值可以产生输出信息:”Test 3” ()A. 小于0B. 5到9之间C. 大于等于10D. 以上均不对10. 如果float f=4.2F;float g=new float(4.2F);double d=new double(4.2);则下列选项正确的是()A. f==gB. f==g.floatValue( )C. d==fD. equals(f)二、判断题(10分,共 10 题,每小题 1 分)1. 使用静态变量必须以类名做前缀.()2. 静态变量使用前必须初始化.()3. 抽象类中至少要包含一个抽象方法.()4. Java字节码文件是与具体平台相关的.()5. 实例变量是用关键字static声明的.()6. 抽象类的抽象方法必须在该类的子类中具体实现.()7. 类变量和实例变量都必须通过类名才能访问8. 所有的JAVA程序都有main方法作为入口9. 同一个类的对象使用不同的内存段,但静态变量共享相同的内存空间.10. 接口是由常量和抽象方法组成的特殊类.三、程序阅读题(36分,共 6 题,每小题 6 分)1. public class Test{public static void leftshift(int i, int j){i<<=j;}public static void main(String args[]){int i = 4, j = 2;leftshift(i, j);System.out.printIn(i);}}2. public class Happy{public static void main(String args[]){int i=4;int j=2;methodA(i,j);System.out.println(i);}static public void methodA(int i,int j){i<<=j;}}3. public class test{public static void main(String[] args){int f1=1, f2=1;for( int i=1; i<5; i++){System.out.print("\t"+f1+"\t"+f2);if(i%2==0)System.out.println("\n");f1=f1+f2; f2=f2+f1;}}}4. public class studentString name;int age;student(){this("default",20);}student(String a1,int a2){name=a1;age=a2;}public static void main(String args[]){student s1=new student();System.out.println("name="++"age="+s1.age); }}5. import javutil.*;public class SwitchDemo{public static void main(String[] args){for(int i = 0; i < 7; i++) switch(i){case 1: System.out.println("case 1");break;case 2: System.out.println("case 2");break;case 3: System.out.println("case 3");break;case 4: System.out.println("case 4");break;case 5: System.out.println("case 5");break;default: System.out.println("default");}}}6. public class test{public static void main(String[] args){double myMatrix[][]={{1.0},{1.8,4.9},{3.6,2.9,0.0}for(int i=0;i<="" }=""system.out.println(?\n?);="" ?+mymatrix[i][j]);=""system.out.print(?="" j="0;j<myMatrix[i].length;j++)" for(int="" {="">四、简答题(20分,共 4 题,每小题 5 分)1. 什么是对象?如何创建一个对象?2. 什么是接口,它的主要作用是什么?3. 简述Java程序的执行过程4. 什么是封装,实现封装有什么好处五、程序设计题(14分,共 1 题,每小题 14 分)编写程序将任意三个变量a,b,c中的值进行交换,使得变量a的值最小,b其次,c的值最大.答案:一、单项选择题(20分,共 10 题,每小题 2 分)1. D2. D3. A4. C5. D6. B7. B8. A9. A 10. B二、判断题(10分,共 10 题,每小题 1 分)1. ×2. √3. ×4. ×5. ×6. √7. ×8. ×9. √ 10. √三、程序阅读题(36分,共 6 题,每小题 6 分)1.参考答案:4解题方案:评分标准:完全一样才得分2.参考答案:4解题方案:评分标准:完全一样才得分3.参考答案:1 123 5 8 13 21解题方案:评分标准:完全一样才得分4.参考答案:name=default age=20解题方案:评分标准:完全一样才得分5.参考答案:default case 1 case 2 case 3 case 4 case 5 default解题方案:评分标准:完全一样才得分,多写不得分6.参考答案:1.0 1.8 4.9 3.62.9 0.0解题方案:评分标准:完全一样才得分,多写不得分四、简答题(20分,共 4 题,每小题 5 分)1.参考答案:对象是对客观事物的抽象,是类的实例.在面向对象的程序设计题中,把问题域中的事物抽象成对象,将事物的静态特征用一组数据描述,将事物的动态特征用一组方法来刻画. 创建对象由以下三步完成: (1) 声明对象.其格式是: 类名对象名表 (2) 建立对象,也就是为对象分配内存.其格式是: 对象名=new 构造方法() 或类名对象名=new构造方法() (3) 初始化对象,即为它的数据成员赋初值.解题方案:评分标准:概念1分,创建方法3分2.参考答案:接口就是方法定义和常量值的集合,从本质上讲,接口是一种特殊的抽象类,这种抽象类中包含常量和方法的定义,而没有变量的和方法的实现. 它的的主要作用包括以下几方面:(1)通过接口可以实现不相关类的相同行为,而不需考虑这些类之间的的层次关系. (2)通过接口可以指明多个类需要实现的方法.(3)通过接口可以了解对象的交互界面,而不需了解对象所对应的类.解题方案:评分标准:接口概念1分,作用1个1分3.参考答案:开发和运行Java程序的基本过程1利用编辑器编写?Java源程序事实上,Java源程序和大家平时使用的文本文件一样,只不过采用的后缀名比较特殊(为.java).所以我们可以采用任何文本编辑工具(如Notepad)编写Java的源程序.当然,我们也可以采用专门的Java开发工具,而且一般专门的开发工具比文本编辑工具更专业和方便,关于这点我们在下节再为大家分析. 2利用编译器将源程序编译成类文件利用前边我们介绍的javac命令,我们可以很容易的做到.但如果该过程中编译器指示任何语法错误,则我们需要根据错误提示重新修改源文件,再进行编译,直至产生正确的class文件.从开发的角度来说,我们的工作基本结束了,获得的class文件可以在本地或通过网络传给任何其它Java虚拟机执行.解题方案:评分标准:意思对就可以4.参考答案:封装是一种信息隐蔽技术,它将类的基本成员(数据和方法)封装在类体中,使用者只能看到被封装对象界面上的信息,而对象内部对使用者是隐藏的. 封装性是面向对象程序设计题语言的主要特征,其核心是通过方法对数据的保护,屏蔽与使用者无关的实现细节,用户无法直接操纵数据,而是通过提供的方法与对象进行交互.封装性实现了模块化和信息的隐藏,有利于程序的移植性和信息的隐蔽.解题方案:评分标准:概念2分,好处2分五、程序设计题(14分,共 1 题,每小题 14 分)0.参考答案:public class Example{public static void main(String args[]){int a=9,b=5,c=7,t;if(a>b){t=a;a=b;b=t;}if(a>c){t=a;a=c;c=t;}if(b>c){t=b;b=c;c=t;}System.out.println("a="+a+",b="+b+",c="+c); }}解题方案:评分标准:结构3分,功能实现4分,语法3分。
Java面向对象程序设计—习题和答案
4.11
1.被继承的类一般称为___________或___________,继承的类称为___________。
2.在继承中发生的强制类型转换为___________。
3.设有下面两个类的定义:
class Person {}
class Student extends Person {
AWT是随早期Java一起发布的GUI工具包,是所有Java版本中都包含的基本GUI工具包,其中不仅提供了基本的控件,并且还提供了丰富的事件处理接口。Swing是继AWT之后Sun推出的又一款GUI工具包。Swing建立在AWT 1.1的,也就是说AWT是Swing大厦的基石
6.适配器是指实现了一个或多个监听接口的类,适配器类为所有的事件处理方法都提供了空实现。实际开发中在编写监听器代码时不再直接实现监听接口,而是继承适配器类并重写需要的事件处理方法,这样就避免了大量编写不必要代码的情况
}
则顺序执行如下语句后输出结果为:()
Father a;
Child b;
A、我是父类B、我是子类
我是子类我是父类
C、我是父类D、我是子类
我是父类我是子类
5.什么时覆盖,它有什么优点
6.this和super的作用是什么
7.什么是动态绑定
答案:
1.超类、父类、子类
2.引用类型转换
3.B
4.A
5.子类其自身的方法中,若与继承过来的方法具有相同的签名,便构成了方法的覆盖(有的资料称之为方法的重写)。覆盖的主要优点是能够定义各子类的特有行为
public static void main(String[] args) {
String s = "C://myFile/a/b/c/d/a.text";
2013秋川大网教《面向对象程序设计》第一、二次作业及答案详解
《面向对象程序设计》第一次作业答案一、单项选择题。
本大题共30个小题,每小题2.0 分,共60.0分。
在每小题给出的选项中,只有一项是符合题目要求的。
1.C++函数的声明和定义可以分开,函数声明不需要(D)。
A.返回类型B.函数名C.参数表D.函数体2.函数的形参是( B )。
A.全局变量B.局部变量C.静态变量D.部变量3.数组名表示的是数组的(C )。
A.类型B.用途C.地址D.长度4.如果短整型的长度是2字节,有一个短整型指针p的值是0xFFED1200,那么p+1的值为(B )。
A.0xFFED1201B.0xFFED1202C.0xFFED1203D.0xFFED12045.private访问属性限制对象的成员可以在( A)中访问。
A.本类的成员函数B.main函数C.父类的成员函数D.子类的成员函数6.如果定义了一个类myclass,则为myclass类对象以成员函数形式重载后++运算符的声明应该为(C )。
A.myclass operator++();B.myclass&operator++();C.myclass operator++( int );D.myclass& operator++( int );7.如果有如下定义:const char* str = "OK";那么,sizeof(str)的值应该是(D)A. 1B. 2C. 3D. 48.父类和子类各自定义一个成员函数,函数名相同,参数表不同,那么(D )。
A.在子类中这两个函数构成重载关系B.子类不会继承父类的这个函数C.子类中的函数会覆盖父类中的函数D.编译时会发生错误9.如果myclass类定义了拷贝构造函数和一个整型参数的构造函数,还重载了赋值运算符,那么语句myclass obj = 100;会(B)。
A.调用拷贝构造函数B.调用整型参数的构造函数C.调用赋值运算符D.引起编译错误10.抽象类指的是(D )。
《面向对象技术(本)》课程第一阶段练习题答案
《面向对象技术(本)》课程第一阶段练习题答案一.填充题答案:1.java, class2.Application, Applet3.编写源程序,编译源程序,解释运行字节码文件4.成员变量,成员方法5.javac MyPro.java, java MyPro6. long var=123456789L;7. false8. 23二.选择题答案: 1. C 2. B 3. D 4. C 5. A6. C7. B8. A9. A 10. A三.简答题答案:1.Java程序设计语言是新一代语言的代表,它强调了面向对象的特性,可以被用来开发范围广泛的软件,它具有支持图形化的用户界面、网络以及数据库连接等复杂的功能,Java 语言的主要的特点有:(1)易于学习Java语言很简单,它的语法非常类似于C++,但是它摒弃了C++许多低级、困难、容易混淆、容易出错或不经常被使用的功能。
(2)高效率的执行方式用Java语言编辑的源程序的执行方法是采用先经过编译器编译、再利用解释器解释的方式来运行的。
它综合了解释性语言与编译语言的众多优点,使其执行效率较以往的程序设计语言有了大幅度的提高。
(3)与平台无关性Java源程序经过编译器编译,会被转换成一种我们将它称之为“字节码(byte_codes)”的目标程序,可以跨平台运行。
(4)分布式分布式主要是指数据分布和操作分布两层意思,数据分布是指数据可以分散在网络中不同的主机上,操作分布是指把一个任务分散在不同的主机上进行处理。
Java从诞生起就与网络联系在一起,它强调网络特性,内置TCP/IP,HTTP,FTP协议类库,便于开发网上应用系统。
(5)安全性Java2平台采用了域管理方式的安全模型,无论是本地代码还是远程代码都可以通过配置的策略,设定可访问的资源域,使得Java成为安全的编程语言。
(6)多线程Java的多线程机制使应用程序中的线程能够并发执行,保证了对共享数据的正确操作,可以分别用不同的线程完成特定的行为,很容易在网络上实现实时交互行为。
Java编程方法第一次作业
信息科学1001/1002/1003班Java编程方法作业练习#1:基本概念,简单类编写上交作业时间:第二周星期五晚上10:00之前• 1.1简述java语言的特点。
语法简单功能强大与C++相类似并去掉了其中不常用、容易出错的地方程序员可以迅速掌握,如:指针、结构和类型等概念。
Java强调面向对象的特性,对软件工程技术支持很强。
分布式与安全性内置众多网络协议便于开发网上应用系统。
Java在语言定义阶段、字节码检查阶段即程序执行三个阶段进行严格的检查和控制可以组织非法代码的入侵组织对内存的非法访问。
平台无关性一次编写到处执行解释编译两种运行方法精心设计编译生成的字节码提高执行效率多线程提供Thead类可以方便的编写多线程程序动态执行动态执行代码,方便程序自动升级具有丰富的API文档和类库• 1.3简述JVM的工作机制Jvm是编译以后的Java程序和硬件之间的接口,相当于虚拟的处理器,包含有算术运算、流控制和数组元素访问等代码;并且具有指令集、寄存器组、类文件格式、栈、垃圾收集堆和内存区等。
• 1.9列出ng中所有的类ClassCircularityErrorArithmeticExceptionArrayIndexOutOfBoundsExceptionArrayStoreExc eptionAssertionErrorBooleanByteCharacterCharacter.SubsetCharacter.UnicodeBlockClass<T>ClassCastExceptionClassCircularityError ClassFormatErrorClassLoaderClassNotFoundExceptionCloneNotSupportedExceptionCompilerDoubleEnum<E extends Enum<E>>EnumConstantNotPresentExceptionErrorExceptionExceptionInInitializerErrorFloatIllegalAccessErrorIllegalAccessExceptionIllegalArgumentExceptionIllegalMonitorStateExceptionIllegalStateExceptionIllegalThreadStateExceptionIncompatibleClassChangeErrorIndexOutOfBoundsExceptionInheritableThreadLocal<T>InstantiationErrorInstantiationExceptionIntegerInternalErrorInterruptedExceptionLinkageErrorLongMathNumberNegativeArraySizeExceptionNoClassDefFoundErrorNoSuchFieldErrorNoSuchFieldExceptionNoSuchMethodErrorNoSuchMethodExceptionNullPointerExceptionNumberFormatExceptionObjectOutOfMemoryErrorPackageProcessProcessBuilderRuntimeRuntimeExceptionRuntimePermissionSecurityExceptionSecurityManagerShortStackOverflowErrorStackTraceElementStrictMathStringStringBufferStringBuilderStringIndexOutOfBoundsExceptionSystemThreadThreadDeathThreadGroupThreadLocal<T>ThrowableTypeNotPresentExceptionUnknownErrorUnsatisfiedLinkErrorUnsupportedClassVersionErrorUnsupportedOperationExceptionVerifyErrorVirtualMachineErrorVoid• 1.14查阅API文档,列出java.util.Random类的常用方法public class Randomextends Objectimplements Serializable此类的实例用于生成伪随机数流。
面向对象程序设计练习题——西安交通大学网络教育学院
2019年春季《面向对象程序设计》在线作业一、单选题(共50 道试题,共100 分。
)V 1. 在创建派生类对象时,构造函数的执行顺序是()。
A. 对象成员构造函数、基类构造函数、派生类本身的构造函数;B. 派生类本身的构造函数、基类构造函数、对象成员构造函数;C. 基类构造函数、派生类本身的构造函数、对象成员构造函数;D. 基类构造函数、对象成员构造函数、派生类本身的构造函数。
正确答案:D 满分:2 分2. 下列对引用的陈述中错误的是()。
A. 每一个引用都是其所引用对象的别名,因此必须初始化;B. 形式上针对引用的操作实际上作用于它所引用的对象;C. 一旦定义了引用,一切针对其所引用对象的操作只能通过该引用间接进行;D. 不需要单独为引用分配存储空间。
正确答案:B 满分:2 分3. 一个类的构造函数为“B(int ax, int bx): a(ax), b(bx) {}”,执行“B x(1,2),y(3,4);x=y;”语句序列后x.a的值为()。
A. 1B. 2C. 3D. 4正确答案:C 满分:2 分4. 下列说法不正确的是( )。
A. 在类中,成员的默认访问特性是私有的。
B. 类封装了数据和操作。
C. 类实质上是一种数据类型。
D. 在类的定义中,必须包含private、publiE. protected三种存取方式对应得部分。
正确答案:D 满分:2 分5. 基类A中有成员函数fn1()、fn2(),在派生类B中重载了成员函数fn1()(即重新定义了fn1()),但没有重载其成员函数fn2()。
如果在派生类B中调用基类A的成员函数fn1()(不是B中重载的数fn1())和fn2(),则正确的方式是()。
A. A::fn1()和fn2();B. fn1()和A::fn2();C. A::fn1()和A::fn2();D. fn1()和fn2();正确答案:A 满分:2 分6. 下面是五条顺序出现的声明语句,非法的初始化语句是( )。
西交《面向对象程序设计》在线作业
西交《面向对象程序设计》在线作业西交《面向对象程序设计》在线作业试卷总分:100 测试时间:--单选题多选题判断题、单选题(共 35 道试题,共 70 分。
)1. 下面关于析构函数特征的描述正确的是()。
A. 一个类中可以定义多个析构函数B. 析构函数名与类名相同C. 析构函数不能指定返回类型D. 析构函数可以有一个或多个参数满分:2 分2. 面向对象程序设计着重于( )的设计。
A. 对象B. 类C. 算法D. 数据满分:2 分3. 下列语句中错误的是()。
A. “int *p=new int (10);”B. “int *p=new int [10];”C. “int *p=new int ;”D. “int *p=new int (10)(0);”满分:2 分4. ( )的功能是对象进行初始化。
B. 数据成员C. 构造函数D. 静态成员函数满分:2 分5. 用关键字()标记的函数被称为虚函数。
A. virtualB. privateC. publicD. protected满分:2 分6. 关于new运算符的描述中错误的是()。
A. 用它创建对象和堆对象数组B. 用它创建对象和堆对象数组时要调用相应的构造函数C. 用它创建对象和堆对象数组时可用运算符delete释放D. 用它创建堆对象数组时可指定初始值满分:2 分7. 假设已经定义好了一个类student,现在要定义类derived,它是从student私有派生的,定义类derived的正确写法是()。
A. “class derived::student prived {// …} ;”B. “class derived:student public {// …} ;”C. “class derived:private student{// …} ;”D. “class derived::student public stuednt {// …} ;”满分:2 分8. 模板是实现类属机制的一种工具,它的功能非常强大,它是元约束类属机制和约束类属机制的集合,允许用户构造类属函数的是()。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
4、 在 Java 中,所有类的公共基类是() 选择一项:
a. java.applet.Applet b. java.awt.Frame c. ng.Object d. ng.Class
题目 12
14、Java 的继承属于哪种类型?() 选择一项:
a. 单继承
d. public void main(String [] args)
题目 7
一个抽象类中能否既定义抽象方法又定义非抽象方法?() 选择一项:
a. 不能,只能含有抽象方法。
b. 能,但子类不能继承抽象方法。
c. 能,子类可以继承上述两种方法。
d. 不能,只能含有其中一种。
题目 8
12、 下列关于 java 对 import 语句规定的叙述中,错误的是() 选择一项:
下列ห้องสมุดไป่ตู้个不是继承的优点?() 选择一项:
a. 可以用一个大的基类替代许多小类。
b. 使得相似的类的行为是一致的。
c. 被不同类共享的代码只需编写一次。
d. 对基类的改进将直接作用于派生类。
题目 2
6、 下列叙述中,错误的是() 选择一项:
a. java 中,方法的重载是指多个方法共享同一名称
b. java 中,构造函数可以有返回值
b. 多继承
c. 类继承
d. 双继承
题目 13
5、 在 Java 中,用 package 语句声明一个包时,该包的层次结构必须是() 选择一项:
a. 与文件结构相同
b. 与文件类型相同
c. 与文件大小相同
d. 与文件目录的层次相同
题目 14
在一个程序中,一个类可以有多少个对象?(C) 选择一项:
a. 每个 main()方法中只能有一个。
a. 无关系
b. 包含关系
c. 继承关系
d. 使用关系
题目 6
2、作为 Java 应用程序入口的 main 方法,其声明格式可以是() 选择一项:
a. public static void Main(String * args)
b. public int main(String [] args)
c. public static void main(String [] args)
c. java 中,用 abstract 修饰的类称为抽象类,它不可实例化
d. java 中,接口是不包含成员变量和方法实现的抽象类
题目 3
9、 “X extends Y”是正确的,如果() 选择一项:
a. 当 X 和 Y 都是类或都是接口时
b. 当且仅当 X 是一个接口,Y 是一个类时
c. X 和 Y 是类或接口的任意组合时
a. 在 java 程序中,import 语句可以没有 b. 在 java 程序中,import 语句可有多个 c. 在 java 程序中,import 语句必须引入在所有类定义之前 d. 在 java 程序中,import 语句必须有一个
题目 9
3、 Java 中,能实现多重继承效果的方式是() 选择一项:
a. 接口 b. 同步 c. 内部类 d. 适配器
题目 10
1、 下列关于构造方法的叙述中,错误的是( ) 选择一项:
a. Java 语言规定构造方法名与类名必须相同 b. Java 语言规定构造方法只能通过 new 自动调用 c. Java 语言规定构造方法没有返回值,但不可用 void 声明 d. Java 语言规定构造方法不可重载
b. 需要多少可以有多少。
c. 每个构造函数的定义只能针对一个对象。
d. 每个自定义的类只能有一个对象。
题目 15
7、 下列叙述中,错误的是() 选择一项:
a. 通过接口可以了解对象的交互界面
b. 接口与类的层次无关
c. 接口与存储空间有关 d. 通过接口说明类所实现的方法
题目 16
10、 下面关于抽象类的声明中正确的是() 选择一项:
d. 当且仅当 X 是一个类,Y 是一个接口时
题目 4
15、在构造函数中使用 super 引用时有什么限制?() 选择一项:
a. 只有一个子类可以用。
b. 必须出现在构造函数的第一条语句。
c. 必须出现在构造函数的最后一条语句。
d. 只能用在父类的构造函数中。
题目 5
13、 若特快订单是一种订单,则特快订单类和订单类的关系对应于面向对象编程(OOP)中的 术语() 选择一项:
a. public class Canine abstract { public abstract void speak(); } b. public abstract class Canine { public void speak(); } c. public abstract class Canine { public void speak() { }} d. public class Canine { public abstract void speak(); }