以下的题大多都是我在2018年10月求职过程中遇到的一些笔试题,我总结出来分享给大家,如有什么错误或问题,欢迎评论指出,谢谢!
1.Java语言中下面那个可以用作正确的变量名称?
A.name B.3D C.implements D.extends
答案:A
2.JDBC中,用于表示数据库连接的对象是
A.Statement B.Connection C. DriverManager D.PreparedStatement
答案:B
3.下列说法正确的是?
A.一个文件里可以存在两个public修饰的类
B,final修饰的类可以被继承
C,子类不可以访问父类非public和protected修饰的属性
D,构造函数可以被重写(override)
答案:C 解析:protected的意思是本包可以访问,子类可以继承。
4,下列哪一项的叙述是正确的?
A,声明抽象方法,大括号可有可无
B,abstract修饰符可以修饰字段、方法、和类
C,声明抽象方法不可写出大括号
D,抽象方法的body部分必须用一对大括号{ }包住
答案:C 解析:abstract是抽象的意思,在java中,规定只能修饰类或者方法,所以不能修饰属性。
5、下面的程序输出结果为?
public static void main(String[] args) {
int x=-3;
int y=-10;
System.out.println(y%x);
}
A,-1 B,2 C,1 D,3
答案:A
6、( )类是所有异常类的父类
A,Throwable B,Error C,Exception D,AWTError
答案:A 解析:所有的异常类都继承Expection, 所有的错误类都继承Error
7,已知如下类说明,如下那个使用是正确的?
public class Test{
private float f=1.0f;
int m=12;
static int n=1;
public static void main(String[] args) {
Test t=new Test();
//some code...
}
}
A,t.f B,this.n C,Test.n D,Test.m
答案:A
8、Java应用开发中字符集编码通常情况下优先采用以下那种?
A,UTF-8 B, iso8859-1 C,GB2312 D,ASCII
9,Java访问限定的修饰符不包括?
A,public B,private C,default D,final
答案:D
10,下列会触发JVM垃圾回收的是()?
A,当新对象生成,并且在Eden申请空间失败时
B,Old区被写满
C,在循环中创建大量对象
D,使用Class.forName加载外部类
答案:A 解析:一般情况下,当新对象生成,并且在Eden申请空间失败时,就会触发Scavenge GC,对Eden区域进行GC,清除非存活对象,并且把尚且存活的对象移动到Survivor区。然后整理Survivor的两个区。这种方式的GC是对年轻代的Eden区进行,不会影响到年老代。因为大部分对象都是从Eden区开始的,同时Eden区不会分配的很大,所以Eden区的GC会频繁进行。因而,一般在这里需要使用速度快、效率高的算法,使Eden去能尽快空闲出来。
11,以下程序的运行结果?
class Person{
public Person(){
System.out.println("this is a Person");
}
}
public class Teacher extends Person{
private String name="tom";
public Teacher(){
System.out.println("this is a Teacher");
super;
}
public static void main(String[] args) {
Teacher teacher=new Teacher();
System.out.println(this.name);
}
}
A,运行出错 B,编译有两处错误
C,this is a Person this is a teacher tom
D,this is a teacher this is a Person tom
答案:B
12,下面程序输出结果为?
class HelloA{
public HelloA() {
System.out.println("HelloA");
}
{
System.out.println("I'm A class");
}
static{
System.out.println("static A");
}
}
public class HelloB extends HelloA{
public HelloB() {
System.out.println("HelloB");
}
{
System.out.println("I'm B class");
}
static{
System.out.println("static B");
}
public static void main(String[] args) {
new HelloB();
}
}
答案:static A static B I'm A class HelloA I'm B class HelloB
12,将整数数组(7-6-3-5-4-1-2)按照堆排序的方式进行排序,请问在第一轮排序结束以后,数组的顺序是()?
A,5-4-3-2-1-6-7 B,1-2-3-4-5-6-7
C,2-6-3-5-4-1-7 D,6-5-3-2-4-1-7
13,构造函数什么时候被调用()?
A,创建对象时 B,使用对象的变量时
C,调用对象方法时 D,类定义时
答案:A
14,Java中访问限定符不包括()?
A,public B,private C,default D,final
答案:D
15,以下所列的HTTP协议的状态码,表示内部服务器错误的是()?
A,402 B,404 C,500 D,501
答案:C 解析:200 - 请求成功
301 - 资源(网页等)被永久转移到其它URL,404 - 请求的资源(网页等)不存在,500 - 内部服务器错误
16,有如下程序段:
int total=0;
for (int i = 0; i < 4; i++) {
if(i==1)continue;
if(i==2)break;
total+=i;
}
A,1 B,0 C,6 D,3
答案:B
17,下列语句片段的结果是()?
int a=-67,b=116,c=78;
int d=~a|b&c;
System.out.println(d);
A,70 B,67 C,56 D,78
答案:A
18,下列关于整型类型的说法中,正确的是()?
A,short类型的数据存储顺序先低后高
B,Integer.MAX_VALUE表示整型最大值
C,Long.MIN_VALUE表示整型最大值
D,long类型表示数据范围和int类型一样
19,Java应用开发中字符集编码通常情况下优先采用那种?
A,UTF-8 B,ISO8859-1 C,GB2312 D,ASCII
答案:A
20,在使用super和this关键字的时候,以下描述正确的是()?
A,在子类构造方法中使用super()显示调用父类的构造方法,super()必须写在子类构造方法的第一行,否则编译不通过
B,super()和this()不一定要放在构造方法内第一行
C,this()和super()可以同时出现在一个构造函数中
D,this()和super()可以在static环境中使用,包括static方法和static语句块
答案:A
解析:使用super()和this()应该注意这些:调用super()和this()必须写在子类构造方法的第一行,否则编译不通过。每个子类构造方法的第一条语句,都是隐含地调用super(),如果父类没有这种形式的构造函数,那么在编译的时候就会报错。super()和this()类似,区别是super()从子类中调用父类的构造方法,this()在同一类内调用其它方法。尽管可以用this()调用一个构造器,但却不能调用两个,即this()和super()不能同时出现在一个构造函数里面。