我是靠谱客的博主 单身月亮,这篇文章主要介绍javaSE基础测试之第二次周考选择题第二章 简答题代码题,现在分享给大家,希望可以做个参考。

面向对象,常用API,集合

  • 选择题
    • 第01题【单选】
    • 第02题【单选】
    • 第03题【单选】
    • 第04题 【多选】
    • 第05题【多选】
  • 第二章 简答题
    • 第01题
    • 第02题
    • 第03题
    • 第04题
    • 第05题
  • 代码题
    • 第一题
    • 第二题

选择题

第01题【单选】

以下说法描述当中,正确的是( )

A、 Java面向对象的三大特性是 封装、继承、接口。

B、 Java 支持多继承。

C、 Java 抽象类当中,没有构造方法。

D、Java 继承当中,创建子类对象的时候,必须执行父类构造方法。

题目正确答案: D

答案解析:
A. Java面向对象的三大特性是 封装、继承、多态
B. Java不支持多继承。Java支持 单一继承和多重继承
C. Java的抽象类,有构造方法。目的是为了在创建子类对象的时候,给父类成员变量初始化数据。

第02题【单选】

以下说法描述中,错误的是( )

A、 Calendar 类的使用,需要先创建对象,再调用方法。

B、 Object 类是所有类的父类,它里面的所有方法,都可以被子类使用。

C、 Integer类是int类型的包装类,可以完成字符串转换成为int的操作。

D、如果一个类,想要进行排序操作,则需要实现 Comparable接口

题目正确答案: A
答案解析:
A. 我们的 Calendar 类使用的方式是 Calendar cal = Calendar.getInstance(); 这里由于 Calendar是抽象类,他不能创建对象
B. Object类要所有类的父类,里面的方法,要么要 public 修饰,要么要 protected 修饰。 private修饰registerNatives的方法,在静态代码块当中,创建对象的时候,也可以被调用
C. 字符串转换int类型的方式是 Integer.parseInt(“520”);
D. 内部比较器,使用的就是 Comparable接口 需要重写 compareTo()方法

第03题【单选】

观察下面代码,请分析,请问答案是( )

复制代码
1
2
3
4
5
6
7
public class Test{ public static void main(String[] args){ String str = new String("abc"); //问题: 这里创建了几个对象? } }

A、1个对象

B、2个对象

C、3个对象

D、1个或2个对象

题目正确答案: B
答案解析:
第一个指的是 new 出来的 String 对象,直接存放在 堆内存当中。
第二个指的是 “abc” 字符串胡对象,存在于 堆内存的常量池当中。

第04题 【多选】

关于 泛型说法错误的是( )

A、 泛型可以使用基本数据类型,也可以使用引用数据类型

B、 泛型包括有泛型类、泛型方法、泛型接口、泛型通配符等

C、 泛型是一种不明确的数据类型,定义的时候不会给出具体类型,使用才会给出具体类型。

D、泛型的上限限定是采用 super 关键字,泛型的下限限定采用 extends 关键字

题目正确答案:AD
答案解析:
A. 泛型只能是引用数据类型,即使存放整数 13 也是按照 Integer的对象存放的
D. 泛型的上限限定采用的要 extends 关键字, 泛型的下限限定采用的要 super 关键字

第05题【多选】

关于集合说法正确的是( )

A、 单列集合的顶层父接口是 Collections

B、 所有的单列集合,都可以使用迭代器来完成遍历的操作。

C、 集合可以存储基本数据类型

D、ArrayList 集合查询的效率比 LinkedList 集合的效率更高

题目正确答案:BD
答案解析:
A. 单列集合的顶层父接口是 Collection 并不是 Collections, Collecions是工具类
C. 集合只能存储引用数据类型,如果是基本数据类型,以自动装箱的包装类存储的

第二章 简答题

第01题

题目

观察下面代码,说明结果,解释原因?
String s1 = “ab”;
String s2 = “c”
String s3 = “ab” + “c”;
String s4 = s1 + s2;
请问: s3 == s4 执行的结果是什么?为什么?

答案

false
说明:s3 是常量相加。直接加,会在堆内存的常量池当中的地址。
s4是变量相加,相加的过程,实际上会创建新的对象,是堆内存的地址。(备注:底层是StringBuilder的append方法)

第02题

题目

举例说明,多态当中的转型方式和注意的问题?

答案

转型分为两类:
1. 向上转型
2. 向下转型(需要注意类型转换异常 ClassCastException)
例如:
Animal aa = new Dog(); //向上转型
Dog dd = (Dog)aa; //向下转型

第03题

题目

请说明,方法重载和方法重写的区别?

答案

方法重载:同一个类,同名方法,参数不同。(个数、类型、顺序)
方法重写:父子关系当中,出现了相同的方法

第04题

题目

简述一下SimpleDateFormat 的作用和方法举例?

答案

SimpleDateFormat 的作用主要有两点:
1. 格式化 String s = sdf.format(Date对象);
2. 解析 Date d = sdf.parse(字符串文本);

第05题

题目

说明一下 List集合、Set集合的特点?

答案

  1. List 集合: 有序、有重复、有索引
  2. Set 集合: 无序、无重复、无索引

代码题

第一题

在这里插入图片描述
代码答案
Hero类:

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
public class Hero { private String name; private int age; private int score; public Hero() { } public Hero(String name, int age) { this.name = name; this.age = age; // this.score = score; } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public int getScore() { return score; } public void setScore(int score) { this.score = score; } @Override public String toString() { return "Hero{" + "name='" + name + ''' + ", age=" + age + ", score=" + score + '}'; } public static int getScore111(){ int score=0; Random random=new Random(); score =random.nextInt(100-0+1)+0; return score; } }

测试类:

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
public class Test { public static void main(String[] args) { ArrayList<Hero> list= new ArrayList<>(); int [] arr=new int[10]; Hero hero1=new Hero("疾风剑豪",29); Hero hero2=new Hero("德邦总管",25); Hero hero3=new Hero("嘉文四世",24); Hero hero4=new Hero("盲僧",30); Hero hero5=new Hero("艾瑞莉娅",21); int s1 = hero1.getScore111(); arr[0]=s1; hero1.setScore(s1); int s2= hero2.getScore111(); arr[1]=s2; hero2.setScore(s2); int s3= hero3.getScore111(); arr[2]=s3; hero3.setScore(s3); int s4= hero4.getScore111(); arr[3]=s4; hero4.setScore(s4); int s5= hero5.getScore111(); arr[4]=s5; hero5.setScore(s5); list.add(hero1); list.add(hero2); list.add(hero3); list.add(hero4); list.add(hero5); int max=-1,index=0; for (int i = 0; i < arr.length; i++) { if(max<arr[i]){ max=arr[i]; index=i; } } System.out.println("姓名 年龄 成绩"); for (Hero hero : list) { System.out.println(hero.getName()+" "+hero.getAge()+" "+hero.getScore()); } switch (index){ case 0: System.out.println("最终的MVP选手是:"+ hero1.getName()); break; case 1: System.out.println("最终的MVP选手是:"+ hero2.getName()); break; case 2: System.out.println("最终的MVP选手是:"+ hero3.getName()); break; case 3: System.out.println("最终的MVP选手是:"+ hero4.getName()); break; case 4: System.out.println("最终的MVP选手是:"+ hero5.getName()); break; } } }

第二题

在这里插入图片描述
测试图:
在这里插入图片描述
Person类:

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
package com.blb.test01; public abstract class Person { private String name; private int age; private String gender; public abstract void work(); public Person() { } public Person(String name, int age, String gender) { this.name = name; this.age = age; this.gender = gender; } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public String getGender() { return gender; } public void setGender(String gender) { this.gender = gender; } @Override public String toString() { return "Person{" + "name='" + name + ''' + ", age=" + age + ", gender='" + gender + ''' + '}'; } }

Man类:

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
package com.blb.test01; public class Man extends Person { @Override public void work() { System.out.println("挣钱养家"); } public void drink(){ System.out.println("我能喝五瓶酒!"); } public char xm(){ String name = this.getName(); char c=name.charAt(0); return c; } }

Woman类:

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
package com.blb.test01; import java.util.Calendar; import java.util.Random; public class Woman extends Person { @Override public void work() { System.out.println("貌美如花"); } Calendar c = Calendar.getInstance(); int week = c.get(Calendar.DAY_OF_WEEK)-1; public void breed(Man man){ boolean flag=false;//默认男孩 if(this.getAge()>=20 && man.getAge()>=22){ int sex=getSex(); if (sex%2==0){ System.out.println("他们的小孩子是女性,姓名是:"+man.xm()+week); } else{ System.out.println("他们的小孩子是男性,姓名是:"+man.xm()+week); } }else{ System.out.println("不符合生育条件"); } } public static int getSex(){ int score=0; Random random=new Random(); score =random.nextInt(100-1+1)+1; return score; } }

测试类:

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
package com.blb.test01; import java.util.Calendar; import java.util.Scanner; @SuppressWarnings("all") public class Test { public static void main(String[] args) { System.out.println("请输入男人的姓名,年龄"); Scanner in = new Scanner(System.in); Man man1=new Man(); String name1=in.next(); man1.setName(name1); int age1=in.nextInt(); man1.setAge(age1); String gender1=in.next(); man1.setGender(gender1); Man man2=new Man(); String name2=in.next(); man2.setName(name2); int age2=in.nextInt(); man2.setAge(age2); String gender2=in.next(); man2.setGender(gender2); man1.work(); man1.drink(); System.out.println("请输入女人的姓名,年龄"); Woman woman1=new Woman(); String name3=in.next(); woman1.setName(name3); int age3=in.nextInt(); woman1.setAge(age3); String gender3=in.next(); woman1.setGender(gender3); Woman woman2=new Woman(); String name4=in.next(); woman2.setName(name4); int age4=in.nextInt(); woman2.setAge(age4); String gender4=in.next(); woman2.setGender(gender4); woman1.work(); woman1.breed(man1); } }

最后

以上就是单身月亮最近收集整理的关于javaSE基础测试之第二次周考选择题第二章 简答题代码题的全部内容,更多相关javaSE基础测试之第二次周考选择题第二章内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(61)

评论列表共有 0 条评论

立即
投稿
返回
顶部