Java基础试题 
一:选择题(1*30=30)(题目写在答题纸上面)
1:Java 提供哪几种运算符        多选 ( abcd  )。
A)算术运算符 B)位运算符
C)关系运算符 D)逻辑运算符 E)条件运算符
2:包的()方法比较二个对象是否相等返回true.。  (b)
A:toString()      B:equals()      C:compare      D:以上都不正确
3:下列对Java 的变量与函数说法正确的是    多选( ace )        。
A)变量是用来保存数据的 B)变量是用来实现操作过程的C)函数是用来实现操作过程的
D)函数是用来保存数据的 E)函数的参数是数据的入口
4:已知:int[] a = new int[100];在下列给出的数组元素中,非法的是。  (d)
A:a[0]          B:a[1]          C:a[99]        D:a[100]
5:在java中,一个类可同时定义许多同名的方法,在这些方法的形式参数个数,类型或顺序各不相同,传值也可以各不相同。这种面向对象程序的特性称为。  (c)
A:隐藏          B:覆盖          C:重载          D:Java不支持此特性
6:()是一组常量和抽象方法的集合。  (d)
A:实例            B:类            C:包            D:接口
7:下面关于数组说法正确的是        多选(abcde)  。
A)一维数组实质上是相同类型变量的列表
B)创建一个数组首先定义数组变量所需的类型
C)char c[]=new char[26];可声明一个含有 26 个元素的 char型数组
D)当为一个多维数组的时候分配内存时,仅需要为第一指定内存,然后再分配其他维的
E)int twain[][] = new int[4][5];可声明一个二维数组
8:Java源文件和编译后的文件扩展名分别为。  (b)
A:.class和.java      B:.java各.class  C:.class和.class  D:.java和.java
9:设x=5;则y=x--和y=--x的结果,使y分别为。 (c)
java重写和重载的区别A:5,5              B:5,6            C:5,4          D:4,4
10:若x是float类变量,x=10/4;则x 的值是。 (b)
A:2                B:          C:2,5            D:编译错误
11:.下面方法中,用于调度线程使其运行的是 多选( bc )
A. init()                B. start()
C. run()                D. resume()    E. sleep()
12.下面哪种情况能实现自动转换        多选(ace  )。
A)byte 型转换成 int 型 B)int 型转换成 byte 型
C)float 型转换成 double型 D)double 型转换成 int 型 E)char型转换成 int 型
13:下列那些是正确的JAVA字符串多选( abd )。
A. "\"\""                    B. "Oxzabc"
C. "\"\"                    D. "\t\t\r\n"    E. "boolean"5
14: 在使用super 和this关键字时,以下描述正确的是。(a)
A::在子类构造方法中使用super()显示调用父类的构造方法,super()必须写在子类构造方法的第一行,否则编译不通过
B:super()和this()不一定要放在构造方法内第一行
C:this()和super()可以同时出现在一个构造函数中
D:this()和super()可以在static环境中使用,包括static方法和static语句块
15:以下对封装的描述正确的是。(d)
A:只能对一个类中的方法进行封装,不能对属性进行封装
B:如果子类继承了父类,对于父类中进行封装的方法,子类仍然可以直接调用
C:封装的意义不大,因此在编码时尽量不要使用
D:封装的主要作用在于对外隐藏内部实现细节,增强程序的安全性
16:以下对继承的描述错误的。(a)
A:Java中的继承允许一个子类继承多个父类B:父类更具有通用性,子类更具体
C:Java中的继承存在着传递性D:当实例化子类时会递归调用父类中的构造方法
17: 以下关于final关键字说法错误的是(ac)(两项)
A:final是java中的修饰符,可以修饰类、接口、抽象类、方法和属性 B:final修饰的类肯定不能被继承 C:final修饰的方法不能被重载 D:final修饰的变量不允许被再次赋值
18: 访问修饰符作用范围由大到小是。(d)
A:private-default-protected-public    B:public-default-protected-private
C:private-protected-default-public    D:public-protected-default-private
19: 以下( )不是Object类的方法。(d)
A: clone()    B:finalize()    C:toString()    D:hasNext()
20:多态的表现形式有。(a)
A:重写        B:抽象        C:继承        D:封装
21: 以下对重载描述错误的是。(b)
A:方法重载只能发生在一个类的内部    B:构造方法不能重载
C: 重载要求方法名相同,参数列表不同  D:方法的返回值类型不是区分方法重载的条件
22:以下对接口描述错误的有。(d)
A: 接口没有提供构造方法    B: 接口中的方法默认使用public、abstract修饰
C: 接口中的属性默认使用public、static、final修饰    D: 接口不允许多继承
23: 以下对自定义异常描述正确的是。(c)
A:自定义异常必须继承Exception        B:自定义异常可以继承自Error
C:自定义异常可以更加明确定位异常出错的位置和给出详细出错信息
D:程序中已经提供了丰富的异常类,使用自定义异常没有意义
24:在Java中,下面对于构造函数的描述正确的是。(d)
A:类必须显示定义构造函数                      B:构造函数的返回类型是void
C:构造函数和类有相同的名称,并且不能带任何参数D: 一个类可以定义多个构造函数
25:根据下面的代码,String s = null;会抛出NullPointerException异常的有(ac)。[两项]
A:if( (s!=null) & ()>0) )      B:if( (s!=null) & & ()>0) )
C:if( (s==null) | ()==0) )      D:if( (s==null) || ()==0) )
26:下列选项中关于java中super关键字的说法错误的是。(b )
A:super关键字是在子类对象内部指代其父类对象的引用
B:super关键字不仅可以指代子类的直接父类,还可以指代父类的父类
C:子类可以通过super关键字调用父类的方法
D:子类可以通过super关键字调用父类的属性
27:下列声明哪个是错误的。(b)
A :int i = 10;    B: float f = ;  C: double d = ;  D: long m = 4990;
28:关于抽象类的说法正确的是(b)
A:抽象类中一定包含抽象方法,否则是错误      B:包含抽象方法的类一定是抽象类    C:抽象方法可以没有方法体,也可以有方法体      D:抽象类的子类一定不是抽象类
29:所有类的基类。(a)
A:    B:    C      D::关于String 和 StringBuffer 下面说法正确的是  ( a )
A:String操作字符串不改变原有字符串的内容  B:StringBuffer连接字符串速度没有String 快    C:String 可以使用append方法连接字符串  D:StringBuffer 在包中
二:简答题 (2*20=40) (题目写在答题纸上面)
1:String是最基本的数据类型吗,Java基本类型有哪些
    String不是最基本的数据类型,而是一个对象。
    Java基本类型有:
布尔型:boolean
字符型:char
整数型:byte、short、int、long
浮点数型:float、double
2:面向对象的特点
    1. 信息隐藏和封装特性: 2.继承: 3.组合特性  4.动态特性:抽象,多态
3:JDK是什么
jdk是Java语言的软件开发工具包
4:作用域public,private,protected,以及不写时的区别
作用域  当前类  同一package  子孙类  其他package
public  √      √            √          √
protected √        √            √          ×
friendly √          √                ×          ×
private  √          ×            ×          ×
不写时默认为friendly
5:Java是编译型语言还是解释型的语言
它既不属于传统的编译型语言也不属于解释型语言.
它是先编译成.CLASS字节码文件,然后再利用虚拟机解释执行的.可以说先编译后解释.
6:final、finally、finalize的区别
    final用于声明属性,方法和类,分别表示属性不可交变,方法不可覆盖,类不可继承。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。