04747Java语言程序设计(一)复习题汇总
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
04747Java语⾔程序设计(⼀)复习题汇总Java语⾔程序设计(⼀)复习题
⼀、选择题
1、下⾯哪个不属于
...Java语⾔的特点(C、编辑型)
A、动态性
B、⾯向对象
C、编辑型
D、多线型
2、算符“&&”适⽤于数据类型()
A、int
B、long
C、double
D、boolean
3、下列说法正确的是()
A、不需定义类,就能创建对象
B、属性可以是简单变量,也可以是⼀个对象
C、属性必须是简单变量
D、对象中必有属性和⽅法
4、下⾯不是
..合法Java标识符的是()
A、ab
B、$_3
C、3ab
D、ab3
5、下⾯不是
..Java移位运算符的是()
A、>>>
B、<<<
C、>>
D、<<
6、下⾯哪个不是
..Java的关键字()
A、double
B、Integer
7、下列算符中优先级别最⾼的是(C、!= )
A、&
B、&&
C、!=
D、?:
8、关于main()⽅法说法正确的是()
A、⼀个类中可以没有main()
B、所有对象都必须放在main()⽅法中
C、main()必须放在公共类中
D、main()⽅法头的定义可以根据情况任意修改
9、下列标签名中⾮法
..的是()
A、here
B、there
C、this
D、that
10、下⾯各组中全部属于字型要素的是()
A、字体、字形和⼤⼩
B、字体、风格和字号
C、字形、风格和字号
D、字形、颜⾊和字号
11、下列不是
..构造⽅法特征的是()
A、名字与类相同
B、是⽆参考的
C、是viod型
D、是⼀种特殊⽅法
12、关于代码“String [][]s=new String[10][];”的正确陈述是()
A、该⾏代码⾮法
B、s 是⼀10⾏10列的数组
C、s 是⼀包含10个⼀维数组的⼆维数组
D、s中每个元素设为""""""
13、如想限制类本⾝对静态成员的访问,应该()
C、不使⽤任何关键字
D、不能限制
14、下列不属于类的属性修饰符的是()
A、public
B、abstract
C、private
D、final
15、⼀个创建对象的操作中,不包含
...()
A、释放内存
B、对象声明
C、分配内存
D、调⽤构造⽅法
16、下列关于封装性的说法中,错误
..的是()
A、是⼀种信息隐蔽技术
B、使对象之间不可相互作⽤
C、是受保护的内部实现
D、与类有关,封装的基本单位是对象
17、代码“new List (10,true);”的含义是()
A、创建含10列的新列表
B、创建含10⾏的新列表,且允许多重选择
C、创建不多于10个选项的新列表
D、创建含10⾏的新列表,每次选⼀项
18、要为程序的⼦窗⼝设定⼀个由字符串s指定的名字,可以采⽤的代码是()
A、JFrame(s)
B、window(s)
C、new JFrame(s)
D、super(s)
19、下列布局管理器中,哪⼀个会在前个组件相同⾏上放置组件,直到该组件超出容器的宽度,然后从新⾏开始,并把添加的组件居中放置()
A、BorderLayout
B、CardLayout
C、FlowLayout
D、GridbagLayout
20、滚动列表(List)每次选择选项,可以选择的个数是()
A、1
B、多个
C、所有
D、根据列表对象初始化参数确定
21、Java源⽂件的扩展名是()
A、.class
B、.java
C、.jav
D、.cla
22、Java注释⽅式不包括
...C、/** … **/ ()
23、下列说法正确的是()
A、实例⽅法能对类变量和实例变量操作
B、实例⽅法只能对类变量操作
C、实例⽅法只能实例变量操作
D、类⽅法能对类变量和实例变量操作
24、下⾯均为Java关键字的⼀组是()
A、boolean,byte,long,true " "
B、byte, long,true,goto" "
C、goto ,Boolean,byte,true" "
D、bool, long,true,auto" "
25、Java语⾔使⽤的字符集是()
A、ASCII
B、EBCDIC
C、Unicode
D、BCD
26、下⾯的四个选项中,均是⼋进制或⼗六进制数的是()
A、-10,ox8f,011" "
B、oabc,-017,oxc" "
C、0010,-ox10,oxf1" "
D、oa12,ox12,oxa " "
27、下⾯的哪⼀项能正确⽣成5个空字符串()
A、String a[]=new String [5]
B、String 5[a]
C、String [5]a
D、String a[5]
28、下列算符中优先级最低的是()
A、++
B、%
C、?
D、&
29、Java中,⼀个类可以有⼏个⽗类(B、1 )
A、任意
B、1
C、2
D、4
30、类中不加任何访问权限限定的成员属于()
A、default
B、public
C、private
D、protected
31、若有下⾯的类定义“class Bridge {Road road;} class Road{String name;}”它表⽰()
A、"是什么"关系
B、"有什么"关系
C、⼆者都是
D、⼆者皆不是
32、this关键字的含义是表⽰⼀个()
A、指针
B、当前对象
C、⼀个类
D、⼀个⽅法
33、⼀个消息的内容不包括
...()
A、消息接收者
B、接受对象应采⽤的⽅法
C、指⽰接受者做何处理
D、⽅法的参数
34、main()⽅法中有如下代码“Frame f=new Frame(""My Frame""); f.sd Size(100,100);”为在屏幕上显⽰该对象,应增加下⾯哪个代码()
A、f.appear()
B、f.set Foreground()
C、f.set Visible()
D、f.enable
35、下列程序的执⾏结果是()
public class Test
{
public static void main(String args[])
{
float t=9.0f; int q=5;
System.out.println((t++)*(--q));
}
}
A、40
B、40.0
C、36
D、36.0
36、下列关于接⼝的说法,正确的是()
A、接⼝与抽象类是相同的概念
B、实现⼀个接⼝,必须实现接⼝的所有⽅法
C、接⼝之间不能有继承关系
D、⼀个类只能实现⼀个接⼝
37、隐藏⽤户界⾯组件的指令是()
A、disable
B、setVisible
C、remove
D、delete
38、创建了⼀个选择控件对象后,将选项顺序加⼊到控件中的⽅法是()
A、Choice ()
B、remove (int)
C、getSelectItem ()
D、add (string)
39、滚动列表(List)k可以产⽣⼏种事件()
A、1
B、2
C、3
D、4
40、设置组件的背景⾊可⽤⽅法()
A、void setBackgroundColor(Color c)
B、void setForegroundColor(Color c)
C、void setBackground(Color c)
D、void setForeground(Color c)
41、Java的int型变量占内存的字节数是()
A、1
B、4
C、2
D、与机器有关
42、下列选项中全部都是合法的实型常量的是()
A、12.4,12,12.4f,12.4F" "
B、12.0f,2e4f,12.0,6e-4" "
C、6e,12.1,24f,25d" "
D、13.6, 6e0.3,456.7d,e2" "
43、下列说法错误
..的是()
A、⼀个类中的实例⽅法可以调⽤其他实例⽅法
B、实例⽅法可以调⽤静态⽅法
C、静态⽅法可以调⽤实例⽅法
D、静态⽅法可以调⽤静态⽅法
44、若定义int x=3,y;则执⾏语句y=(x++)+(x++)+(x++);后y= ()
A、9
B、12
C、15
D、18
45、下⾯哪个是有效的Java标识符()
A、max_num
B、max-num
C、3DogNight
D、(train)
46、以下关键字中哪⼀个是不可⽤来控制对类成员的访问()
A、public
B、private
C、protected
D、default
47、构造⽅法被调⽤是当()
A、类定义时
B、使⽤对象的属性时
C、使⽤对象的⽅法时
D、对象被创建时
48、下列算符中优先级最⾼的是()
A、+
B、instanceof
C、&&
D、^
49、不是⾯向对象技术特点的是()
A、模块化
B、封装
C、继承性
D、多态性
50、接⼝体中不应
..包含()
A、常量定义
B、常量赋值
C、⽅法实现
D、⽅法声明
51、在成员变量与局部变量重名时,若想在⽅法内使⽤成员变量,要使⽤关键字()
A、super
B、import
C、this
D、return
52、下列定义中,哪⼀个是⾮法
..的()
A、class A{int a,b;…}" "
B、class A{int i,j; i=j=10…}" "
C、class A{int i; float f;…}
D、class A{int i=12; float f1=1.2f;…}
53、编译代码“class MySstring extends String{}”会出现的情况()
A、成功编译
B、不能编译,因为没有main⽅法
C、不能编译,因为String是abstract类型的
D、不能编译,因为String是final类型的
54、若有定义“String tom=""boy"";String hill=""boy"";”则表达式(tom==hill)的值为()
A、1
B、true
C、false
D、0
55、下列关于继承的论述中,错误
..的是()
A、继承具有传递性
B、继承关系也称为"即是"(is a)关系
C、⽀持多继承
D、继承提⾼了系统的可重⽤性
56、为在容器底端放⼀个按钮,不管⽤户如何改变尺⼨,⽤下⾯哪个布局管理器最简单()
A、BorderLayout
B、GridLayout
C、FlowLayout
D、GridbagLayout
57、把组件放在BorderLayout的下列哪个区域时,它会⾃动垂直调整⼤⼩,但不⽔平调整。
()
A、North or South
B、East or West
C、Center
D、North,South or Center
58、当我们在⼀个容器中添加了多个选择框,且使⽤CheckboxGroup将它们归为某⼀组,则在这⼀组中,⼀个时刻可以有⼏个选择框被选()
A、1
B、2
C、4
D、任意
59、创建⼀个字体类对象,字体的式样为斜体,可使⽤的参数是()
A、Font.PLAIN
B、Font.BOLD
C、Font.ITALIC
D、Font.BOLD和Font.ITALIC
60、选择⼀个菜单项,可产⽣的事件是B、ActionEvent ()
⼆、填空题
61、Java源⽂件经编译产⽣的⽂件称为______________。
62、定义int x=3,y;则执⾏语句:y=(++x)+(++x)+(++x);后y=___________。
63、已知char a[]=new char[5];则a.length的值为___________。
64、如果Sting tom=""I am a good cat "";则tom.indexOf(""a"")的值为___________。
65、在⽂本框中设置⽂本的⽅法是_____________。
66、对于⽂本区事件源,要获得监视器的⽅法是_______________。
67、如想改变某组件的尺⼨,可⽤⽅法______________。
68、调⽤⽅法时,若要进⾏参数的引⽤传递,参数类型可为_____________。
69、执⾏”15.2%5”的结果是______________。
70、把字符变量c设置为⼀个空格字符的⽅法是_______________。
71、定义int a=2,b=4;boolean x;则执⾏语句x=a>b;System.out.println(x);的结果为_________。
72、多线程是Java程序的____________机制,它能同步共享数据、处理不同事件。
73、表达式”10|2”之值应为__________。
74、接⼝中默认的访问控制⽅式是__________。
75、定义String tom=""我们是学⽣"";则tom.length()的值是________。
76、若声明⼀个类不能被继承,即不能有⼦类,⽤关键字__________。
77、获取⽂本框的⽂本的⽅法是__________________。
78、使选择控件(Choice)获得监视的⽅法是__________________________。
79、Java源程序编译后⽣成的字节码⽂件扩展名为______________。
80、若有定义Sting jerry=""I love Tom"",s1;则s1=jerry.substring(2)的值为______________。
81、byte型数组在内存中的存储形式是________________。
82、表达式”5&2”之值应为_________________。
83、在Java语⾔中,如果⼀个⼩数的后⾯没有任何字母标记,计算机默认为____________型。
84、常量定义的修饰符为________________。
85、数据下标越界,则发⽣异常,提⽰代码是____________________。
86、借助于BorderLayout,为往容器中添加⼀个组件,代码为___________________。
87、基于Frame创建了⼀个窗⼝,该窗⼝⽤_____________________⽅法显⽰。
88、⽤于⽂本区中设置⽂本同时清除⽂本区中原有⽂本的⽅法是___________________。
89、Java下的循环语句包括for,while和________________。
90、定义Sting jerry=""I love Tom"",s1;则s1=jerry.substring(2,5)的值为__________________。
三、简答题
91、Java语⾔标⽰符的命名规则是什么?
java表⽰的命名规则:
1、标识符有字母、下划线“_”、美元符号“$”或数字组成
2、标识符必须是以字母数字和下划线美元符号开头
3、标识符区分⼤⼩写
4、java标识符不能与java语⾔当中的关键字重名,且取名字应该有意义
92、GridLayout布局有哪些构造⽅法?
在使⽤GridLayout( )布局⽅式是 1 GridLayout(),⽣成⼀个单列的GridLayout布局
2 GridLayout( int row,int col),设定⼀个有⾏有列的GridLayout布局
3 GridLayout( int row, int col,int horz, int vert), 设定⼀个有⾏有列组件的⽔平距离和垂直间距的GridLayout布局
93、请写出以下代码:⽤do…while语句计算整数n的⼗进制位数。
c=0;
do{
n/=10;c++;
}while(n!=0);
94、请写出⼀条语句:能够绘制起点是(2,3)终点是(200,300)的线段。
Line2D line=new Line2D.Double(2,3,200,300);
95、什么是接⼝?为什么要定义接⼝?接⼝与类有何异同?
接⼝是⼀种特殊的类,由常量和抽象⽅法组成。
⼀个类只能有⼀个⽗类,但是它可以同时实现若⼲个接⼝。
;接⼝的注意事项:接⼝定义⽤关键字interface,接⼝中的数据成员全是常量,接⼝中没有⾃⾝的构造⽅法,所有成员⽅法都是抽象⽅法,接⼝也具有继承性可以通过extends关键字声明该接⼝的⽗接⼝。
96、对于下列描述,各写出⼀条语句完成要求的任务
(1)⽐较s1中的串和s2中的串的内容的相等性;
(2)⽤“+=”向串s1附加串;
(3)判断s1中串的长度;
1 public class Test{
public static void main(String args[]){
String s1="abcde";
String s2="abc";
if (s1.equals(s2)) {
System.out.println("字符串s1和s2相等。
");
} else {
System.out.println("字符串s1和s2不相等。
");
}
2 s1 += s2;
3 System.out.println("s1=\""+s1+"\"");
System.out.println("字符串s1的长度为: "+String.valueOf(s1.length()));
}
}
97、Java有哪些基本数据类型,有哪些⾮基本数据类型?
Java语⾔提供了⼋种基本类型:
六种数字类型(四个整数型,两个浮点型)
字节型byte 8位短整型short 16位整型int 32位长整型long 64位
单精度float 32位双精度double 64位⼀种字符类型 ,字符型char 8位还有⼀种布尔型。
布尔型:boolean 8位可存储"True"和"false"
98、请写出⽰意获得URLConnection对象的代码。
`
URL mu=new URL(“/doc/f4cdcc7a31b765ce050814da.html /”);
URLConnection muC =mu.openConnection( );
99、请写出以下代码:当a>b成⽴时,输出a,否则,输出b。
If(a>b)
System.out.println(“MAX=”+a);
Else
System.out.println(“MAX=”+b);
100、请写出以下代码:⽤for语句,求s = 1 + 2 + 3 + …+ 100。
for (s=0,i=1;i<=100;i++)
s+=I;
101、请写出⼀条语句,能够绘制左上⾓是(20,30),宽是80,⾼是40的矩形。
Retangle2D rect=new
Retangle2D.Double(20,30,80,40);
102、JRadioButton类有哪些常⽤的构造⽅法?
Button() 构造按钮Button(String s) 构造按钮,标签是s
103、Java程序与数据库连接有哪些⽅法?
1 使⽤JDBC-ODBC桥接器与数据库连接2纯JA V A的JDBC驱动程序实现与数据库连接104、线程的⽣命周期有哪⼏个状态?
⼀个线程的的⽣命周期可以分成两阶段:⽣存周期和死亡周期,其中⽣存周期⼜包括运⾏状态和等待状态.当创建⼀个新线程后,这个线程就进⼊了排队状态,当线程中的⽅法start()被调⽤时,线程就进⼊⽣存周期,这时它的⽅法isAlive()始终返回真值,直⾄线程进⼊死亡状态。
105、试写出以下程序:⽤while语句,输出数1⾄n。
count=1;
while=( count<=n);
if(count
System.out.print(count+” . ”);
System.out.print(count);
106、写出以下代码:为⼀个JPanel容器设定CardLayout布局。
Ca rdLayout myCard=new CardLayout( );
JPanel P=new JPanel( );
p.setLayout(myCard);
107、请写出⼀条语句,能够绘制左上⾓是(20,30),宽100,⾼50的椭圆
Ellipse2D=new Ellipse2D.Double(20,30,100,50);
108、画板处理程序包括哪些⽅⾯?
1通过继承声明JPanel类的⼦类,⼦类中有些组件,并在构造⽅法中将组件加⼊⾯板2声明JP
anel⼦类对象3创建JPanel⼦类对象4将JPanel⼦类对象加⼊到某个容器中
四、程序分析题
109、下列程序的功能是验证6~1000之内的所有偶数是否都能表⽰为两个素数之和(歌德巴赫猜想),阅读程序并把标号处所缺代码补充完整。
public class Test
{
public static void main(String args[])
{
for(int i=6; i<=1000; i+=2)
{
for(int j=2;j<1000;j++)
{
①______________________________________
System.out.println(i+”=”+j+”+”+(i-j)); break;
}
}
}
public static boolean zhishu(int n)
{
int i;
for(i=2;i<=n/2;i++)
if(n%i==0) return ②________________________;
return true;
}
}
110、下列程序的功能是单击按钮【求平⽅】,就能够输出⽂本框中输⼊数据的平⽅,阅读程序并把标号处所缺代码补充完
import java.awt.*;
import java.applet.*;
import java.awt.event.*;
public class Tuxing extends Applet
{
public TextField in=new TextField(10);
Button btn=new Button("求平⽅");
public Label out=new Label("结果是");
public void init()
{
setLayout(new FlowLayout());
add(in);
①_______________________;
add(out);
btn.addActionListener(new btnAction());
}
public void paint(Graphics g)
{
g.drawString("Welcome to Java!!", 50, 60 );
}
class btnAction ②_________________________ {
public void ③_____________________________ {
String s=in.getText();
double d=Double.parseDouble(s);
double sq=d*d;
out.setText(d+"的平⽅是"+sq);
}
}
}
111、请给出下列程序的运⾏结果:
public class Test
{
public static void main(String args[])
{
int i = oxFFFFFFF1;
int j = ~i;
System.out.println("j=" + j);
}
}
112、请给出下列程序的运⾏结果:
public class Test
{
public static void main()
{
int i = 1, j = 10;
do
{
if(i++ > --j)
continue;
}
while(i < 5);
System.out.println("i=" + i + " j=" + j);
}
}
113、下列程序的功能是对输⼊的年份判定⼀下是不是闰年,阅读程序并把标号处所缺代码补充完整。
import javax.swing.*;
public class Test
{
public static void main(String args[])
{
String cc;
int x;
cc=JOptionPane.(①_____________________)(“请输⼊⼀个整数:”);
x=Integer.(②__________________)(cc);
if(③_____________________________________)
System.out.println(x+”年是闰年!”);
else
System.out.println(x+”年不是闰年!”);
}
}
114、下列程序的功能是创建了⼀个线程并运⾏,阅读程序并把标号处所缺代码补充完整。
public class ThreadTest
{
public static void main(String args[])
{
Hello h=new Hello();
①___________________________;
t.start();
}
}
class Hello implements Runnable
{
int i;
public void run()
{
while(true)
{
System.out.println("Hello"+i++);
if(i==5) break;
}
}
}
115、给出下列程序的运⾏结果:
public class Test
{
public static void main(String[] args)
{
System.out.println(6 ^ 3);
}
}
116、给出下列程序的运⾏结果:
class Value
{
public int i = 15;
}
public class Test
{
public static void main(String argv[])
{
Test t = new Test();
t.first();
}
public void first()
{
int i = 5;
Value v = new Value();
v.i = 25;
second(v, i);
System.out.println(v.i);
}
public void second(Value v, int i)
{
i = 0;
v.i = 20;
V alue val = new Value();
v = val;
System.out.println(v.i + " " + i);
}
}
117、下列程序的功能是对数组中的数据逆序输出,阅读程序并把标号处所缺代码补充完整。
import java.io.*;
public class Test
{
public static void main(String args[])
{
int i;
int a[]=new int[5];
for(i=0;i<5;i++) a[i]=(i+100)/2;
for(①___________________;i--) System.out.println(a[i]);
}
}
118、给出下列程序的运⾏结果: public class FooBar
{
public static void main(String[] args) {
int i = 0, j = 5;
tp:
for(; ; i++)
{
for( ; ; --j)
if(i > j)
break tp;
}
System.out.println("i=" + i + ",j=" + j); }
}
119、给出下列程序的运⾏结果: public class Test extends TT
{
public void main(String args[])
{
Test t = new Test("Tom");
}
public Test(String s)
{
super(s);
System.out.println("How do you do?"); }
public Test()
this("I am Tom");
}
}
class TT
{
public TT()
{
System.out.println("What a pleasure!");
}
public TT(String s)
{
this();
System.out.println("I am "+s);
}
}
120、观察下⾯的程序⽚断,指出其中的⽗类和⼦类,以及⽗类和⼦类的各个域和⽅法。
class SuperClass
{
int data;
voidsetData(intnewData)
{
data=newData~
}
intgetData()
{
return data~
}
}
class SubClass extends SuperClass
{
int suhData;
void setSubData(intnewData)
{
suhData=new Data;
intgetData()
{
return subData;
}
}
五、程序设计题
121、请设计⼀个动物类,它包含动物的基本属性。
例如名称、⼤⼩、重量等,并设计相应的动作,例如跑、跳、⾛等。
122、编写⼀个程序,使⽤户能够使⽤⿏标在applet中绘制⼀个矩形。
按住⿏标左键,确定矩形的左上⾓,然后拖动⿏标,在需要的位置(即矩形右下⾓)释放⿏标。
另外,在状态栏中显⽰矩形⾯积。
123、编写⼀个程序:输出50以内的质数。
124、编写程序计算电费,电⼒公司的电费计算标准如下:240度以下,每度0.15元;
240度⾄540度间,每度0.25元;超过540度,每度0.45元。
输⼊⼀⽤电度数,
输出电费值。
125、设计⼀个长⽅形类,成员变量包括长和宽。
类中有计算⾯积和周长的⽅法,并有相应
set⽅法和get⽅法设置及获得长和宽。
编写测试类测试是否达到预定功能。
要求使⽤⾃定义的包。