潍坊学院JAVA考试习题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、选择填空题
1.以下哪个不是Java的原始数据类型()
(A)int (B)boolean(C)float (D)String
2.Java程序的执行过程中用到一套JDK工具,其中java.exe是指( )
(A)Java文档生成器(B)Java解释器
(C)Java编译器(D)Java类分解器
3.Java程序设计语言采用的16位代码格式是()。
(A)Unicode (B)ASCII (C)EBCDIC (D)十六进制
4.在Java中,属于整数类型变量的是( )
(A)single (B)double
(C)byte (D)char
5.下列语句片段int a=10,b=4,c=20,d=6; System.out.println(a++*b+c*--d); 的结果为( )
(A)144(B)28
(C)140(D)不能执行
6.下面无效的标识符为:()
(A)A1234 (B)_two(C)jdk1_3 (D)2_cugii
7.int m[]={0,1,2,3,4,5,6},下面哪条语句的结果与数组元素个数相
同()
(A)m.length (B)m.length() (C)m.length+1 (D)m.length()+1
8.编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为( )。
(A) .java (B) .class (C).html (D) .exe
9.给出下面代码:
public class test{
static int a[] = new a[10];
public static void main(String args[]) {
System.out.println(arr[10]);
}
}
那个选项是正确的?( )
(A) 编译时将产生错误;(B) 编译时正确,运行时将产生错误;
(C) 输出零;(D) 输出空。
10.在Java中,不属于整数类型变量的是( )
(A)double(B)long
(C)int (D)byte
11.下面哪些选项是正确的main方法说明?( )
(A) public main(String args[])
(B)public static void main(String args[])
(C)private static void main(String args[])
(D) void main()
12.int index=1;int foo[]=new int[3]; int bar=foo[index]; int baz=bar+index;经过以上代码后,baz的值是()
(A)0 (B)1 (C)2 (D)代码不能编译
13.面向对象技术中的基本概念是()。
(A)类(B)程序(C)方法(D)语法
14.JAVA程序经常用到“递归”,“递归”的基本思想是( )
(A)“让别人反复调用自己”(B)“自己反复调用别人”
(C)“自己反复调用自己”(D)以上说法都不对
15.如果在student类里面的setid()方法带了一个整型参数,给id赋值,并且创建了一个名为scholar的含有20个student对象的数组,则下面哪条语句正确地为第一个scholar赋了一个id号。
()
(A)student[0].setid(1234) (B)scholar[0].setid(1234)
(C)student.setid[0](1234) (D)scholar.setid[0](1234)
16.下面是一个递归JAVA程序,其功能为( )
long Factorial(int n){
if(1==n){
return 1;
}
else
return n*Factorial(n-1);
}
(A)求1-n的和(B)求2到n的和
(C)求n的阶乘(D)求2-n的积
17.MAX_LENGTH是int型public成员变量, 其值保持为常量100,用简短语句定义这个变量。
( )
(A) public int MAX_LENGTH=100;
(B)final int MAX_LENGTH=100;
(C) final public int MAX_LENGTH=100;
(D) public final int MAX_LENGTH==100.
18.static方法可以()。
(A)访问实例变量(B)可以使用this关键字
(C)访问实例方法(D)直接用类名称来调用
19.欲构造ArrayList类的一个实例,此类继承了List接口,下列哪个方法是正确的?( )
(A) ArrayList myList=new Object();
(B)List myList=new ArrayList();
(C)ArrayList myList=new List();
(D) List myList=new List();
20.paint()方法使用哪种类型的参数
(A)Graphics (B) Graphics2D
(C)String (D) Color
21.下列哪个属于容器的构件()
(A)JFrame (B)utton
(C)JPnel (D) Japplet
22.int A[][]={{51,28,32,12,34},{72,64,19,31}};则值为19的元素是()。
(A)a[1][3] (B)A[2][3] (C)A[0][2] (D)A[1][2]
23.采用继承可以减少错误的原因是()。
(A)新类有权访问更少的数据成员(B)新类有权访问更少的方法
(C)可以复制已经创建的方法(D)许多所需要的方法已经被使用和测试过
24.Java编程所必须的默认引用包为( )
(A)java.sys包(B)ng包(C)java.new包
(D)以上都不是
25.下列哪个类声明是正确的()
(A)abstract final class H1{…}
(B)abstract private move(){…}
(C)protected private number;
(D) public abstract class Car{…}
26.关于paint方法,以下说法错误的是()
(A)Java自动调用的
(B)当窗口从隐藏变成显示时自动执行
(C)从缩小图标还原之后自动执行
(D)方法没有参数
27.当子类的方法与父类方法同名且参数类型及个数都相同时,子类可以()父类方法。
(A)覆盖(B)过度使用(C)重载(D)过度代替
28.当创建一个子类的对象时,将首先执行()的构造
函数。
(A)子类(B)父类(C)扩展的类(D)派生的类
29.Float与float的区别是()。
(A)float是一个基本类型而Float是一个类
(B)float是一个类而Float是一个基本类型
(C)都是基本类型(D)都是类
30.static方法可以()。
(A)访问实例变量(B)可以使用this关键字
(C)访问实例方法(D)直接用类名称来调用
31.出现在Java程序文件类定义外面的语句包含()语句。
(A)while (B)System (C)package (D)以上都是
32.当传递数组给方法时,方法接收()。
(A)数组的拷贝(B)数组中第一个元素的拷贝
(C)数组的地址(D)无
33.当子类的方法与父类方法同名且参数类型及个数都相同时,子类可以()父类方法。
(A)覆盖(B)过度使用(C)重载(D)过度代替
34.对象使用时,下面描述错误的是( )
(A)通过“.”运算符调用成员变量和方法
(B)通过成员变量的访问权限设定限制自身对这些变量方法的调用
(C)将一个对象申明为类的成员时,必须在使用前为其分配内存
(D)在方法中使用对象作为参数时,采用引用调用
35.当创建一个子类的对象时,将首先执行()的构造函数。
(A)子类(B)父类(C)扩展的类(D)派生的类
36.给出如下代码:
class Test{
private int m;
public static void fun() {
// some code...
}
}
如何使成员变量m 被函数fun()直接访问( )
(A)将private int m 改为protected int m
(B)将private int m 改为public int m
(C)将private int m 改为static int m
(D)将private int m 改为int m
37.在接口里,所有的()。
(A)变量必须是公有的(B)变量必须是私有的
(C)方法必须是空的(D)方法必须是抽象的。
38.构造方法何时被调用( )
(A)类定义时(B)创建对象时
(C)调用对象方法时(D)使用对象的变量时
39.为AB类的一个无形式参数无返回值的方法method1,书写方法头,使得使用基于该类创建的对象名称作为前缀就可以调用它,该方法头的形式为( )。
(A)private void method1( ) (B)public void method1( )
(C) final long method1( ) (D) abstract void method1( )
40.下列哪些语句关于内存回收的说明是正确的( )
(A) 程序员必须创建一个线程来释放内存;
(B) 内存回收程序负责释放无用内存
(C)内存回收程序允许程序员直接释放内存
(D)内存回收程序可以在指定的时间释放内存对象
41.语句int m[]=new int[34];为()个整数保留了存储空间
(A)0 (B)33 (C)34 (D)35
42.以下有关事件监听器的说法中错误的是()
(A)聆听者必须向产生事件ponent对象注册
(B)一个聆听者只能接收和处理一个ponent对象的事件
(C)一个聆听者能接收和处理多个ponent对象的事件
(D)一个ponent对象可以有多个聆听者
43.给出下面代码段
1) public class Test {
2) int m, n;
3) public Test() {}
4) public Test(int a) { m=a; }
5) public static void main(String arg[]) {
6) Test t1,t2;
7) int j,k;
8) j=0; k=0;
9) t1=new Test();
10) t2=new Test(j,k);
11) }
12) }
哪行将引起一个编译时错误?( )
(A) line 3(B) line 5
(C) line 6(D) line 10
44.子类Doll继承了父类Toy。
假定每个类都有一个public void play()方法。
下面哪一条语句可以从Doll类中调用属于Toy类的play()方法。
()
(A)play( ) (B)this.paly() (C)super.play( ) (D)Doll.play( )
45.当编写一个Java Applet时,以()为扩展名将其保存。
(A).app (B).html (C).java (D).class
46.函数重载是指( )
(A)两个或两个以上的函数取相同的函数名,但形参的个数或类型不同
(B)两个以上的函数取相同的名字和具有相同的参数个数,但形参的类型可以不同
(C)两个以上的函数名字不同,但形参的个数或类型相同
(D)两个以上的函数取相同的函数名,并且函数的返回类型
相同
47.对于下列代码:
1) class Person {
2) public void printValue(int i, int j) {//... }
3) public void printValue(int i){//... }
4) }
5) public class Teacher extends Person {
6) public void printValue() {//... }
7) public void printValue(int i) {//...}
8) public static void main(String args[]){
9) Person t = new Teacher();
10) t.printValue(10);
11) }
第10行语句将调用哪行语句?
(A) line 2 (B) line 3
(C) line 6 (D) line 7
48、下列语句序列执行后,j的值是
int j=2;
for( int i=7; i>0; i-=2 ) j*=2;
(A)15 (B)1 (C)60 (D)32
49、下列语句序列执行后,j 的值是
int j=1;
for( int i=5; i>0; i-=2 ) j*=i;
(A)15 (B)1 (C)60 (D)0
50、以下for循环的执行次数是
for(int x=0;(x==0)&(x>4);x++);
(A)无限次(B)一次也不执行
(C)执行4次(D)执行3次
51、若a和b均是整型变量并已正确赋值,正确的switch语句是
(A)switch(a+b); { ...... }
(B)switch( a+b*3.0 ) { ...... }
(C)switch a { ...... }
(D)switch ( a%b ) { ...... }
52、若以下变量均已正确定义并赋值,下面符合Java语言语法的语句是
(A)b=a!=7; (B)a=7+b+c=9;
(C)i=12.3* %4; (D)a=a+7=c+b;
二、判断题
1.Java的源代码中定义几个类,编译结果就生成几个以.class 为后缀的字节码文件。
()
2.构造函数用于创建类的实例对象,构造函数名应与类名相同,返回类型为void。
()
3.拥有abstract方法的类是抽象类,但抽象类中可以没有abstract 方法。
()
4.Java的坐标系统是相对于窗口的,以像素为单位,原点位于窗口的左下角。
()
5.Java语言中类和接口的继承都可以是多重继承。
()6.重载是指方法名称相同,根据参数个数的不同,或参数类型的不同来设计不同的功能。
()
7.Java语言中,声明一个数组,数组名是一个变量,系统会分配一块内存给它,用来保存指向数组实体的地址。
()8.Java语言中,所有类或接口的父类名称是Frame()10.每个Java Applet均派生自Applet类,但不需加载Applet类,系统会自动加载。
()
11.Java的数据类型有分为原始数据类型和非原始数据类型。
()
12.在Java中main()方法可声明成private static且没有返回值,之前要加上void关键字。
( )
13.父类的变量不能访问子类的成员,子类的变量也不能访问父类的成员。
()
14.在抽象类中不可以定义构造函数。
()
15.覆盖是指定义多个方法,方法的名称相同,但参数个数不同或参数类型不同。
()
16.在Java中每个异常都是一个对象,它是异常类或其子类的实例。
()
17.在Java中,方法的参数传递只有一种形式:值传递。
()
18.if(true){int i=17;} System.out.println(i);运行此程序的结果是输出17
19、在一个Java源程序文件中,可以有多个public类。
()
20、Java中数组的元素可以是简单数据类型的量,也可以是某一类的对象。
()
21、Java有两类程序:Java Application和Java Applet,其中Java Applet程序由嵌入到浏览器中的解释器解释运行。
(T )
22、Java语言中的数组元素下标总是从0开始,下标可以是整数或整型表达式。
(T )
23、无论Java源程序包含几个类的定义,若该源程序文件以
A.java命名,编译后生成的都只有一名为A的字节码文件。
( F )
24.虚拟机是用来解释Java 指令的软件,可以让Java 程序在任何机器上运行.
25.continue 的作用是结束正在进行的,直接进入下一次循环.
26.在一个类中,静态方法只能调用本类中的其他静态成员(包括变量和成员函数).
27.子类不能定义与父类同名的方法.
28、通过String类说明的对象实例在程序运行过程中是不能够更改的;()
29、语句int [][]a=new int[3][4] 可以创建一个整型二维数组;()
30、Java的每个子类的构造函数都要显式的调用它的直接父类的构造函数;()
31、在同一个Java源程序文件中只能有一个标识为public的类;()
32、Java语法格式中允许各种数据类型间进行相互转换;()
33、子类覆盖父类中的同名方法时,其访问权限可以是任意的;()
34.()Java语言除了应用于网络,还可以用于编写单机的应用程序。
35.() Java语言没有自动收集无用内存的功能。
36.() Java语言程序与硬件、软件平台有关
37.()Java语言是解释型语言
38.() Java语言支持类的继承,但不支持类的多重继承
39.()Unicode码与ASCII码不同, Unicode码是16位的,而ASCII码是8位的..
39.() 在Java语言中即支持一维数组,也支持多维数组。
40.()在Java语言中,允许一个类继承一个父类的内容,但不允许继承多个父类的内容
41.()方法的重载是指子类和父类具有相同的名字、相同的参数表,但返回类型可以不相同。
42.() 当一个文件使用完后,必须调用close()方法关闭。
43.() 在定义类时,抽象类中的方法必须是空的方法,不能有任何代码.
44.()在Java中,add()方法是向容器组件中添加控件的方法。
( )45、Java源程序文件中是不区分字母的大小写的。
( )46、Java applet不能够存取客户机磁盘上的文件。
( )47、可以用new来创建一个类的实例,即”对象”。
( )48、Java程序对计算机硬件平台的依赖性很低。
( )49、Java可以用来进行多媒体及网络编程。
( )50、用final修饰的类必须被继承。
( )51、类是对象实例。
( )52、每个类都只能有一个构造方法。
( )53、applet可以运行在浏览器中。
三·编程题
1、写一个完整的程序使用循环结构计算1+3+5+ (99)
和并输出运算结果。
(15分)
2、写出一个Point(点)类,该类具有x,y(表示点的横、纵
坐标)两个属性,并定义两个个构造方法,一个无参数,
将x,y均设置为0,另一对坐标值为参数,设置x,y为给
定坐标值。
该类的show方法输出该点的坐标值。
(15分) 四·阅读JAVA程序,写出运行结果。
1、public class ko5_2{
public static void main(String args[]) {
int x=20,y=30;
if (x>0)
if (x<y)
x-=10;
else
y+=10;
System.out.print("x="+x);
System.out.println("y="+y);
} }
请给出运行结果___________________________ 2、public class ko5_12{
public static void main(String args[]){
int t,z=10;
t=sum(z);
System.out.println("sum="+t); }
static int sum(int x) {
if (x==1)
return(1);
else
return(sum(x-1)*x);
}
}
请给出运行结果___________________________ 3、interface ko6_7interface {
float x=30.5;
float y=4.6;
float total();
}
public class ko6_7 implements ko6_7interface {
float dollar,money;
ko6_7(float a,float b)
{dollar=a;money=b;}
public float total()
{return x*dollar+money/y;}
public static void main(String args[]) {
ko6_7 z=new ko6_7(100,4600);
System.out.print("美金="+z.dollar);
System.out.print("人民币="+z.money);
System.out.print("折合台币="+z.total()); }
}
请给出运行结果___________________________ 4、class koA{
static int a;
public void display(){
System.out.print(“ a=”+a);
}}
class ko13{
public static void main(String args[]){
koA a1=new koA; a1.a=10;
koA a2=new koA; a2.a=20;
koA.a=50;
a1.dispay(); a2.display();
}
}
请给出运行结果___________________________
5、class A{
void callme(){
System.out.println(“Inside A’s callme() method”);
}}
class B extends A{
void callme(){
System.out.println(“Inside B’s callme() method”);
}}
public class Dispatch{
public static void main(String args[]){
A a=new B();
a. callme();
}
}
请给出运行结果___________________________
6、public class BubbleSort{
public static void main(String args[]){
int k,j;
int intArray[]={30,1,-9,70};
int le=intArray.length;
for( j=0;j<le-1;j++)
for(k=j+1;k<le;k++)
if(intArray[j]>intArray[k]){
int t=intArray[j]; intArray[j]=intArray[k];
intArray[k]=t; }
for(j=0;j<le;j++)
System.out.print(intArray[j]+”“);
}}
请给出运行结果______________________
五·填空、请将程序(或部分程序)填写完整。
(20分,每小题2分)
1.运行HelloApp .java Applet小程序的网页如下。
<html>
<applet __①____="HelloApp.class" width=200 height=35> </applet></html>
2、对圆进行数据抽象,并建立类。
class point{ // 定义点类point
int x0; int y0;
point(int x,int y){ //构造方法
this.x0=x; this.y0=y;}
}
class circle{ // 定义圆类circle
point center;
int radius;
___②_____(point p1,int r1){ //构造方法
this.center=p1; this.radius=r1;}
double area(){ // 定义园面积
return Math.PI*radius*radius;}
}
3、建立抽象类figure,并进一步建立矩形类。
public abstract class figure{
public abstract float area();
public abstract float circumference();}
public class rectangle __③____ figure{
public float d;
public rectangle( )
{d=11.4;}
public float area( )
{return d*d;}
public float circumference( )
{return 2*d;}
}
4、封装可以限定类中的成员只被该类本身访问:package p1;
public class ori{
// 要求限定类中的成员只被该类本身访问
___④____ int n_p=2;
void Access(){
System.out.println(“n_p=”+n_p);}
}
5、String类对象的访问。
Class accessString{
Public static void main(String args[]){
String s=”Let’s learn java from the
very beginning .See how to access a String!”;
System.out.println(“The length of String is=”+s.length());
System.out.println(“char at the specified index 6 is=”+____⑤_______);
System.out.println(“The first occurrence of ‘a’is=”+s.indexOf(‘a’));
// System.out.println
}}
6、字符串转化成简单数据类型。
public class StringToObject{
public static void main(String args[]) {
int nInt; double dDouble;
//生成相应的数据类型
String strInteger = new String("314");
String strDouble = new String("3.1416");
nInt = _____⑥_______(strInteger);
dDouble = Double.parseDouble(strDouble);
System.out.println(“简单数据类型: ”+
nInt+””+dDouble);
}
}
一、判断正确与错误:(R为正确,E为错误,请将答案填入表格)
(20分)
(1)j ava解释器生成与体系结构无关的字节码,只要提供相应的java
运行系统,便能在任何类的处理器上运行。
(2)j ava中复合数据类型是由简单数据类型组合而形成的。
(3)i nstanceof是实例运算符,new是内存分配运算符。
(4)c ontinue语句用来结束本次循环,跳过循环体XX未执行的语句,
接着进行下一次循环。
(5)类封装了一类对象的状态(属性)和方法,是一类对象的原形,是创
建对象(实例)的摸板。
是对客观事物的抽象。
(6)数据抽象、继承、覆盖、多态是OOP程序设计四大特点。
(7)一个对象的生命期包括:生成、使用和清除。
(8)方法重载:指多个方法拥有相同的名称,但这些方法的参数不同。
方法只可以是一般方法。
(9)继承:通过继承子类可以实现父类代码的复用,子类继承父类的
状态和行为,同时也可以改写父类的状态或重写父类的方法。
不支持多重继承。
(10)import语句用来引入所需要的类,但Java编译器为所有程序自
动引入ng.
(11)复合类型数组的初始化需要两步空间分配。
先为数组开辟引用
空间,其次再为其元素开辟空间。
(12)“/*”起头,随后是注释内容,并可跨越多行,最后用一个“*/”
结束。
(13)在Windows操作系统下javac HelloApp.java编译成功将生成
Helloapp.class文件。
二、改正程序kf.java中的错误。
(共5个错误,共10分)
1)import java.util.*; //该程序名为kf.java
2)public class kk{
3)public static void main(String a[]) throw IOException {
4)char x;
5)System.out.println("please enter a character:");
6)x=(char)System.in.readLine();
7)if(character.isUpperCase(x))
8)System.out.println("You enter a Upper character");
9)if(Character.isLowerCase(x))
10)System.out.println("You enter a Lower character");
11)}}
格式如右:3) a[ ] args[ ] (表示3行的a[]该成args[])
三、编写程序。
(20分)
1)编写程序。
已知n={11,13,15,17,19},分别求出其阶乘。
(10分)
2)编写JAVA程序求园柱体的表面积和体积,已知底面圆心p为
(5,5),
半径r为10,圆柱体高50。
(10分)
34、以下程序完成统计整个程序中创建的对象的个数的功能,试根据题中环境完成空白。
class ObjectCount
{
④ ;
public static void main(String [] args)
{
ObjectCount oc1 = new ObjectCount ();
ObjectCount oc2 = new ObjectCount ();
}
public ObjectCount ()
{ ⑤ ;
System.out.println(n);
}
}
1、以下程序实现在屏幕上输出字符串“Hello World!”,请把程序
填写完整
public class A
{
public static void main( 1 )
{
2 ;
}
}
2、以下方法实现求10!,并将结果保存在变量s中输出,完成程序public void print()
{
3 ;
for(int i=1;i<=10;i++)
{
s=s*i;
}
System.out.println("10!="+s);
}
4、已知接口N1定义如下,要求类R1实现接口N1,完成下面的程序
interface N1
{
int year=2006;
int year( );
void output( );
}
public class R1 7
{
//实现year方法
8 year( )
{
return year;
}
public void output( ){ }
}
2、按如下要求编程
(1)创建圆类(Circle),添加属性半径(radius);
添加方法计算圆的面积(getArea)。
(2)编程利用Circle类在屏幕输出一个圆的面积。
程序改错
3.该程序段当n=1时,输出"The number is 1"
当n=2时,输出"The number is 2"
否则,输出"The number is not 1 or 2"
switch ( n )
{
case 1:
System.out.println( "The number is 1" );
case 2:
System.out.println( "The number is 2" );
break;
default:
System.out.println( "The number is not 1 or 2" );
break;
}
4.public class Time1
{
private int hour; // 0 - 23
private int minute; // 0 - 59
private int second; // 0 - 59
public void setTime( int h, int m, int s )
{
hour = ( ( h >= 0 && h < 24 ) ? h : 0 ); // validate hour
minute = ( ( m >= 0 && m < 60 ) ? m : 0 ); // validate minute
second = ( ( s >= 0 && s < 60 ) ? s : 0 ); // validate second } // end method setTime
public void setMinute( int m )
{
minute = ( ( m >= 0 && m < 60 ) ? m : 0 ); // validate minute }// end method Minute
public String toString()
{
return String.format( "%02d:%02d:%02d", hour, minute, second );
} // end method toString
} // end class Time1
public class Time1Test
{
public static void main( String args[] )
{
Time1 time = new Time1(); // invokes Time1 constructor
time.setTime( 13, 27, 6 );
time. minute=30;
System.out.println( time.toString() );
} // end main
} // end class Time1Test
阅读程序,给出运行结果。
1.public class PartA
{
public static void main( String args[] )
{
int sum;
int count;
sum = 0;
for ( count = 1; count <= 10; count += 2 )
sum += count;
System.out.printf( "sum = %d", sum );
} // end main
// end class PartA
3.public class Account
{ private double balance;
public Account( double initialBalance )
{ if ( initialBalance > 0.0 )
balance = initialBalance;
} // end Account constructor
public void credit( double amount )
{
balance = balance + amount; // add amount to balance } // end method credit
// return the account balance
public double getBalance()
{
return balance; // gives the value of balance to the calling method
} // end method getBalance
} // end class Account
import java.util.Scanner;
public class AccountTest
{
public static void main( String args[] )
{
Account account1 = new Account( 50.00 ); // create Account object
Account account2 = new Account( -7.53 ); // create Account object
account2.credit( 50.00);
// display initial balance of each object
System.out.printf( "account1 balance: $%.2f\n",
account1.getBalance() );
System.out.printf( "account2 balance: $%.2f\n\n",
account2.getBalance() );
} // end main
} // end class AccountTest
4.import java.awt.Graphics;
import javax.swing.JPanel;
public class DrawPanel extends JPanel
{ public void paintponent( Graphics g )
{ super.paintponent( g );
int width = getWidth(); // total width
int height = getHeight(); // total height
g.drawLine( 0, 0, width, height );
g.drawLine( 0, height, width, 0 );
} // end method paintponent
} // end class DrawPanel
import javax.swing.JFrame;
public class DrawPanelTest
{ public static void main( String args[] )
{
DrawPanel panel = new DrawPanel();
JFrame application = new JFrame();
application.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
application.add( panel ); // add the panel to the frame
application.setSize( 250, 250 ); // set the size of the frame
application.setVisible( true ); // make the frame visible
} // end main
} // end class DrawPanelTest
1.设计一个长方形类:
数据域应该包括长和宽length、width,默认值都是1,要有两个参数的构造函数,有计算周长和面积的方法perimeter () and the area(), 每个数据都有set和get方法,set方法中要有数据合法性检测(数据在
0.0-20.0之间)。
覆盖toString()方法,显示对象length、width、perimeter () 和area()值,测试该类。
2.使用一位数组解决下列问题:(8分)
输入数存入具有五个元素数组中,要保证这五个数中没有重复的,若输入的某个数和前面的有重复,则再重新输入。
即重复的数据不要存放,最后输出这五个数。
1.设计一个类GradeBook 如下:
包含courseName, courseInstructor.
提供set method 修改courseInstructor和courseName,提供get method 取得它们的值.
提供包含两个参数的构造函数—初始化实例变量courseName, courseInstructor.
提供方法displayMessage或者重载toString()方法显示courseName, courseInstructor
对上述类GradeBook进行测试
2.开发一个Java application 它能够计算10个员工的每周收入.
收入规则:
每个人的每小时工资用rate表示,每个人不一样,要求现场输入。
每个人的每周工作时间用hours表示,每个人也不一定一样,要求现场输入。
每个人的收入用pay表示,若hours 小于40 则pay = hours * rate 若hours大于40,则超时部分要付180%的工资
3.设计一个窗口程序,在窗口内放置两个utton(按钮)button1,button2,点击每个按钮时显示相关信息表示该按钮被点击了,窗口可以以正常关闭。
导入使用的相关类。
(7分)
3.开发一个Java application 它能够根据输入的五个数据,画出相应的条状图。
6.创建一个父类:
圆类,数据成员有:圆周率,半径。
方法有构造函数和求圆的面积。
创建一个子类:硬币类,数据成员增加硬币值,方法增加设置硬币值。
基于子类创建对象并输出相关信息。
8.制作一个窗体,该窗体上有一个JTextField对象,有两个JCheckBox对象,选中第一个可以将JTextField对象的文本设成粗体,选中第二个JCheckBox对象将JTextField对象的文本设成斜体。
分析程序写出结果
1.
class A {
public int getNumber(int a) {
return a + 1;
}
}
class B extends A {
public int getNumber (int a) {
return a + 2
}
public static void main (String args[]) { B a = new B();
System.out.printIn(a.getNumber(0));
}
}
运行结果为:
2.
class Example
{ public static void main(String args[]) { String s1,s2;
s1=new String(“we are students”);
s2=new String(“we are students”);
System.out.println(s1.equals(s2));
System.out.println(s1==s2);
String s3,s4;
s3=”how are you”;
s4=”how are you”;
System.out.println(s3.equals(s4));
System.out.println(s3==s4);
} }
结果为:
3.public class q4
{public static void main(String args[])
{ for(int i=1;i<=4;i++)
switch(i)
{case 1: System.out.print("a");
case 2: System.out.print("b"); break;
case 3: System.out.print("c");
case 4: System.out.print("d"); break; }
}
}
结果为:
4.Public class Exp1
{ public static void main(String[] args) {String s,s1="";
char c;
s=args[0];
for (int i=0;i<s.length();i++)
{ c=s.charAt(i);
if(c>='a' && c<='z'){
s1=s1+Character.toUpperCase(c); }
else
s1=s1+Character.toLowerCase(c); } System.out.println(s1); }}
若在dos命令行输入:java Exp1 abcDEF,则输出为:5.
public class ArrayTest {
public static void main (String[]args) {
float f1[], f2[];
f1 = new float [10];
f2 = f1;
System.out.printIn (“f2[0]=” + f2[0]);
}
}
运行结果为:
6.
public class Test {
public static void main (String [] args) {
string foo = “blue”;
string bar = foo;
foo = “green”;
System.out.printIn(bar);
}
}
结果为:
综合题(填空或按要求设计类或部分程序段)
1.在下面的程序中,定义了接口ShowMessage,并在类TV和PC 中实现了接口。
请在划线处填写合适的代码。
interface ShowMessage {
void showTradeMark();
}
class TVShowMessage
{
public void showTradeMark()
{System.out.println("我是电视机");}
}
class PCShowMessage
{
public void showTradeMark()
{System.out.println("我是电脑");}
}
public class Example
{ public static void main(String args[ ])
{ ShowMessage sm;
sm= ;
sm.showTradeMark(); //显示我是电视机
sm= ;
sm.showTradeMark(); //显示我是电脑
}
}
2.实现一个接口的关键字是。
类A继承自类B并实现接口(C)D的语句是。
编程设计题
1.编写一个输出"Hello World!"的程序,用两种方式实现(Application、Applet)。
2、编写一个完整的Java程序使用复数类plex验证两个复数1+2i 和3+4i 相加产生一个新的复数4+6i 。
复数类plex必须满足如下要求:
(1) 复数类plex 的属性有:
RealPart : int型,代表复数的实数部分
ImaginPart : int型,代表复数的虚数部分
(2) 复数类plex 的方法有:
plex( ) : 构造函数,将复数的实部和虚部都置0
plex( int r , int i ) : 构造函数,形参r 为实部的初值,i为虚部的初值。
plex plexAdd(plex a) : 将当前复数对象与形参复数对象相加,所得的结果仍是一个复数值,返回给此方法的调用者。
String ToString( ) : 把当前复数对象的实部、虚部组合成a+bi 的字符串形式,其中a 和b分别为实部和虚部的数据。
3.在窗口内配置一个Label,二个Checkbox组建,每选中一个一个组件时,Label就显示其值。