java编程基础复习题.doc
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
java编程基础复习题.doc
“Java程序设计基础”课程习题
一、填空
1.Java程序分两类____ applet __ 和application, Java Application类型的程序,程序从
…main___ 开始执行。
2.定义一个Java类时,通过关键字.extends _____ 指明该类的父类。
一个类可以有____ 1 —
个父类。
3.用public修饰的类称为—公共类—。
用public修饰的类成员称为公有成员。
被说明为
public的内容可以被_所有的其他类_____ 使用。
如果public类文件与使用它的类文件不在同一目录屮,需要通过_impon—语句引入。
4.用_private_修饰的类成员称为私有成员。
私有成员只能在_本类—中使
用。
5.如果子类定义的成员变量与父类的成员变量同名,称为—覆盖—,要表明使用子类的成员
变量,可以在成员变量前加上关键字—this— o
6._Object—类是Java类库中所有类的父类。
7.Jav“字符使用—16—位的字符集,该字符集成为—UTF-I6—。
8.当子类中定义的方法与父类方法同名吋,称子类方法—重载______ 父类方法,子类默认
使用自己的方法。
使用父类的同名方法,必须用关键字-super—说明。
9.Java源程序文件名的后缀是_。
java _____ , Java字节码文件名的后缀是_。
class ______ 。
10.Java类名的第一个字母通常要求_大写—o
11.Java程序由_类定义_____ 组成,每个程序有一个主类,Java程
序文件名应与—主—
类的名称相同。
12.Java—application __ 类型的程序需要main()方法,程序从—main方法_____ 开始执行。
13.布尔型数据类型的关键字是-boolean—,占用位数是_1—,有—true_和
.false ____ 两种值。
整型数可以采用_八进制—、—十进制—和_十六进制—
三种进制表示。
14.八进制整数以数字_o—开头。
十六进制整数以—Ox—开头。
15.int整型数占用32 位内存。
lon£整型数占用&4 位内存。
16.127L表示long类型常量。
17.根据占用内存长度将浮点常量分为floal 和double 两种。
18.单精度浮点常量占用32 位内存,双精度浮点常量占用一64—位内存。
19.在Java语言中,字符串“ABC\tD\bE中包括7 个字符。
20.数学关系4<x4&&x<9 数学关系x>3且x<=10对应</x
的Java表达式是_______ o数学关系x>3或xv?10对应的Java表达式是_______ 。
21.逻辑表达式(nac&&falsc&&true 的结果是_false _____ 。
22._new ____ 运算符的作用是根据对彖的类型分配内存空间。
当对彖拥有内存空间时,
会自动调用类屮的构造方法为对象—初始化—o
23.省略访问修饰符的类只能被同—一个包—中的类使用,称之具有—包级—访问特性。
24.用public修饰的类称为—公共类—o用public修饰的类成员称为公共成员。
被说明为
public的内容可以被—所有的其他类—使用。
如果public类文件与使用它的类文件不在同一目录中,需要通过—import __________ 语句引入。
25.用_private_ 修饰的类成员称为私有成员。
私有成员只能在—本类—使用。
26.在类中可以定义多个具有相同名称、但参数不同的方法,这种做法称为■重载—o
27.如果子类定义的成员变量与父类的成员变量同名,要表明使用子类的成员变量,可以在成
员变量前加上关键字_this—。
28.在java, lang包中提供了两个字符串类,分别是______ String—和—StringBuffer ____ 。
字符串类提供的求字符串长度的方法是_」ength_ o
29.数学类Math屈于_java0 lang _______ 包。
数学类提供的常量和函数都是_____ s tatic_类
型,无需建立数学类对象,可以直接通过类名引用数学类的常量和函数。
例如,引用圆周率兀的方法是_Matho PI—。
二、判断
1.++i执行后,i值不变,表达式的值也不变。
(false )
2.浮点型数据的默认类型为float类型。
(false )
3.设计一般类和主类时,可以有多个一般类,但只能有一个主类。
(ture)
4.类必须通过创建对象来引用。
(false)
5.private声明的变量,不能被其它类引用。
(ture)
6.StringBuffer 类和String 类没有区别。
(false)
7.printin ()和print ()没有区别。
(false)
& JavaApplication 和JavaApplet 没有区别。
(false)
9.Java程序由类组成。
(ture )
10.Java程序由函数组成。
(false)
11.字符$不能作Java标识符的第一个字符。
(false)
12.—个数组中能够存储不同类型的数据。
(ture )
13.二维数组需要用两个下标才能确定数组元素。
(ture )
14.在Java语言中,定义数组后就可以使用。
(false)
15.Java提供了许多系统定义类,用户可以直接使用。
(hire)
16.final类可以有子类。
(false)
17.没有分配内存空间的对象不能使用。
(false )
18.final类型的变量是符号常量,其值不能改变。
(ture )
19.不可以为类定义多个构造方法。
(false)
20.一个类不能既是子类又是父类。
(false )
21.子类可以继承父类的所有成员。
(false )
22.子类只能继承父类成员,不能修改父类成员。
(false)
23.Java语言只支持类的单继承,不支持类的多继承。
(ture )
24.在类中定义同名方法时,可以依靠返回值区别同名方法。
(false)
25.Boolean 和boolean 没有区别。
(x)
三、选择题
1.为AB类的一个无形式参数、无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为(A )o
A)static void method() B)public void method()
C)final void method() D)abstract void method()
3.不能用new运算符创建对象的类是(B )。
A.静态类
B.抽象类c.最终类D.公有类
4.在子类中重新编写父类方法的做法称为(B )。
A.方法重载
B.方法覆盖
C.方法继承
D.方法重用
5.对于构造方法,下列叙述正确的是(C)。
A.构造方法是类的一种特殊方法,它的方法名可以任意取
B.构造方法的返回类型只能是void型
C.如果类屮定义了构造方法,系统就不再提供默认构造方法
D.类中必须定义构造方法
6.为类定义多个名称相同,但参数不同的方法的做法称为(A)。
A.方法重载
B.方法覆盖
C.方法继承
D.方法重用
7.对于构造方法,下列叙述正确的是(D)。
A)构造函数不允许重载
B)用户不能直接调用构造方法,只能由new运算符调用它C)父类对象不可以用子类构造方法实例化
D)构造方法是实现对象初始化的唯一方法
8.类的两种基本成分是(A)和成员方法。
A)成员变量B)包C)对象D)接口
9.定义接口的关键字是(C)。
A.extends
B. class
C. interface
D. public
10."/*thelastone*/"是下列(D)语句。
A)表达式语句B)条件语句C)循环语句D)注释语句
11.当用户退岀浏览器时,Applet程序调用的方法是(D )。
A. stop()
B. init()
C. start()
D. destroyO
12.painl()方法有一个固定的参数,该参数的类型是(D )。
A. applet
B. Applet
C. graphics
D. Graphics
13.在编写Java Application程序时,若需要使用到标准输入输出语句,必须在程序的开头写上(C)语句。
A. import java.awt.* ;
B. import java.applet.Applet;
C. import java.io.* ;
D. import java.awt.Graphics ;
14.对彖之间的交互是通过传递(B )来实现的。
A)对象B)方法C)类D)消息
15.Java Applet中,用來向Applet窗口输出字符或图形的常用方法为(A)。
A)paint B)init C)draw D)play
16.推LLl Java语言的公司是(D )。
A. IBM
B. Applet
C. Microsoft
D. Sun
17.与Java语言相近的语言是(B )。
A. BASIC
18.System ? out ?
A. 15
19.System ? out B. C++ C. FORTRAN D. PASCAL
print(12+3)的输出结果是(A)。
B. 123 C?“123” D. “15”
print( “ 12”+3)的输出结果是(C)。
B? 123 C. “ 123”D?"15”
20 .在Java语言中,字节数据类型的关键字和默认值是(D)。
A. byte 和0
B. byte 和1
C. boolean 和(rue
D. boolean 和false
21.—个字符类型数据占用的二进制位数是(B ) o
A. 8 B? 16 C? 32 D? 64
22.表示单精度和双精度浮点常量的字母分别是(B)。
.
A?C和D B. F 和D C. B 和D D. L 和D
23.指出下面哪些是合法的标识符(B) o
A.3persons
B.TwoUsers
C.*point
D.this
24.指岀下面哪些是将一个十六进制值赋值给一个long型变量(D) o
A.long number=3451。
B.long number=0345
C.long number=0345L
D? long number=0x345L
25.下面的哪些声明是合法的(A) o
A.long l=4990.5D;
B.int i=4L;
C.float f= 1. 1;
D.double d=34. 4;
26.1. 23E2表示的数据是(C) o
A 1? 23X2B
1- 23X10'2
C. 1. 23 X 1()2
D. 0. 123 X102
27.在Java语言中,,只有整型数据才能进行的运算是(C )
A.*
B. /
C. %
D. +
28.执行下面语句后, a.b和c的值分别是(C) o
int a=2;
int b=(a++)*3
;
int c=(++a)*3
;
A. 2 66
B. 4 9 9
C. 4 612
D. 3 9 9
29.根据下面的代码:
if(x>0){System, out. println("第一”);) else if(x>—3){System, out. println(第二”);)else {System, out. println (“第三”);}判断x的取值在什么范围内时将打印字符串“第二”()?D
A.x>0
B.x>—3
C.x<= 一3
D.xv=0&x> — 3
30.用于修饰类的访问修饰符是(A) o
A. public
B. private Co protected D. statk
31.用abstract修饰的类称为(B )。
A,静态类B.抽象类C.最终类D.公有类
32.用final修饰的类称为(C)。
A.静态类B?抽象类 c.最终类 D.公有类
33.不能用new运算符创建对象的类是(B )。
A.静态类
B.抽象类 c.最终类 D.公有类
34.如果希望方法不能在子类中更改,定义方法时要使用的修饰符
是(B)。
A. static
B. final C- abstract D. native
35.如杲希望直接通过类名访问方法,在定义方法吋要使用的修饰符是(A) o
A? static B? final C. abstract D. native
36.为类定义多个名称相同,但参数不同的方法的做法称为(A)。
A.方法重载
B.方法覆盖
C.方法继承
D.方法重用
37.在子类中重新编写父类方法的做法称为(B )。
A.方法重载
B.方法覆盖
C.方法继承
D.方法重用
38.定义接口的关键字是(C)。
A. extends
B. class
C. interface
D. public
39.要引入applet包屮的所有类,应使用的语句是(D )。
A ? import java.applet.Applet
B ? import java.applet. App let;
C? importjava.applet* D? importjava.applet.*;
40.当启动Applet程序时,首先调用的方法是(D )。
A. stop()
B. init()
C. start()
D. destroyO
41.当用户退出浏览器时,Applet程序调用的方法是(D)。
A. stop()
B. init()
C. start()
D. destroyO
42.在Applet程序占用的屏幕上显示文字、图形等信息,应使用的方法是(A)。
A. paint()
B. init()
C. start()
D. destroyO
43.paint()方法有一个固定的参数,该参数的类型是(D)。
A. applet
B. Applet
C. graphics
D. Graphics
44.执行下面的程序段后,向量v的序列是(D )o
Vector v=new Vector( 10);
v. addElement(” C++”);
v. addElement (v Java” );
V. addElement(” Basic”);
V. SetElementAt( “SQL—SeVer”,2);
v. removeElementAt(0);
A. ” O+”” Java” ” SQL-Sever"
B. ” C+十”” Java”” Basic”
C. ” Java” “SQL?Sever”
D. ” Java”” Basic" ” SQL?Seve「”
45.提供println()方法和print()方法的类是(B )。
A. PrintStream
B. System
C. InputStream
D. DataOutputStream
四、简答题
1.写岀java异常处理的格式,并简要说明。
抛出异常:使用Throw语句抛出异常
自定义异常:用extends关键字创建自己的异常类
2.比较两个字符串的方法有哪些?每个方法的返回值各是什么数据类型?
3.在HTML文件中如何向嵌入的Applet程序传递参数,Applet 程序乂如何获得这些参数?
4.Java对标识符有什么规定?下列标识符中哪些是Java合法的标识符?
2Myclass new name %xy3 —name _name
myphone $s~avy
5.Java字符采用的国际标准编码是什么?有何特点?
Unicode编码(万国码)特点:便于东方字符和西方字符处理,这样与其他语言相
比,山羽处理多种语言的能力大大加强
6.类与对象的关系是什么?如何创建和使用对象?
将具有相同属性的及相同行为的一组对象称为类,对象是类的具体化。
对象声明:
类名对象名二new类名();
对象调用:
访问屈性:对象名。
屈性名;
访问方法:对象名。
方法名();
7.static方法如何调用?非static方法如何调用?
在java中,静态域(类变量)可以通过类名直接访问,也可以通过实例对象来访问,两种方法的结果是相同的。
Static方法内部不能直接调用肥静态方法,可以在调用之前实例化
非静态方法所在的类, 再用类点方法来调用。
8.在已有类的基础上派生新类有什么好处?
可以继承父类已有的代码,并加入自己的新代码
9.什么是类成员方法的重载?重载的作用是什么?
重载是指在一个类里而可以有多个方法名字相同的不同方法。
重载的作用就是传递不同的参数实现相同的效果。
10.什么是成员方法的覆盖?覆盖的作用是什么?
子类重新定义与父类通明的方法,称为对父类方法的覆盖。
定义与父类相同的方法之后, 在父类屮相同的方法在子类屮是不存在的作用:可以是程序更加简洁,代码更少
11?什么是多态?实现多态的方法有哪些?
是指允许一个借口访问动作的通用类的性质。
一般的,多太性的慨念长被解释为“一个借口,多种方法。
”
实现多态的两种犯法:重载和重写
12.接口有哪些特征?如何定义和实现接口?
13.包的作用是什么?如何建立包和引用包?
14.JavaApplet中通常包括方法init(), start(), stop(), destroy(),说明这些方法的作用。
15.在HTML文件屮如何向嵌入的Applet程序传递参数,Applet 程序又如何获得这些参数?
16.比较两个字符串的方法有哪些?每个方法的返回值是什么数据类型?
五、编程题
1.编写一段application程序,计算梯形的而积。
(共40分)
(1)创建一个类,类名为学生姓的拼音加上学号(例如:学生“张三”学号1,类名^zhangl), 在
该类屮添加属性:
成员变量x,y,h (梯形的上底、下底和高):类型为单精度浮点型数据
一个构造方法(有三个参数),用于为梯形的上底、下底和高进
行赋值
一个成员方法:area()返回值为梯形的面积
⑵ 编写主类(类名为N1),利用构造方法赋值(x,y,h分别为2, 4,8)创建对彖al,显示输岀梯形
的面积。
2.编写Application程序,模拟银行存取款业务。
1)建银行帐户类bank,
添加变量:储户现有款项account (int型)
添加方法:
存款的方法income:带有一个参数,用来表示存入的钱数(int 型),无返冋值。
取款的方法takeout:带有一个参数,用来表示取出的钱数(int 型),无返回值。
显示余额的方法show:无参数,无返冋值。
2)建立主类C1,创建对象(模拟储户名zhang3),存款1000,取款500,显示余额。
3.编写Application 程序:
1)创建一个类矩形类Triangle:
成员变量a,b (a为底,b为高);
构造方法:为a, b赋值;
添加两个成员方法:分别计算周长和面积。
2)编写主类,利用Triangle输出a二2, b二3吋(使用构造方法赋值)矩形的周长和面积。
4.首先定义一个StringBuffer,类对象s,然后通过append()方法为对象s添加26个小写字母。
要求每次添加一个字母,共添加26次。
(字母a的编码对应整数为97, b为98,以此类推)
5.利用数学类提供的平方根方法计算并输!1! 1. 0, 2. 0, 3. 0, (10)
0的平方根之和。
6.请将下面程序补充完整。
说明程序的类型、运行结果和字节码文件名。
〃程序文件名为MyApplication. java
public class ______
{public main(String[] args)
{System, out. println(n Welcom to Java World"); }
}
7.请将下面程序补充完整。
说明程序类型、运行结果和字节码文件名。
//程序文件名为Appletl. java
import java. awt. *;
import java, applet. *;
public class _______ extends Applet
{public void paint(Graphics g)
{g. drawString(M Welcom to Java World v ,20, 20); }
}
为上面程序编写一个HTML文件,将Appletl. class字节码文件像入嵌入其中。
8.编写一个Java Applicatin程序。
程序屮首先定义一个三行四列的二维数组,然后利用属性length输出数组的行数和各行的列数。
9.编写程序,根据考试成绩的等级打印岀百分制分数段。
设:A为90分以上,B为80分以上,
C为70分以上,D为60分以上,E为59分以下。
要求在程序中使用开关语句。
10.编写程序,计算n的阶乘(n!),设n=10o
11?写出下面程序的输出结果。
public class AreaClass
{public static void main(String[]args)
{System, out. printing边反为4的正方形面积是”+area⑷);System, out. println("边长为 4 的正方形周长是”+clrcumfei*ence(4));static double circumference(double len)
{return 4*len;)
static double area(double len)
{return len*Ien; } }
12.将下血程序补充完整,并写出输出结果。
class Myclass
{ ______ inty: 5:______ 〃定义y为私有变量
___________ void show() ______ 〃定义show()为公有方法
System. out. printlnf'y:”+y);
} }
public class-UseMyclass
{public static void main(String args[])
{ ______ ; 〃定义Myclass类的对象Ob
___________ ; 〃调用方法show()
} }
13.指出下血程序中的错误,并修改正确。
class Class2
{private int y; private void show()
{system.out.printlnC'show method is private”);} public void usesecret()
{show(); }
}
public class Classi
{public static void main(String args[])
{Classi Ob=new Class 1();
/doc/523323356.html,esecret();
Ob.show();
14?定义student类,其屮包括四个私有变量(name, age, sex, score)^ 一个构造方法和show ()方法。
各成员的含义如下:*变量name为字符串类型String,用于存储学生的姓名。
宕变量age为int类型,用于存储学生的年龄。
冶变量sex为boolean类型,用于存储学生的性别,男生为false,女生为true。
*变量score为double类型,用于存储学生的成绩。
*构造方法包括四个参数,用于为变量(name, age, sex和score)赋值。
*show()方法无参数,用于输出变量(name, age, sex和score)的值。
接受用户输入的10个整数,15.编写一个字符界面的Java Application程序,
并输出这10个整数的最大值和最小值。
16、编程实现:从键盘输入10个整数,求这10个数中的最大值和最小值。
17、设有一字符串数组中保存你5个好友的名字,从键盘输入一个字符串,判断是否为你5 个好友之一的名字。
18、编写程序:口定义一个方法void power(int x,int y),其功能是计算整数x的y次方,并在主方法中测试。
上一页下一页。