java第二个月月考_【Java】第一次月考错题及分析

第一次月考错题及分析

9.(单选题)关于下列代码说法正确的是:

class ClassA {

public int numberOfinstances;

protected ClassA(int numberOfinstances) {

this.numberOfinstances = numberOfinstances;

}

}

public class ExtendedA extends ClassA {

private ExtendedA(int numberOfinstances) {

super(numberOfinstances);

}

public static void main(String[] args) {

ExtendedA ext = new ExtendedA(420);

System.out.print(ext.numberOfinstances);

}

}

A.运行后,输出420

B.运行时抛出异常

C.编译错误,所有的构造器必须是public的

D.编译错误,构造器不能是private的

正确答案:A

解析:

main方法在类ExtendedA里面,因此可以访问ExtendedA类的任何成员变量及方法。如果把此main方法放在另一个类中,则报错。

在类中如果声明了私有化的构造方法,那么主方法中若取得并且实例化对象可以用以下方法:

·在类中进行对私有化的构造方法的实例化。

·用static的get方法对实例化的对象进行取值。

·在主方法中取得实例化对象用get方法。

22.(单选题)请看下列代码,出现错误的行是:()

public interface Cookie {

Cookie cookie = new Cart("小面包", "盼盼");

}

class Cart implements Cookie {

private String name;

private String production;

public Cart(String name, String production) {

this.name = name;

this.production = production;

}

public void smell() {

cookie = new Cart("蛋黄派", "达利园");

}

}

A.第2行

B.第4行

C.第11行

D.第12行

正确答案:D

解析:

第2行的代码相当于定义了一个public static final Cookie类型的变量cookie,因此在12行cookie = new Cart("蛋黄派", "达利园");时报错,不能改变final修饰的变量。

37. (单选题)查看如下代码:

public class HasStatic {

private static int x = 100;

public static void main(String args[]) {

HasStatic hs1 = new HasStatic();

hs1.x++;

HasStatic hs2 = new HasStatic();

hs2.x++;

hs1 = new HasStatic();

hs1.x++;

HasStatic.x--;

System.out.println("x=" + x);

}

}

对于此代码,下列描述中,正确的是()。

A.5行不能通过编译,因为引用了私有静态变量

B.10行不能通过编译,因为x是私有静态变量

C.程序通过编译,输出结果为:x=103

D.程序通过编译,输出结果为:x=102

正确答案:D

解析:main方法在类的内部,故可以访问类的私有成员变量。如果放在别的类中,则不行。

41.(多选题)下面的方法属于StringBuffer的是:()。

A.size

B.insert

C.delete

D.length

正确答案:BCD

解析:记住即可

44.(多选题)在Java语言中,下列说法正确的是:()。

A.StringBuffer和StringBuilder的区别在于:StringBuffer是线程安全的而StringBuilder不是。

B.String是不可变对象,而StringBuffer中封装的字符串数据是可以动态改变的。

C.判断两个StringBuilder对象的字符序列是否相同,可以调用其equlas方法进行比较。

D.String的重写了equals方法,重写的逻辑是:字符序列相同的String对象equals方法返回true。

正确答案:ABD

解析:错误答案ABCD,StringBuilder中没有重写equals方法,故想比较字符序列是否相同需转成String类型(.toString即可)再进行比较。

48.(多选题)下列关于HashMap的描述正确的是:

A.HashMap的Key和Value是以链表的方式存入对应的bucket

B.HashMap的查找方式是获取Key的hashCode值,通过hash算法确定存储的bucket,调用equals方法依次 与bucket中的Key进行比较

C.放入HashMap集合中的元素按照key的自然顺序排序

D.HashMap中的key是不可以的重复的

正确答案:ABD

解析:暂未搞懂

总结分析:平时练习的太少,导致很多细节问题不是很清晰,然后就做错了很多题,很多题考查的还是比较全面的,通过这次测试,让我发现了自己很多不足,自己需要改进的地方还很多,以后 的学习中要更加的踏实与努力!!!


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部