蓝莓题库

中国大学moocjava程序设计(一)慕课答案大全-k8凯发

欢迎来访!

k8凯发-凯发官网入口数学答案 正文

作者2022-12-05 08:17:22数学答案 78 ℃0 评论
1、走进java世界

1.1 java概述随堂测验

1、java语言属于()种语言?
    a、面向机器的语言
    b、面向对象的语言
    c、面向过程的语言
    d、面向操作系统的语言

2、下列选项中,不属于java语言特点的一项是()。
    a、分布式
    b、安全性
    c、编译执行
    d、面向对象

3、编译一个定义了3个类和10个方法的java源文件后,会产生()个字节码文件?扩展名是()?
    a、13个字节码文件,扩展名为.class
    b、1个字节码文件,扩展名为.class
    c、3个字节码文件,扩展名为.java
    d、3个字节码文件,扩展名为.class

4、java源程序文件和字节码文件的扩展名分别为(_____)和(_______)

5、每个javaapplication程序可以包括许多方法,但是必须有且只能有一个(_________)方法,统一格式为(_________________________________________),它是程序执行的入口。

1.2 第一个java程序随堂测验

1、java代码区分大小写?

2、java属于编译型语言吗?

3、java虚拟机是跨平台的吗?

4、java能做到一次编写,随处运行时因为jvm。

5、java实现可移植性靠的是____?

第一章 java开发环境小测验

1、java源文件的后缀名是
    a、.java
    b、.class
    c、.txt
    d、.exe

2、字节码文件的后缀名是
    a、.java
    b、.class
    c、.exe
    d、.txt

3、windows操作系统下,java开发环境编译java源文件的命令是
    a、java
    b、javax
    c、javac
    d、jdk

4、windows操作系统下,java开发环境运行字节码文件的命令是
    a、javac
    b、jvm
    c、java
    d、javax

5、windows操作系统下,如果希望在任意路径下都能使用java开发环境的编译和运行等命令,需要配置的环境变量是
    a、java_home
    b、path
    c、classpath
    d、bin

6、为了遵循归一原则,以及方便引用,如果需要修改jdk的安装目录时,修改一处,避免每次引入较长jdk目录时,需要配置的环境变量是什么?有时,根据第三方软件引用规范,也会配置该变量,例如tomcat。
    a、classpath
    b、java_home
    c、path
    d、jdk_path

7、你编译一个java程序---a.java, 会得到一个a.class的类文件,你在当前目录下执行java a, 将会得到相应的结果. 现在, 你把a.class移到别的目录下(例如:"e:\"), 执行java a, 将会有noclassdeffinderror的异常,原因就是找不到.class文件,可以通过配置哪个环境变量解决该问题。
    a、java_home
    b、path
    c、classpath
    d、bin

8、public class welcome { public static void main(string[] args) { system.out.println(“ welcome to java"); } } 上述代码保存在文件welcome.java中,请问执行javac welcome.java的结果是?
    a、在控制台输出welcome to java
    b、在welcome.java文件所在目录下,生成welcome.class文件
    c、编译错误,类名与文件名不一致
    d、运行错误,找不到主类

9、class welcome { public void main(string[] args) { system.out.println(“ welcome to java"); } } 上述代码保存在文件welcome.java中,请问执行javac welcome.java的结果是?如果编译正常java welcome的结果是什么
    a、执行javac welcome.java正常,并生成welcome.class 执行java welcome在控制台上输出welcome to java
    b、执行javac welcome.java编译错误,类名与文件名不一致
    c、执行javac welcome.java编译错误,提示main方法写法错误,main方法是static的
    d、执行javac welcome.java正常,并生成welcome.class 执行java welcome,运行时错误,显示没有主方法main

10、自定义一个名为mobile的类,此时想要编译这个类,需要使用下列哪个命令 ()
    a、java mobile.java
    b、java mobile.class
    c、javac mobile.java
    d、javac mobile.java

11、对java ide的描述正确的是()
    a、java语言的组成部分
    b、java应用程序开发工具
    c、运行java应用程序的必备工具
    d、测试java应用程序的必备工具

12、下列类名定义正确的是()
    a、bigdata
    b、bigdata
    c、196bigdata
    d、bigdata_196

13、下列选项中哪些是java的开发平台
    a、java card
    b、java se
    c、java ee
    d、java me

14、安装jdk后必须配置环境变量,不然无法进行java应用程序的开发

15、运行javaapplication应用程序,我们只需要安装jre即可

16、jdk、jre、jvm分别代表______、______、______

2、数据类型与变量

2.1 标识符与关键字随堂测验

1、下列()是合法的标识符?
    a、12class
    b、void
    c、-5
    d、_blank

2、下列()不是java中的保留字?
    a、if
    b、sizeof
    c、private
    d、null

3、下列()不是合法的标识符?
    a、$million
    b、$_million
    c、2$_million
    d、$2_million

4、下列java语句中,不正确的一项是()。
    a、int $e,a,b=10;
    b、char c,d=‘a';
    c、float e=0.0d;
    d、double c=0.0f;

5、以下的变量定义语句中,合法的是()
    a、float_*5=123.456f;
    b、byte$_b1=12345;
    c、int_long_=123456l;
    d、doubled=double.max_value;

2.2 常量与变量随堂测验

1、设有类型定义shorti=32;longj=64;下面赋值语句中不正确的一个是()
    a、j=i;
    b、i=j;
    c、i=(short)j;
    d、j=(long)i;

2、关于java的命名规则以下错误的是()。
    a、长度无限制
    b、区分大小写
    c、不能是java中的关键字
    d、可以以数字打头

3、以下是java中保留关键字的是()?
    a、do
    b、goto
    c、double
    d、final

4、boolean类型变量值只能是true或false。

5、在java语言中,布尔类型的值不能与其他类型的值相互转换。

2.3 类型转换随堂测验

1、在java中以下标识符合法的是()?
    a、5aa
    b、aa5
    c、*aa
    d、2#dd

2、java中以下是字符常量的是()?
    a、a
    b、'a'
    c、'aa'
    d、3

3、java中以下是字符串常量的是()?
    a、'aa'
    b、"aa"
    c、aa
    d、'a'

4、java中定义只读变量时需要将标识符全部大写,两个单词间用下划线“_”隔开。

5、boolean类型数据可以转化成其他类型

2.4 运算符与表达式随堂测验

1、下列表达式1 2 "aa" 3的值是()。
    a、"12aa3"
    b、"3aa3"
    c、"12aa"
    d、"aa3"

2、已知y=2,z=3,n=4,则经过n=n -y*z/n运算后n的值为()。
    a、3
    b、-1
    c、-12
    d、-3

3、已知a=2,b=3,则表达式a%b*4%b的值为()。
    a、2
    b、1
    c、-1
    d、-2

4、表达式(12==0)&&(1/0<1)的值为()。
    a、true
    b、false
    c、0
    d、运行时抛出异常

5、下列关于运算符优先级的说法中,不正确的一个是()
    a、运算符按照优先级顺序表进行运算
    b、同一优先级的运算符在表达式中都是按照从左到右的顺序进行运算的
    c、同一优先级的运算符在表达式中都是按照从右到左的顺序进行运算的
    d、括号可以改变运算的优先次序

第二章 数据类型与变量单元测验

1、下列属于合法的java标识符是
    a、_cat
    b、5books
    c、 static
    d、-3.14159

2、顺序执行下列程序语句后,则b的值是 string a="hello"; string b=a.substring(0,2); //截取从0开始的两个字符组成字符串
    a、hello
    b、hello
    c、he
    d、null

3、在java中,表示换行符的转义字符是
    a、\n
    b、\f
    c、'n'
    d、\dd

4、能够支持javadoc命令的注释语句是
    a、/**...//
    b、/*...*/
    c、//
    d、/**...*/

5、下列的哪个赋值语句是不正确的?
    a、float f = 11.1;
    b、double d = 5.3e12;
    c、float d = 3.14f ;
    d、double f=11.1e10f;

6、下列的哪个赋值语句是正确的?
    a、char a=12;
    b、int a=12.0;
    c、int a=12.0f;
    d、int a=(int)12.0;

7、下列程序段执行后的输出结果为 int x=3; inty=10; system.out.println(y%x);
    a、0
    b、1
    c、2
    d、3

8、假定x和y为double型,则表达式x=2,y=x 3/2的值是
    a、3.5
    b、3
    c、2.0
    d、3.0

9、有如下一段代码: 1) public class returnit{ 2) returntype methoda(byte x, double y){ 3) return x/y*2; 4) } 5) } 在第2行中,方法methoda的有效返回类型returntype应该是?
    a、int
    b、byte
    c、short
    d、double

10、下面的代码段中,执行之后i 和j 的值是什么? int i = 1; int j; j = i ;
    a、1,1
    b、1,2
    c、2,1
    d、2,2

第二章 变量与表达式单元测验

1、下列运算符合法的是
    a、&&
    b、<>
    c、if
    d、:=

2、下列语句序列执行后,x 的值是()。 int a=3, b=4, x=5; if( a    a、5
    b、3
    c、4
    d、6

3、下列代码的执行结果是 1)public class beirun{ 2) public static void main(string args[]){ 3) system.out.println(5/2); 4) } 5)}
    a、2.5
    b、2.0
    c、2.50
    d、2

4、下列代码的执行结果是( ) 1)public class beirun{ 2) public static void main(string args[]){ 3) system.out.println(100%3); 4) system.out.println(100%3.0); 5) } 6)}
    a、1和1
    b、1和1.0
    c、1.0和1
    d、1.0和1.0

5、以下选项中正确的有
    a、int i = 32;
    b、float f = 45.32;
    c、double d=3.2;
    d、double d=9.21f;

6、下列运算符中,( )是布尔逻辑运算符
    a、
    b、<<
    c、||
    d、&

7、若x = 5,y = 10,则 x > y && x == y --的逻辑值为 。

8、若x = 5,y = 10,执行 x > y && x == y --后,x= 。

9、若x = 5,y = 10,执行 x > y & x == y --后,y= 。

10、设x = 2 ,则表达式 ( x )* 3 的值是______

3、流程控制

3.1 控制结构概述随堂测验

1、以下不属于三种基本结构的是?
    a、顺序
    b、递归
    c、分支
    d、循环

3.2 选择结构随堂测验

1、c语言对嵌套if语句的规定是:else总是与。
    a、其之前最近的if配对
    b、第一个if配对
    c、缩进位置相同的if配对
    d、其之前最近的且尚未配对的if配对

2、能正确表示“当x的取值在[1,10]和[200,210]范围内为真,否则为假”的表达式是。
    a、(x>=1) && (x<=10) && (x>=200) && (x<=210)
    b、(x>=1) | | (x<=10) | | (x>=200) | | (x<=210)
    c、(x>=1) && (x<=10) | | (x>=200) && (x<=210)
    d、(x>=1) | | (x<=10) && (x>=200) | | (x<=210)

3、若有x=1,y=2,z=3,则表达式(x
3.3 多分支结构随堂测验

1、switch中表达式的类型只能是整数。

2、break关键字只能中断switch语句。

3、case后面的选择值可以是变量。

4、default语句必须写在最后

3.4 循环结构随堂测验

1、有四种循环控制结构。

2、break和continue语句都是结束循环的语句。

3、判断输出结果 public class demo { public static void main(string[] args) { for(int x=1;x<=3;x ){ if(x==2){ continue; } system.out.print(x); } } }

4、编程解决 1 …… 10000的和是____

3.5 跳转控制随堂测验

1、跳转语句包括________、________、________。

2、continue语句必须使用于________语句中。

3、在switch语句中,完成一个case语句块后,若没有通过break语句跳出switch语句, 则会继续执行后面的________语句块。

4、与c 语言不同,java语言不通过________语句实现跳转。

第三章 流程控制程序阅读题

1、请答出下列程序的输出结果是:public class test { public static void main(string[] args) { int x=2; switch(x){ case 1: system.out.println("case 1"); case 2: system.out.println("case 2"); case 3: system.out.println("case 3");break; case 4: system.out.println("case 4"); default: system.out.println("default"); } } }

2、下面程序的输出结果是什么?public static void main(string args[]){ int a=10; int b=20; if(a>b) system.out.println("not equal"); else system.out.println("equal"); }

3、下面程序的输出结果是什么?class happy{ public static void main(string args[]){ int i =1; int j =10; do{ if(i
4、下面代码的输出结果是什么?class foo { public static void main(string args[]){ int x=4,j=0; switch(x){ case 1:j ; case 2:j ; case 3:j ; case 4:j ; case 5:j ; default :j ; } system.out.println(j); } }

5、阅读程序,分析程序运行流程。 [matrix.java]class matrix { public static void main( string[] args ){ for( int i=1; i<=3; i ) { for ( int j=1; j<=5; j ) system.out.print(i*j "\t"); //内循环体 system.out.println(); //换行 } } }

6、写出下面程序的运行结果,了解while语句的使用。public class useli3 { public static void main(string args[ ]){ int n = 9; while(n>6){ n--; system.out.print(n); } } }

7、写出下面程序的运行结果,了解do-while语句的使用。public class useli4 { public static void main(string args[ ]){ int x = 23; do{ system.out.print(x--); }while(x>20); } }

8、写出程序的运行结果,了解for语句的使用。public class useli5 { public static void main(string args[ ]){ int i,sum = 0; for (i=1;i<=3;i ) sum = i; system.out.println("sum = " sum); } }

9、下面程序段的输出结果是多少。 int i = 0,sum = 1; do{ sum = i ; }while(i<6); system.out.println("sum = " sum);

10、标有/**/的语句的执行次数是多少。int y = 0,i; for(i=0;i<20;i ){ if(i%2==0) continue; y =i; /* 考虑本条语句的执行次数 */ }

11、下面的两个程序段功能相同吗? //回答是或者否 (1) int i = 1,sum = 0; for(;i<=100;i ){ sum =i; } //(1)sum=? (2) int i = 1;sum = 0; for(; ; ){ sum =i; if (i==100)break; i ; } //(2)sum=? 一共需要回答三个问题,一行一个问题的答案

12、以下程序的输出结果是什么?public class useli6 { public static void main(string args[ ]){ int a,b; for (a=1,b=1;a<=100;a ){ if(b>=20) break; if(b%3==1){ b = 3; continue; } b -= 5; } system.out.println("a = " a); } }

13、以下程序的输出结果是什么? public class useli7 { public static void main(string args[ ]){ int i; for (i=1;i<=5;i ){ if(i%2==0) system.out.println("*"); else continue; system.out.println("#"); } system.out.println("$\n"); } }

14、执行下面的程序段后,b的值为多少? int x = 35; char z = 'a'; boolean b; b = ((x<15)&&(z<'z')); system.out.println(b);

15、运行结果是: public class test3 { public static void main(string[] args) { int i; for (i = 3; i <= 20; i ) { if ((i % 2) == 0) system.out.print(i " "); } } }

16、运行结果是: public class test4 { public static void main(string[] args) { int i,sum=0; for (i = 3; i <= 20; i ) if ((i % 2) == 0) sum=sum i; system.out.print("i=" i ",sum=" sum); } }

4、数组

4.1 一维数组随堂测验

1、定义了一维int型数组a[10]后,下面错误的引用是( )
    a、a. a[0]=1;
    b、b. a[10]=2;
    c、c. a[0]=5*2;
    d、d. a[1]=a[2]*a[0];

2、数组的元素通过(________)来访问,数组array的长度为(________)

3、数组创建后其大小(________)改变。

4、jvm将数组存储在(________)(堆或栈)中。

5、数组对象的默认值是_____.

4.2 二维数组随堂测验

1、下面的二维数组初始化语句中,正确的是( )
    a、a. float b[2][2]={0.1,0.2,0.3,0.4};
    b、b. int a[][]={{1,2},{3,4}};
    c、c. int a[2][]= {{1,2},{3,4}};
    d、d. float a[2][2]=;

2、定义了int型二维数组a[6][7]后,数组元素a[3][4]前的数组元素个数为( )
    a、a. 24
    b、b. 25
    c、c. 18
    d、d. 17

3、下面程序的运行结果是____ public static void main(string [] args) { int a[][]={{1,2,3},{4,5,6}}; system.out.println(a[1][1]); }
    a、a. 3
    b、b. 4
    c、c. 5
    d、d. 6

4、使用arraycopy()方法将数组a复制到b正确的是( )
    a、a. arraycopy(a,0,b,0,a.length)
    b、b. arraycopy(a,0,b,0,b.length)
    c、c.. arraycopy(b,0,a,0,a.length)
    d、d. arraycopy(a,1,b,1,a.length)

5、引用数组元素时, 数组的下标类型可以是( )
    a、a.整型常量
    b、b.整型变量
    c、c.整型表达式
    d、d.以上均可

5、方法

5.1 方法定义随堂测验

1、下面关于方法的说法,不正确的是( )
    a、a.java中的构造方法名必须和类名相同
    b、b.方法体是对方法的实现,包括变量声明和合法语句
    c、c.如果一个类定义了构造方法,也可以用该类的默认构造方法
    d、d.类的私有方法不能被其他类直接访问

2、下列哪种类成员修饰符修饰的变量只能在本类中被访问?( )
    a、(a)protected
    b、(b)public
    c、(c)default
    d、(d)private

3、有一个类b,下面为其构造方法的声明,正确的是( )
    a、(a)void b(int x) {}
    b、(b)b(int x) {}
    c、(c)b(int x) {}
    d、(d)void b(int x) {}

4、可以在一个方法里定义另一个方法.

5.2 方法调用随堂测验

1、4、请先阅读下面的代码d public class test { public test(){ system.out.println("构造方法一被调用了"); } public test(int x){ this(); system.out.println("构造方法二被调用了"); } public test(boolean b){ this(1); system.out.println("构造方法三被调用了"); } public static void main(string[] args) { test test = new test(true); } } 上面程序的运行结果为下列哪一项?
    a、a、构造方法一被调用了
    b、b、构造方法二被调用了
    c、c、构造方法三被调用了
    d、d、以上三个选项之和

2、1、写出以下程序的输出内容。 public class test { public static void changevalue(int value){ value = 0; } public static void main(string[] args) { int value = 2010; changevalue(value); system.out.println(value); } }

3、2、 写出以下程序的输出内容 public class test { public static void changestring(string str){ str = str "bbb"; } public static void main(string[] args) { string str = "aaa"; changestring(str); system.out.println(str); } }

5.3 方法重载随堂测验

1、区分类中重载方法的依据是( )
    a、a.形参列表的类型和顺序
    b、b.不同的形参名称
    c、c.返回值的类型不同
    d、d.访问权限不同

2、以下是"public static void test(int x, int y)"的方法重载( )
    a、public static void test(int x)
    b、public static void test(int x, int y,int z)
    c、public static void test(int y, int x)
    d、public static void test(int x, int y)

3、方法重载时, 返回值类型相同

4、方法的重载与返回值类型有关

5.4 局部变量与方法举例随堂测验

1、局部变量只能在它所在的模块被访问

2、在方法体中, 局部变量使用前必须要初始化

3、请简述局部变量的概念和在代码中的位置

4、请简述局部变量的作用域

第五章 方法测验

1、public class sum{ public static void main(string [] args){ int j=10; system.out.println("j is : " j); calculate(j); system.out.println("at last, j is : " j); } static void calculate (int j){ for (int i = 0;i<10;i ) j ; system.out.println("j in calculate() is: " j); } } 输出结果为: j is : (1) j in calculate() is : (2) at last j is : (3)

2、下面程序的运行结果是 。 public class test2 { public string add(string a) { a = a “world”; return a; } public static void main(string[] args) { test2 t = new test2(); string s = “hello”; system.out.print(t.add(s)); } }

3、下列程序的输出结果为: class generalfunction{ public static int add(int x,int y){ return x y; } //静态方法 } public class staticfuntest{ public static void main(string[] args){ int c=generalfunction.add(7, 8); system.out.print("7 8 = " c “, “); generalfunction fun=new generalfunction(); int d= fun.add(5, 8); system.out.println("5 8 = " d); } }

4、下列程序的输出结果为 class box{ int length,width,height; public void setinfo(int l,int w,int h){ length = l; width = w; height = h; } public int volumn(){ return length*width*height; } public int area(){ return (length*width length*height width*height) * 2; } public string tostring(){ return "length:" length " width:" width " height:" height " volumn: " volumn() " area:" area(); } } public class boxtest { public static void main(string[] args) { box b = new box(); b.setinfo(5,2,4); system.out.println(b.tostring()); } }

5、下列程序的输出结果为: public class example { string str=new string("good"); char[]ch={'a','b','c'}; public static void main(string args[]) { example ex=new example(); ex.change(ex.str,ex.ch); system.out.print(ex.str " and "); system.out.print(ex.ch); } public void change(string str,char ch[]) { str="test ok"; ch[0]='g'; } }

6、下列程序的输出结果为: //arrayparam1.java 以数组为参数的方法调用 public class arrayparam1{ public static void main(string args[ ]){ int a[ ] = {8, 3, 7, 88, 9, 23}; leastnumb minnumber=new leastnumb(); minnumber.least(a); } } class leastnumb{ public void least(int array[ ]){ int temp = array[0]; for(int i=0;iarray[i]) temp = array[i]; } system.out.println("最小的数为: " temp); } }

7、下列程序的输出结果为: class a { static int y=3; void showy( ){system.out.println("y=" y);} } class testa { public static void main(string aaa[]) { a a1=new a( ); a.y =1; a1.y ; a1.showy( ); } }

8、运行结果是: public class test9 { static boolean foo(char c) { system.out.print(c); return true; } public static void main( string[] argv ) { int i =0; for ( foo('b'); foo('a')&&(i<2); foo('c')){ i ; foo('d'); } } }

9、方法重载是指 必须 相同, 不能相同, 不考虑 (不同的空之间使用“回车”分割)

10、一个类的方法有三类,分别是 方法, 方法, 方法 (不同的空之间使用“回车”分割)

6、面向对象

6.1类与对象随堂测验

1、简述类与对象的关系及各自的概念

2、写出一个类people,并由该类做基类派生出子类employee和teacher。其中people 类具有name、age两个保护成员变量,分别为string类型、整型,且具有公有的getage成员函数,用于返回age变量的值。employee类具有保护成员变量empno,teacher类有teano和zc成员变量

3、(1)创建rectangle类,添加属性width、height; (2)在rectangle类中添加两种方法计算矩形的周长和面积; (3)编程利用rectangle输出一个矩形的周长和面积

6.2构造方法随堂测验

1、在没有为类定义任何构造方法时, java编译器会自动创建一个( )的构造方法
    a、a.不带参数
    b、b.带一个参数
    c、c.带多个参数
    d、d.默认参数

2、对于构造方法, 下列正确的是( )
    a、a.构造方法名必须和类名一样
    b、b.构造方法必须用void声明返回值类型
    c、c.构造方法可以被程序调用
    d、d.若编程人员没有在类中声明构造方法, 则程序会报错

3、构造方法不能够重载

4、构造方法在什么时候调用?

6.3 this关键字随堂测验

1、this关键字可以指代当前对象

2、编写一个person类, 实现比较两个person的年龄是否相同的方法

3、this关键字的作用, 写两项即可

6.4对象的存储随堂测验

1、简述java的存储结构

2、创建对象时, 内存结构的过程

3、jvm的结构

6.5包随堂测验

1、1、 下列说法正确的是( )
    a、a. java中包的主要作用是实现跨平台功能
    b、b. package语句只能放在import语句后面
    c、c. 包(package)由一组类(class)和界面(interface)组成
    d、d. 可以用#include关键词来标明来自其它包中的类

2、包的命名规则?

3、包的作用是什么?

4、什么是包?如何创建包?如何引用包?

6.6访问权限随堂测验

1、类有几种访问控制权限?

2、变量和方法有几种访问权限?

3、不同访问权限的可访问范围

6.7static关键字随堂测验

1、可以在static中访问非static变量

2、static关键字是什么意思?

3、java中能否覆盖static方法?

6.8继承随堂测验

1、现有两个类a、b,以下描述中表示b继承自a的是?
    a、a.class a extends b
    b、b.class b implements a
    c、c.classa implements b
    d、d.classb extends a

2、下列叙述中错误的是?
    a、a.一个子类可有多个父类
    b、b.父类派生出子类
    c、c.子类继承父类
    d、d.子类只能有一个父类

3、下列叙述中,正确的是?
    a、a.子类继承父类的所有属性和方法
    b、b.子类可以继承父类的私有的属性和方法
    c、c.子类可以继承父类的公有的属性和方法
    d、d.创建子类对象时,父类的构造方法都要被执行

4、简述继承的概念

6.9super关键字随堂测验

1、1.以下说法错误的是()
    a、a) super.方法()可以调用父类的所有非私有方法
    b、b) super()可以调用父类的所有非私有构造函数
    c、c) super.属性可以调用父类的所有非私有属性
    d、d) this和super关键字可以出现在同一个构造函数中

2、4、下列选项中关于java中super关键字的说法错误的是( )
    a、a) super关键字是在子类对象内部指代其父类对象的引用
    b、b) super关键字不仅可以指代子类的直接父类,还可以指代父类的父类
    c、c) 子类可以通过super关键字调用父类的方法
    d、d) 子类可以通过super关键字调用父类的属性

3、简述super关键字的概念

4、怎样调用父类的构造函数?调用语句放在子构造函数的第几行?

6.10继承关系下的访问控制权限随堂测验

1、1、下列关于继承性的描述中,错误的是( )
    a、a.一个类可以同时生成多个子类
    b、b.子类继承了父类中除私有的成员以外的其他成员
    c、c.java支持单重继承和多重继承
    d、d.java通过接口可使子类使用多个父类的成员

2、2、下面叙述中,错误的是( )
    a、a.子类继承父类
    b、b.子类能替代父类
    c、c.父类包含子类
    d、d.父类不能替代子类

3、a类继承了b类,如果a、b类中有相同的方法,执行那个?如果有相同名称的成员变量,当输出b类中和a类相同的成员变量时,值为a的还是b的?

4、如果a类继承了b类,如何在b类中获取a类中和b类同名的成员变量?

6.11方法覆盖随堂测验

1、4、以下描述正确的有()
    a、a) 方法的重写应用在一个类的内部
    b、b) 方法的重载与返回值类型无关
    c、c) 构造方法不能重载
    d、d) 构造方法可以重写

2、3、下面哪些方法置于指定位置会导致编译错误 public class j_super { public float getnum(){ return 3.0f; } public class j_sub extends j_super{ //指定位置 } }
    a、a public float getnum(){return 4.0f;}
    b、b public void getnum(){}
    c、c public void getnum(double d){}
    d、d public double getnum(float d){return 4.0d;}

3、简述方法覆盖的概念

4、方法的覆盖和方法的重载的区别

6.12final关键字随堂测验

1、关键字( )表明一个对象或变量在初始化后不能修改
    a、a.extends
    b、b.final
    c、c.this
    d、d.finalize

2、3、什么样的方法不能被重写
    a、a.私有(private)方法
    b、b.最终(final)方法
    c、c.受保护(protected)的方法
    d、d.以上都不对

3、被final修饰的方法不能被(_____),被final修饰的变量不能被(____) ,被final修饰的类不能被(____)

6.13 对象转型随堂测验

1、简述对象转型的概念:

2、编写一个对象转型的程序

6.14object类随堂测验

1、2、以下()不是object类的方法
    a、a) clone()
    b、b) finalize()
    c、c) tostring()
    d、d) hasnext()

2、简述object类都实现了哪些方法?

3、object类是所有对象的(_______)

6.15多态随堂测验

1、设有如下代码: class example { 2. string str; 3. example(){ 4. str= "example"; 5. } 6. example(string s) { 7. str= s; 8. } 9. } 10.class demo extends example{ 11.} 12.public class test { 13. public static void main(string [] args) { 14. exampleex = new example("good"); 15. demo d = new demo("good"); 16. } 17. } 以下哪行将导致错误?( )
    a、a.第3行
    b、b.第6行
    c、c.第10行
    d、d.第15行

2、设有文件derived.java中代码如下: public class base extends object { string objtype; public base() { objtype = "i am a base type"; } } public class derived extends base { public derived() { objtype = "i am a derived type"; } public static void main(string args[]) { derived d = newderived(); } } 编译程序将出现何问题?()
    a、a.将创建 base.class 和 derived.class 两个文件
    b、b.编译程序将指示第1行有问题
    c、c.编译程序将在第7行出错
    d、d.以上都不对

3、已知类关系如下: class employee{} class manager extends employee{} class director extends employee{} 则下列语句正确的是:( )
    a、a.employee e=new manager();
    b、b.director d=new manager();
    c、c.director d =new employee ();
    d、d.manager m=new director ();

4、简述多态的概念

6.16 抽象类随堂测验

1、下面程序定义了一个类,关于该类说法正确的是( ) abstract class abstractclass{ …… }
    a、a. 该类能调用new abstractclass(),方法实例化为一个对象
    b、b. 该类不能被继承
    c、c. 该类的方法都不能被重载
    d、d. 以上说法都不对

2、下列关于抽象类的描述中,错误的是( )
    a、a.抽象类是用修饰符abstract说明的
    b、b.抽象类是不可以定义对象的
    c、c.抽象类是不可以有构造方法的
    d、d.抽象类通常要有它的子类

3、简述abstract(抽象的)特点

6.17接口随堂测验

1、下列有关抽象类与接口的叙述中正确的是哪一个
    a、a.抽象类中必须有抽象方法,接口中也必须有抽象方法
    b、b.抽象类中可以有非抽象方法,接口中也可以有非抽象方法
    c、c.含有抽象方法的类必须是抽象类,接口中的方法必须是抽象方法
    d、d.抽象类中的变量定义时必须初始化,而接口中不是

2、关于接口的定义和实现,以下描述正确的是
    a、a.接口定义的方法只有定义没有实现
    b、b.接口定义中的变量都必须写明final和static
    c、c.如果一个接口由多个类来实现,则这些类在实现该接口中的方法时采用统一的代码
    d、d.如果一个类实现接口,则必须实现该接口中的所有方法,但方法未必申明为public

3、下面关于接口的描述中,错误的是( )
    a、a.一个类只允许继承一个接口
    b、b.定义接口使用的关键字是interface
    c、c.在继承接口的类中通常要给出接口中定义的抽象方法的具体实现
    d、d.接口实际上是由常量和抽象方法构成的特殊类

4、以下哪个接口的定义是正确的?( )
    a、a)interface b { void print() { } ;}
    b、b) abstract interface b {void print() ;}
    c、c)//a1、a2为已定义的接口 abstract interface b extends a1,a2 {abstract void print(){ };}
    d、d)interface b { void print();}

第六章测验一 类的基础

1、以下( )是专门用于创建对象的关键字。
    a、new
    b、double
    c、class
    d、int

2、用来导入已定义好的类或包的语句是( )
    a、main
    b、import
    c、public class
    d、class

3、类test1定义如下 public class test1{ public float amethod(float a,float b){ } ( ) } 将以下哪种方法插入( )是不合法的。( )
    a、public float amethod(float a, float b,float c){ }
    b、public float amethod(float c,float d){ }
    c、public int amethod(int a, int b){ }
    d、public int amethod(int a,int b,int c){ }

4、java中所有的类都是通过直接或间接地继承( )类得到的。
    a、任意类
    b、java.lang.class
    c、java.lang.object
    d、以上答案都不对

5、给出下面代码段   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、3
    b、4
    c、5
    d、10

6、对于下列代码、   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、2
    b、3
    c、6
    d、7

7、下列哪个 不是 面向对象的三大特性之一( )
    a、封装性
    b、继承性
    c、多态性
    d、重载

8、可以修饰类的访问控制权限有哪些? 1、内部类有 种修饰方法,分别是 (答案之间用逗号分隔) 2、外部类有 种修饰方法,分别是 (答案之间用逗号分隔) 两小题的答案换行回答

9、实现类的继承关系的关键字是 ,java 的继承是 继承(单/多) 答案之间用逗号分隔

10、方法复写可以使用一个annotation进行校验,这个annotation的名字是@

8、字符串

8.1 字符串定义随堂测验

1、字符串是基本数据类型

2、"" 是字符串

8.2 字符串的不可变性随堂测验

1、字符串是可变的

8.3 string类的常用方法随堂测验

1、字符串截取用哪个方法?直接写出方法名就行

2、字符串拆分用哪个方法

8.4 可变字符串随堂测验

1、对于下列代码: string str1="java"; string str2="java"; string str3=new string("java"); stringbuffer str4=new stringbuffer("java"); 以下表达式的值为true的是( )
    a、a) str1= =str2;
    b、b) str1= =str4;
    c、c) str2= =str3;
    d、d) str3= =str4;

9、常用类介绍

9.2、date与calendar类随堂测验

1、java.util.date获取时间戳的方法是?
    a、getdatetime
    b、getlong
    c、gettime
    d、getdate

10、集合框架

词频统计

1、data.txt文件由一些英文单词组成,单词之间用“空格”隔开。请对已有文本文件data.txt完成以下词频统计任务: ① 统计各个单词出现的次数。(50分) ② 对结果进行排序,具体排序规则如下。(50分) l 按照次数进行降序 l 如果次数相同,按照单词的字典顺序排序 其中,data.txt内容格式如下: java spring struts hibernate spring trainning java struts spring hibernate java bigdata 统计结果输出格式如下: java 3 spring 3 hibernate 2 struts 2 bigdata 1

2020-2021-2《java程序设计》期末模拟

2020-2021-2学期《java程序设计》期末模拟试卷

1、给定如下代码,哪个表达是错误的? class c1 {} class c2 extends c1 { } class c3 extends c2 { } class c4 extends c1 {} c1 c1 = new c1(); c2 c2 = new c2(); c3 c3 = new c3(); c4 c4 = new c4();
    a、c1是c1的实例
    b、c2是c1的实例
    c、c3是c1的实例
    d、c4是c2的实例
    e、c4是c1的实例

2、下列程序代码运行结果是:( )。stringbuffer buffer=new stringbuffer(); system.out.println(buffer.length() " " buffer.capacity());
    a、0 0
    b、0 16
    c、16 16
    d、16 0

3、下列关于file类的叙述中,错误的是( )。
    a、file类是java.io包中的一个类
    b、file类描述的是文件或目录
    c、file类能直接读写文件内容
    d、file类能操作文件或目录的属性

4、下列程序代码运行结果是:( )。import java.util.*; public class test { public int hashcode() { return 1; } public boolean equals(object b) { return true; } public static void main(string args[]) { set set = new hashset(); set.add(new test()); set.add(new string("abc")); set.add(new test()); system.out.println(set.size()); } }
    a、1
    b、2
    c、3
    d、4

5、有如下代码: class a { double f(double x, double y) { return x * y; } } class b extends a { double f(double x, double y) { return x y; } } 在子b类中对父类a类的方法f进行了( )。
    a、重写
    b、重载
    c、扩展
    d、扩充

6、下面关于类的封装性的描述中,错误的是( )。
    a、封装体包含属性和行为
    b、被封装的某些信息在外不可见
    c、封装提高了可重用性
    d、封装体中的属性和行为的访问权限相同

7、以下代码输出( ) public static void main(string[] args) { string[] tokens = "welcome to java".split("o"); for (int i = 0; i < tokens.length; i ) { system.out.print(tokens[i] " "); } }
    a、welcome to java
    b、welc me to java
    c、welc me t java
    d、welcome t java

8、分析如下代码: public class test { private int t; public static void main(string[] args) { int x; system.out.println(t); } }
    a、变量t没有初始化,所以会引起错误。
    b、变量t是私有的,因此不能在main方法中访问。
    c、t是非静态的,不能在静态的main方法中引用。
    d、变量x没有初始化,所以会引起错误。

9、要想在集合中保存没有重复的元素,并且按照一定的顺序排列,可以使用以下哪个集合?
    a、linkedlist
    b、arraylist
    c、hashset
    d、treeset

10、使用iterator时,判断是否存在下一个元素,可以使用以下哪个方法?
    a、next()
    b、hash()
    c、hasprevious()
    d、hasnext()

11、运行类c的输出是( )。class a { public a() { system.out.println("the default constructor of a is invoked"); } } class b extends a { public b() { system.out.println("the default constructor of b is invoked"); } } public class c { public static void main(string[] args) { b b = new b(); } }
    a、没有输出。
    b、输出 "the default constructor of b is invoked"
    c、输出"the default constructor of b is invoked",然后是"the default constructor of a is invoked"
    d、输出"the default constructor of a is invoked",然后是"the default constructor of b is invoked"

12、类中的一个成员方法被下面哪个修饰符修饰时,该方法只能在本类被访问 ( )。
    a、public
    b、protected
    c、private
    d、default

13、以下语句不能通过编译的是( )。
    a、int[] a={1,2,3,4};
    b、int b[];
    c、int c[]=new int[3];
    d、int d=new int[];

14、下列方法定义中,不正确的是( )。
    a、public int x( ){ ... }
    b、public static int x( double y ){ ... }
    c、void x( double d ) { ... }
    d、public static x( double a ){ ... }

15、下列语句序列执行后,k 的值是( ) int x=6, y=10, k=5; switch( x%y ){ case 0: k=x*y; case 6: k=x/y; case 12: k=x-y; default: k=x*y-x; }
    a、60
    b、5
    c、0
    d、54

16、下面代码编译运行之后,输出结果将是:( )。 public class test{ public static void main(string args[ ]){ int x=4; system.out.println("value is " ((x>4) ? 99.9 :9)); } }
    a、value is 99.99
    b、value is 9
    c、value is 9.0
    d、编译错误

17、public class demo { public static void main(string args[]) { char c = 'a' ; int num = 10 ; switch(c) { case 'b' : num ; case 'a' : num ; case 'y' : num ; break ; default : num -- ; } system.out.println(num) ; }
    a、11
    b、13
    c、12
    d、10

18、给定以下代码,请问下列选项中哪个是正确的?public interface top{ void twiddle(string s); }
    a、public abstract class sub implements top{ public abstract void twiddle(string s){ } }
    b、public class sub implements top{ public void twiddle(integer i){ } }
    c、public class sub implements top{ void twiddle(string s){ } }
    d、public class sub implements top{ public void twiddle(string s){ } public void twiddle(integer i){ } }

19、下列程序的运行结果是( )。 public class test { public static void main(string[] args) { try { system.out.println("welcome to java"); int i = 0; int y = 2 / i; system.out.println("welcome to html"); } finally { system.out.println("the finally clause is executed"); } } }
    a、welcome to java, 然后是错误信息
    b、welcome to java,下一行是 the finally clause is executed , 然后是错误信息.
    c、替换为正确项
    d、替换为错误项

20、给定以下代码,请问下列选项中哪个是正确的? public interface top{ void twiddle(string s); }
    a、public abstract class sub implements top{ public abstract void twiddle(string s){ } }
    b、public class sub implements top{ public void twiddle(integer i){ } }
    c、public class sub implements top{ void twiddle(string s){ } }
    d、public class sub implements top{ public void twiddle(string s){ } public void twiddle(integer i){ } }

21、关于java中字节流和字符流,哪些说法是正确的?( )
    a、数据流的来源和去向包括:文件、网络、内存等设备。
    b、inputstream和reader是读入流,它们都是抽象类
    c、outputstream和writer是输出流,它们都是抽象类。
    d、读、写数据的方法都抛出运行时异常。

22、关于java中的异常的处理,哪些说法是正确的?( )
    a、try语句块用于放置可能出现异常的代码
    b、catch子句可以有多个,待捕获异常对象的所属类型,其先后顺序无关紧要。
    c、finally语句块可有可无。
    d、无论try子句中代码有无发生异常,finally语句块总是能执行。

23、有如下testa类的定义: public class testa { static int a=10; } 用该类创建2个对象:testa1和testa2,现将类变量(静态变量)a的数值变为100,则正确的方式是:( )。
    a、testa.a=100;
    b、testa1.a=100;
    c、testa2.a=100;
    d、以上都不对

24、在java中,利用java.util.scanner类输入数据,哪些说法是正确的?( )
    a、利用该类对象调用nextxxxxx()或者next()方法来输入相应数据类型的数据
    b、利用该类对象调用next()和nextline()方法均可输入字符串,二者功能无差别
    c、该类构造方法接收一个参数,表示数据的来源
    d、scanner类位于java.util包中,编程时必须导入该包。

25、在java中,关于数据的标准输出system.out,哪些说法是正确的?( )
    a、调用print、println都可以输出8种基本数据类型的数据,以及字符串、字符数组等类型的对象。
    b、兼容c语言中的printf方法,可以按指定格式的字符串形式输出数据
    c、如果不进行输出重定向,标准输出意味着输出到屏幕上
    d、system.out.println(); 可以输出一个空行

26、string对象和stringbuffer对象都是字符串类型,创建后的对象都可以在原地进行修改。

27、设类b是类c的父类,语句b x1=new c( ); 是正确的。

28、在java的集合框架中,map接口是自collection接口继承而来。

29、this([实参])用于调用另一个构造函数。

30、构造函数是一种与类同名的特殊方法,用于初始化该类的对象的成员。构造函数在实例化其类的对象时被调用。

31、java中,通过强制类型转换实现高精度的数据类型向低精度的数据类型赋值时,其数值不变。

32、java中,一个接口允许继承多个接口。

33、java中,boolean基本类型的变量取值为0、1,也可取值true或false。

34、子类和父类必须在一个包中。

35、java只支持单继承,也就是说子类只能有一个直接父类 。

2020-2021-2学期《java程序设计》模拟考试

1、1、谈谈接口和抽象类有什么区别?

2、1、谈谈你对 java 平台的理解?“java 是解释执行”,这句话正确吗?

面向对象期末测试一

面向对象期末测试题1

1、下面对构造方法的描述不正确是( )。
    a、系统提供默认的构造方法
    b、构造方法可以有参数,所以也可以有返回值
    c、构造方法可以重载
    d、构造方法可以设置参数

2、下列类头定义中,错误的是( )。
    a、public x extends y {...}
    b、public class x extends y {...}
    c、class x extends y implements y1 {...}
    d、class x {...}

3、类test1定义如下 public class test1{ public float amethod(float a,float b){ } ( ) } 将以下哪种方法插入( )是不合法的。( )
    a、public float amethod(float a, float b,float c){ }
    b、public float amethod(float c,float d){ }
    c、public int amethod(int a, int b){ }
    d、public int amethod(int a,int b,int c){ }

4、下列选项中,接口中方法的默认可见性修饰符是( )
    a、public
    b、protected
    c、private
    d、final

5、关于抽象类正确的是( )
    a、抽象类中不可以有非抽象方法。
    b、某个非抽象类的父类是抽象类,则这个子类必须重载父类所有的抽象方法。
    c、不能用抽象类去创建对象。
    d、接口和抽象类是同一个概念。

6、一个类可得到许多( ),正如一个基本类型可得到许多变量一样
    a、名称
    b、对象
    c、值
    d、类型

7、一个类在实现接口时,必须( )
    a、额外的定义一个实例变量
    b、实现接口中的所有方法
    c、扩展该接口
    d、以上答案都不对

8、接口a的定义如下,指出下列哪些类实现了该接口? ( )   interface a {    int method1(int i);    int method2(int j);   }   
    a、class b implements a { int method1() { }     int method2() { }    }
    b、class b {     int method1(int i) { }     int method2(int j) { }    }
    c、class b implements a {     int method1(int i) { }     int method2(int j) { }    }
    d、class b extends a {     int method1(int i) { }     int method2(int j) { }    }

9、关类demo,哪句描述是正确的?( )   public class demo extends base{   private int count;   public demo(){    system.out.println("a demo object has been created");   }   protected void addone() {count ;}   }
    a、当创建一个demo类的实例对象时,count的值为0。
    b、当创建一个demo类的实例对象时,count的值是不确定的。
    c、超类对象中可以包含改变count 值的方法。
    d、demo的子类对象可以访问count。

10、对静态成员(用static修饰的变量或方法)的不正确描述是( )。
    a、静态成员是类的共享成员;
    b、静态变量要在定义时就初始化;
    c、调用静态方法时要通过类或对象激活;
    d、静态方法操作的属性一定是静态属性;

11、一个类可以实现抽象类的所有方法,也可以只实现部分方法,但实现部分方法的类仍然是一个抽象类。( )

12、final 类中的属性和方法都必须被 final 修饰符修饰。( )

13、子类要调用父类的方法,必须使用 super 关键字。( )

14、如果 p 是父类 parent 的对象,而 c 是子类 child 的对象,则语句 c = p 是正确的。( )

15、抽象类中不可以有非抽象的方法。 ( )

16、类及其属性、方法可以同时有一个以上的修饰符来修饰。( )

17、可以在子类构造函数中通过this关键字调用基类的构造函数。 ( )

18、类中有static修饰的域或方法,可用类名或对象名访问。 ( )

19、如果一个类中含有抽象方法,则此类必须为抽象类,如果抽象类的子类不为抽象类,则子类必须实现父类的所有抽象方法。( )

20、.java程序中的起始类名称必须与存放该类的文件名相同。

21、通常用关键字 来新建对象

22、java中所有类都是类______的子类

23、类的 是特殊的类方法,它必须和类同名,并且不能有返回类型,也不能用void来标注

24、在子类中使用关键字 做前缀可以调用被子类覆盖的父类中的方法

25、被关键字 修饰的方法是不能被当前类的子类重新定义的方法

26、关键字 用于导入包中的类到程序中,供程序使用

27、在方法头用abstract修饰符进行修饰的方法叫做____ ____方法

28、接口中的成员只有静态常量和__ ____。

29、带 的类不能继承

30、用于创建类实例对象关键字是

猜你喜欢

  • 2022-12-05 21:22
  • 2022-12-05 20:37
  • 2022-12-05 20:01
  • 2022-12-05 19:47
  • 2022-12-05 19:45
  • 2022-12-05 19:38
  • 2022-12-05 19:35
  • 2022-12-05 19:24
  • 2022-12-05 18:45
  • 2022-12-05 18:38
网站地图