Java基础测试题2 | 基础不能都忘掉-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

Java基础测试题2 | 基础不能都忘掉

游客pklijor6gytpx 2019-11-25 14:37:09 1363

一、填空题

1、Java中通过____关键字实现继承。

2、一个类只能继承________个父类,但能实现____个接口。

3、当子类中定义的方法与父类方法同名且参数类型及个数、返回值类型相同时,称子类方法____父类方法,子类默认使用____方法,使用父类的同名方法,必须使用____关键字说明。

4、当子类定义的成员变量与父类的成员变量同名时,称子类____父类的成员变量,子类默认使用____属性。使用父类的同名成员变量,必须用____关键字说明。

5、如果子类定义了构造方法,在创建子类对象时首先默认调用____,然后再本类的构造方法。

二、判断题

1、final声明的类可以有子类。

2、一个类继承了抽象类,则抽象类中的抽象方法需要在其子类中覆写。

3、final类型的变量是常量,其内容不可改变。

4、一个类不能即是子类又是父类。

5、子类只能继承父类的成员,但不能修改父类成员。

6、Java语言只支持单继承,不支持多继承。

7、子类可以继承父类的所有成员。

8、一个接口可以继承一个抽象类。

9、一个接口可以同时继承多个接口。

10、在程序中this和super调用构造方法时可以同时出现。

三、选择题

1、不能直接使用new创建对象的类是()。

A、静态类B、抽象类C、最终类D、公有类

2、为类定义多个名称相同、但参数的类型或个数不同的方法的做法称为()。

A、方法重载B、方法覆写C、方法继承D、方法重用

3、定义接口的关键字是()。

A、extendsB、classC、interfaceD、public

4、现在有两个类A、B,以下描述中表示B继承自A的是()。

A、classAextendsB

B、classBimplementsA

C、classAimplements

D、classBextendsA

5、下面关于子类调用父类构造方法的描述正确的是()。

A、子类定义了自己的构造方法,就不会调用父类的构造方法。

B、子类必须通过super关键字调用父类有参的构造方法。

C、如果子类的构造方法没有通过super调用父类的构造方法,那么子类会先调用父类中无参构造方法,之后再调 用子类自己的构造方法。

D、创建子类对象时,先调用子类自己的构造方法,让后再调用父类的构造方法。

6、假设类X是类Y的父类,下列声明对象x的语句中不正确的是()。

A、Xx=newX(); B、Xx=newY();

C、Yx=newY(); D、Yx=newX();

7、编译并运行下面的程序,结果()。

publicclassA{
publicstaticvoidmain(Stringargs[]){
Bb=newB();
b.test();
}
voidtest(){
System.out.print("A");
}
}
classBextendsA{
voidtest(){
super.test();
System.out.println("B");
}
}

A、产生编译错误

B、代码可以编译运行,并输出结果:AB

C、代码可以编译运行,但没有输出

D、编译没有错误,但会运行时会产生异常

8、下面的程序编译运行的结果是()

publicclassAimplementsB{
publicstaticvoidmain(Stringargs[]){
intm,n;
Aa=newA();
m=a.K;
n=B.K;
System.out.println(m+","+n);
}
}
interfaceB{
intK=5;
}

A、5,5B、0,5C、0,0 D、编译程序产生编译结果

9、对于变量int val = 0b11010,System.out.println("" + val)输出是多少?

A 、26 B、64 C、28 D、32

10、若a = 8,则表达式 a >>> 2 的值是多少?

A、1 B、4 C、3 D、2

四、程序分析题

1、下面代码的作用是交换数组的第一个元素和最后一个元素,改正其中的错误。

public class Test{
  public static void main(String[] args){
    int[] list = new int[]{4, 4, 5, 2, 7, 1};
    int temp; // 临时变量
			
    // 交换数组的第一个元素和最后一个元素
    list[0] = temp;
    temp = list[5];
    list[5] = list[0];
  }
}

2、 分析以下代码,写出运行结果。

int num = 90;
System.out.print(num ++);
double a = 89.5;
int b = (int)a + 10;
System.out.println(" "+b);

3、以下代码运行结果是什么?

class test  {
  public static void main (String[] args){
    Animal animal = new Cat();
    animal.running();
  }
}
	
class Animal{
  public void running(){
    System.out.println("Animal is running!");
  }
}
	
class Cat extends Animal{
  public void running(String target){
    System.out.println("Cat is running to "+target);
  }
	    
  public void running(){
    System.out.println("Cat is running.");
  }
}

五、SQL语句执行题

1、 查询Student表中的所有记录的Sname、Ssex和Class列。

2、 查询教师所有的单位即不重复的Depart列。

3、 查询Student表的所有记录。

4、 查询Score表中成绩在60到80之间的所有记录。

5、 查询Score表中成绩为85,86或88的记录。


上期Java基础测试题 1 回顾,没做的可以再做一次

Java基础测试题|挑战你的底线


了解更多技术话题,钉钉扫码,进入阿里云开发者社群,与阿里专家互动

test

SQL Java 数据安全/隐私保护
分享到
取消 提交回答
全部回答(0)
数据库
使用钉钉扫一扫加入圈子
+ 订阅

分享数据库前沿,解构实战干货,推动数据库技术变革

推荐文章
相似问题
推荐课程