admin 管理员组文章数量: 887021
2023年12月17日发(作者:navicat premium怎么创建表)
单选题:(每道题目2分)
1:下列有关类、对象和实例的叙述,正确的是哪一项?()
A.类就是对象,对象就是类,实例是对象的另一个名称,三者没有差别
B.对象是类的抽象,类是对象的具体化,实例是对象的另一个名称
C.类是对象的抽象,对象是类的具体化,实例是类的另一个名称
D.类是对象的抽象,对象是类的具体化,实例是对象的另一个名称
2:类Student中成员变量声明正确的是哪一项? ()
A. class Student
{
}
B. class Student
{
}
C. class Student
{
}
D. class Student
{
}
3:类Student中成员方法声明正确是哪一项?()
A:class Student
String name,int age;
String name;
int age;
String name = 1.0;
int age = “26”;
name;
age;
{
}
B:class Student
{
}
C:class Student
{
}
D:class Student
{
}
4:类Student中构造方法声明正确的是哪一项? ()
A:class Student
{
}
B:class Student
{
}
C:class Student
{
}
public void Student(){}
public Student(){}
public Student()
show(){}
public void show(){}
public void show();
public show(){}
D:class Student
{
}
5:下列哪一项不是面向对象的三大特征之一? ()
A:封装
B:抽象
C:继承
D:多态
6:下列关于封装说法不正确的是?()
A:封装可以提高代码的安全性。
B:封装是指隐藏实现细节,提高公共的访问方式。
C:类或者方法也是封装的一种体现。
D:仅仅private修饰的内容才是封装的体现。
7:下列哪个方法和int sum(int a,int b)是重写方法?()
A:public void sum(int a,int b)
B:public int sum(int a,int b)
C:int sum(int a,int b,int c)
D:void sum(int c,int b)
8:下列程序的运行结果是:()
class Test
{
private static int x = 10;
public void show(int x)
{
new Student(){}
}
x++;
n(x);
public static void main(String[] args)
{
}
}
A:10
B:21
C:11
D:20
9:在子类中调用父类中被重写的方法时需要使用哪个关键字?()
A.this
B.new
C.super
D.以上都不是
10:如果想一个类不能被子类继承的话,用下列哪个修饰符? ()
A:static
B:abstract
C:private
D:final
11:有如下两个类,在main方法中下面哪个做法是错误的?()
class Animal{}
int x = 20; //局部变量覆盖成员变量
Test t = new Test();
(x);
class Dog extends Animal{}
A:Animal a = new Animal();
B:Dog d = new Dog();
C: Animal a = new Dog();
D:Dog d = new Animal();
12:下列有关抽象类的叙述正确的是哪项?()
A:抽象类中一定含有抽象方法
B:抽象类既能被实例化也能被继承
C:抽象类的声明必须包含abstract关键字
D:抽象类中不能有构造方法
13:下列有关接口的叙述错误的是哪项?()
A:接口中只能包含抽象方法和常量
B:一个类可以实现多个接口
C:具体类实现接口时必须实现其中的方法
D:接口不能被继承
14:下列程序的运行结果是:()
class Fu
{
}
class Zi extends Fu
{
}
class Test
public int num = 20;
public int num = 10;
{
}
A:10,10
B:20,20
C:10,20
D:20,10
15:下列程序的运行结果是:()
class Fu
{
}
class Zi extends Fu
{
public void show()
{
}
n("zi show");
public void show()
{
}
n("fu show");
public static void main(String[] args)
{
}
Fu f = new Zi();
n();
Zi z = (Zi)f;
n();
}
class Test
{
}
A:fu show
B:zi show
C:编译报错
D:zi method
16:关于代码块说法错误的是?()
A:静态代码块在类加载的时候执行一次,在创建对象的时候不在执行了。
B:构造代码块每次创建对象的时候都会执行。
C:局部代码块是为了限定变量的生命周期。
D:以上说法都不对
17:Math类中的方法public static int round(float f),不能接受下面哪种类型的参数:
A:byte
B:int
public static void main(String[] args)
{
}
Fu f = new Zi();
();
public void method()
{
}
n("zi method");
C:long
D:double
18:关于抽象类和接口, 以下那个说法有问题:()
A:一个类只能继承一个抽象类, 但可以实现多个接口
B:抽象类中可以没有抽象方法, 接口中所有方法必须抽象
C:抽象类中的方法默认是公有的, 接口中方法默认是抽象的
D:抽象类和接口都可以作为函数的形参类型使用, 调用时传入子类对象
19:关于内部类说法错误的是()
A:内部类不能定义在局部位置。
B:内部类可以定义在成员位置。
C:成员内部类可以用private和static修饰。
D:局部内部类只能访问被final修饰的局部变量。
20:下列程序的运行结果是:()
class A
{
}
class B extends A
{
}
class C extends B
public void show2()
{
n("爱");
}
public void show()
{
}
public void show2()
{
n("我");
}
show2();
{
}
public class ForDemo
{
}
}
B b = new C();
();
public static void main(String[] args)
{
A a = new B();
();
public void show()
{
}
public void show2()
{
n("你");
}
();
A:爱,你
B:我,爱
C:我,你
D:我,我
多选题:(每道题目3分)
21:关于静态方法, 以下说法正确的是()
A、可以使用 类名.方法名 调用
B、可以使用 对象.方法名 调用
C、不能使用非静态成员
D、可以使用静态成员和非静态成员
22:关于继承, 以下说法正确的是:
A:Java中只支持单继承, 一个类只能继承一个类, 但是可以有多个直接子类
B:一个类如果没有自己写无参构造方法, 那么子类将无法继承
C:子类实例可以当父类实例用, 父类实例不可以当子类实例用
D:子类重写父类方法时访问权限不能更低
23:关于abstract不能和哪些关键字共用正确的是()
A:abstract不可以和private共用
B:abstract不可以和static共用
C:abstract不可以和final共用
D:abstract不可以和public共用
24:下列有关抽象方法叙述正确的是哪几项?()
A:包含抽象方法类的必须定义为抽象类
B:抽象方法没有方法体
C:抽象方法可以包含在任何类中
D:包含抽象方法的类的具体子类必须提供具体的重写方法
25:有如下代码,请问哪些是正确的?()
class ClassA{}
class ClassB extends ClassA{}
class ClassC extends ClassA{}
以及
ClassA p0 = new ClassA();
ClassB p1 = new ClassB();
ClassC p2 = new ClassC();
ClassA p3 = new ClassB();
ClassA p4 = new ClassC();
A:p0 = p1;
B:p1 = p2;
C:p1 = (ClassB)p3;
D:p2 = (ClassC)p4;
简答题:(每道题目3分)
26:什么是面向对象?请举例说明。
27:成员变量和局部的变量区别是什么?
28:构造方法的特点是什么?需要注意什么问题?
29:方法重写是什么?需要注意什么问题?
30:抽象类和接口的区别是什么?
编程题:(每道题目10分)
31:写一个标准的学生类,包含如下内容:
成员变量:name,age
构造方法:无参构造,带两个参数的构造
成员方法:getXxx()/setXxx()方法。show()方法用于显示类的成员变量值。
32:请用代码体现把大象装进冰箱的操作。
提示:注意分析该操作中有哪些类,每个类有哪些方法。然后在测试类中调用。
33:有一只狗和一只猫。
他们都有睡觉的方法,都仅仅是睡觉。
他们都有运动的方法,狗爱跑步,猫爱跳高。
请用所学知识体现把上面的代码体现出来。
然后在测试类中进行测试。
版权声明:本文标题:2.Java面向对象知识测试 - 含答案 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/jishu/1702799323h431350.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论