JAVA应用开发模拟试卷A 一、选择题(2分*15=30分) I、如下哪个是Java中的标识符( A、fieldname B、super C、3 number D、#number 2、设x=1,y=2,z=3,则表达式y十=z--/十十x的值是()。 A.3 B.3.5 C.4 D.5 3、下面的代码段执行之后count的值是什么() int count 1; for (int i 1;i <=5;i++){ count +=i; } System.out.println(count): A、5 B、1 C、15 D、16 4、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用 它,该方法头的形式为( ). A.static void method() B.public void method() C.final void method() D.abstract void method() 5、下列程序段执行后的结果是()。 String s new String("abcdefg): for (int i=0:i<s.length();i+=2){ System.out.print (s.charAt(i)): } A)aceg B)ACEG C)abcdefg D)abcd 6、下面程序段执行后b的值是()。 Integer integ =new Integer(9): boolean b=integ instanceof Object; A)9 B)true C)1 D)false 7.关于for循环和while循环的说法哪个正确?() A.while循环先判断后执行,for循环先执行后判断。 B.while循环判断条件一般是程序结果,for循环的判断条件一般是非程序结果 C.两种循环任何时候都不可以替换 D.两种循环结构中都必须有循环体,循环体不能为空 8.关于对象成员占用内存的说法哪个正确?() A.同一个类的对象共用同一段内存
JAVA 应用开发模拟试卷 A 一、选择题(2 分*15=30 分) 1、如下哪个是 Java 中的标识符( ) A、fieldname B、super C、3number D、#number 2、设 x = 1 , y = 2 , z = 3,则表达式 y+=z--/++x 的值是( )。 A. 3 B. 3. 5 C. 4 D. 5 3、下面的代码段执行之后 count 的值是什么( ) int count = 1; for (int i = 1; i <= 5; i++) { count += i; } System.out.println(count); A、5 B、1 C、15 D、16 4、为 AB 类的一个无形式参数无返回值的方法 method 书写方法头,使得使用类名 AB 作为前缀就可以调用 它,该方法头的形式为( )。 A. static void method( ) B. public void method( ) C. final void method( ) D. abstract void method( ) 5、下列程序段执行后的结果是( )。 String s = new String("abcdefg"); for (int i=0; i<s.length(); i+=2){ System.out.print(s.charAt(i)); } A) aceg B) ACEG C) abcdefg D) abcd 6、下面程序段执行后 b 的值是( )。 Integer integ =new Integer(9); boolean b = integ instanceof Object; A) 9 B) true C) 1 D) false 7.关于 for 循环和 while 循环的说法哪个正确? ( ) A.while 循环先判断后执行,for 循环先执行后判断。 B.while 循环判断条件一般是程序结果,for 循环的判断条件一般是非程序结果 C.两种循环任何时候都不可以替换 D.两种循环结构中都必须有循环体,循环体不能为空 8.关于对象成员占用内存的说法哪个正确? ( ) A.同一个类的对象共用同一段内存
B、同一个类的对象使用不同的内存段,但静态成员共享相同的内存空间 C.对象的方法不占用内存 D.以上都不对 9.关于继承的说法正确的是:() A、子类将继承父类所有的属性和方法。 B、子类将继承父类的非私有属性和方法。 C、子类只继承父类pub1ic方法和属性 D、子类只继承父类的方法,而不继承属性 10.覆盖与重载的关系是() A、覆盖只有发生在父类与子类之间,而重载可以发生在同一个类中 B.覆盖方法可以不同名,而重载方法必须同名 C.final修饰的方法可以被覆盖,但不能被重载 D.覆盖与重载是同一回事 I1、下面哪一个import命令可以为我们提供编写网络应用程序的类() A、import java.sql.*: B.import java.util.* C、import java.io.*: D、import java.net.*: l2、如果容器组件p的布局是BorderLayout,则在p的下边中添加一个按钮b,应该使用的语句是() A、p.add(b): B、p.add(b,"North"): C、p.add(b,"South"): D、b.add(p,"North"); 13、Frame对象默认的布局管理器是() A、FlowLayout B、BorderLayout C、CardLayout D、nul1 14、如果需要从文件中读取数据,则可以在程序中创建哪一个类的对象() A、FileInputStream B、FileOutputStream C、DataOutputStream D、FileWriter 15、下面的程序创建了一个文件输出流对象,用来向文件test.txt中输出数据,假设程序当前目录下不存 在文件test.txt,编译下面的程序Test.java后,将该程序运行3次,则文件test.txt的内容是()。 import java.io.* public class Test public static void main(String args[]){ try String s="ABCDE; byte b[]=s.getBytes(); FileOutputStream file=new FileOutputStream("test.txt",true); file.write(b);
B、同一个类的对象使用不同的内存段,但静态成员共享相同的内存空间 C.对象的方法不占用内存 D.以上都不对 9.关于继承的说法正确的是: ( ) A、子类将继承父类所有的属性和方法。 B、子类将继承父类的非私有属性和方法。 C、子类只继承父类 public 方法和属性 D、子类只继承父类的方法,而不继承属性 10.覆盖与重载的关系是 ( ) A、覆盖只有发生在父类与子类之间,而重载可以发生在同一个类中 B.覆盖方法可以不同名,而重载方法必须同名 C.final 修饰的方法可以被覆盖,但不能被重载 D.覆盖与重载是同一回事 11、下面哪一个 import 命令可以为我们提供编写网络应用程序的类() A、import java.sql.*; B、import java.util.*; C、import java.io.*; D、import java.net.*; 12、如果容器组件 p 的布局是 BorderLayout,则在 p 的下边中添加一个按钮 b,应该使用的语句是( ) A、p.add(b); B、p.add(b,"North"); C、p.add(b,"South"); D、b.add(p,"North"); 13、Frame 对象默认的布局管理器是( ) A、FlowLayout B、BorderLayout C、CardLayout D、null 14、如果需要从文件中读取数据,则可以在程序中创建哪一个类的对象( ) A、FileInputStream B、FileOutputStream C、DataOutputStream D、FileWriter 15、下面的程序创建了一个文件输出流对象,用来向文件 test.txt 中输出数据,假设程序当前目录下不存 在文件 test.txt,编译下面的程序 Test.java 后,将该程序运行 3 次,则文件 test.txt 的内容是( )。 import java.io.*; public class Test { public static void main(String args[]) { try { String s="ABCDE"; byte b[]=s.getBytes(); FileOutputStream file=new FileOutputStream("test.txt",true); file.write(b);
file.close(); catch(IOException e){ System.out.println(e.toString()); } } A)ABCABC B)ABCDE C)Test D)ABCDE ABCDEABCDE 二、填空题(1'*10=10') 1、如果将类MyClass声明为public,它的文件名必须是 才能正常编译。 2.面向对象有三大特点分别是继承、一、一。 3、设x=2,则表达式(x++)/3的值是 4、在Java的基本数据类型中,char型采用Unicode编码方案,每个Jnicode码占用字节内存空 间 5、Java中用于两个数相等比较的运算符是:(),用于不相等比较的运算符是()。 6、在Java中声明一个字符串类型的变量str的语句是: ,定义一个具有10个元素的整 型数组a的语句是: 7、设有数组定义:int MyIntArray[]={10,20,30,,40,50,60,70}:则执行以下几个 语句后的输出结果是 int s =0; for (int i =0 i MyIntArray.length i++) if(i%2==1) s +MyIntArray[i]; System.out.println(s); 8、定义接口的保留字是()。 9、异常处理是由( )、( )和finally块三个关键所组成的程序块。 10.Socket通常也称为( ),用于描述()和()。 三、读程题(6'*5=30') 1、以下程序的输出结果为: public class Person String name: int age; public Person(String name,int age){ this.namename; this.ageage; } public static void main(String[]args){ Person c new Person("Peter",17);
file.close(); } catch(IOException e) { System.out.println(e.toString()); } } } A) ABCABC B) ABCDE C) Test D) ABCDE ABCDE ABCDE 二、填空题(1’*10=10’) 1、如果将类 MyClass 声明为 public,它的文件名必须是 才能正常编译。 2.面向对象有三大特点分别是继承、 、 。 3、设 x = 2 ,则表达式 ( x + + )/3 的值是 。 4、在 Java 的基本数据类型中,char 型采用 Unicode 编码方案,每个 Unicode 码占用 字节内存空 间 5、Java 中用于两个数相等比较的运算符是:( ),用于不相等比较的运算符是( )。 6、在 Java 中声明一个字符串类型的变量 str 的语句是: ,定义一个具有 10 个元素的整 型数组 a 的语句是: 。 7、设有数组定义:int MyIntArray[ ] = { 10 , 20 , 30 , 40 , 50 , 60 , 70}; 则执行以下几个 语句后的输出结果是 。 int s = 0 ; for (int i = 0 ; i < MyIntArray.length ; i + + ) if ( i % 2 = = 1 ) s += MyIntArray[i] ; System.out.println(s); 8、定义接口的保留字是( )。 9、异常处理是由( )、( )和 finally 块三个关键所组成的程序块。 10.Socket 通常也称为 ( ),用于描述( ) 和 ( )。 三、读程题(6’*5=30’) 1、以下程序的输出结果为: public class Person { String name; int age; public Person(String name, int age) { this.name = name; this.age = age; } public static void main(String[] args) { Person c = new Person("Peter", 17);
System.out.println(c.name +is "c.age +years old!"): } 答: 2、输出结果为: public class Sum{ public static void main(String [args){ int j=10; System.out.println("j is "+j); calculate(j); System.out.println("At last,j is "+j) static void calculate (int j){ for (int i 0;i<10;i++) j++; System.out.println("j in calculate()is:"+j); 输出结果: 3、以下程序输出的结果为: abstract class Shape{/定义抽象类Shape和抽象方法display abstract void display(): } class Circle extends Shape void display(){ /实现抽象类的方法 System.out.println("Circle"); class Rectangle extends Shape void display(){ //实现抽象类的方法 System.out.println("Rectangle"): } } class Triangle extends Shape void display0{/实现抽象类的方法
System.out.println(c.name + " is " + c.age + " years old!"); } } 答: 2、输出结果为: public class Sum{ public static void main(String [] args){ int j=10; System.out.println("j is : "+j); calculate(j); System.out.println("At last, j is : "+j); } static void calculate (int j){ for (int i = 0;i<10;i++) j++; System.out.println("j in calculate() is: "+j); } } 输出结果: 3、以下程序输出的结果为: abstract class Shape { //定义抽象类 Shape 和抽象方法 display abstract void display(); } class Circle extends Shape { void display() { //实现抽象类的方法 System.out.println("Circle"); } } class Rectangle extends Shape { void display() { //实现抽象类的方法 System.out.println("Rectangle"); } } class Triangle extends Shape { void display() { //实现抽象类的方法
System.out.println("Triangle"); } public class AbstractClassDemo{ public static void main(String args[]){ (new Circle(O).display(O;//定义无名对象来调用对应的display方法 (new Rectangle()).display(); (new Triangle()).display(); } } 输出结果: 4、以下程序的输出结果为: public class Tom private float weight: private static String name; public void setWeight(float weight){ this.weight weight; } private void out(){ System..out.printIn(name+"体重:”+weight+"斤“): } public static void main(String[]args){ Tom.name="汤姆猫”: Tom cat new TomO; cat.setWeight (20); cat.out () } } 输出结果: 5、以下程序的输出结果为: public class Test public static void main(String args[]){ new Student("Tom",'m',90,88); new Student ("Jack",'m',66,89); new Student("Mary",'f',76,86); System.out.println("name\tsex\tchinese\tenglish"); Student.print(:
System.out.println("Triangle"); } } public class AbstractClassDemo{ public static void main(String args[]){ (new Circle()).display(); //定义无名对象来调用对应的 display 方法 (new Rectangle()).display(); (new Triangle()).display(); } } 输出结果: 4、以下程序的输出结果为: public class Tom { private float weight; private static String name; public void setWeight(float weight) { this.weight = weight; } private void out() { System.out.println(name + "体重:" + weight + "斤"); } public static void main(String[] args) { Tom.name = "汤姆猫"; Tom cat = new Tom(); cat.setWeight(20); cat.out(); } } 输出结果: 5、以下程序的输出结果为: public class Test{ public static void main(String args[]) { new Student("Tom", 'm', 90, 88); new Student("Jack", 'm', 66, 89); new Student("Mary", 'f', 76, 86); System.out.println("name\tsex\tchinese\tenglish"); Student.print();
} class Student protected String name: protected char sex: protected int chinese; protected int english: protected Student next: static Student list; Student (String name,char sex,int chinese,int english){ this.name=name; this.sex=sex; this.chinese=chinese; this.english=english; this.next=list; list=this: } static void print(){ Student friend=list; if (friend==null) System.out.printIn("The list is empty."): else do{ System.out.printIn(friend.toString()): friend=friend.next; }while(friend!=null): } public String toString(){ return new String(name+"\t"+sex+"\t"+chinese+"\t"+english): } } 输出结果: 四、简答题(4'*5=20’) L.JAVA的基本数据类型有那些?String是不是基本类型?
} } class Student { protected String name; protected char sex; protected int chinese; protected int english; protected Student next; static Student list; Student (String name, char sex, int chinese, int english) { this.name=name; this.sex=sex; this.chinese=chinese; this.english=english; this.next=list; list=this; } static void print() { Student friend=list; if (friend==null) System.out.println("The list is empty."); else { do{ System.out.println(friend.toString()); friend=friend.next; }while(friend!=null); } } public String toString() { return new String(name+"\t"+sex+"\t"+chinese+"\t"+english); } } 输出结果: 四、简答题(4’*5=20’) 1. JAVA 的基本数据类型有那些? String 是不是基本类型?
2.什么是继承? 3.Java I/0中字符流和字节流的区别? 4.创建线程的两种方法 5.抽象类和接口的区别 五、编程题(3’+7’=10’) 1、按以下要求编写程序 (I)创建一个Rectangle类,添加width和height两个成员变量 (2)在Rectangle中添加两种方法分别计算矩形的周长和面积 (3)编程利用Rectangle输出一个矩形的周长和面积 2、编写一个完整的Java Applet程序使用复数类Complex验证两个复数1+2i和3+4i相加产生一个新的 复数4+6i。复数类Complex必须满足如下要求: (1)复数类Complex的属性有: RealPart:int型,代表复数的实数部分 ImaginPart:int型,代表复数的虚数部分 (2)复数类Complex的方法有:
2. 什么是继承? 3. Java I/O 中字符流和字节流的区别? 4.创建线程的两种方法 5.抽象类和接口的区别 五、编程题(3’+7’=10’) 1、按以下要求编写程序 (1) 创建一个 Rectangle 类,添加 width 和 height 两个成员变量 (2) 在 Rectangle 中添加两种方法分别计算矩形的周长和面积 (3) 编程利用 Rectangle 输出一个矩形的周长和面积 2、编写一个完整的 Java Applet 程序使用复数类 Complex 验证两个复数 1+2i 和 3+4i 相加产生一个新的 复数 4+6i 。复数类 Complex 必须满足如下要求: (1) 复数类 Complex 的属性有: RealPart : int 型,代表复数的实数部分 ImaginPart : int 型,代表复数的虚数部分 (2) 复数类 Complex 的方法有:
Complex():构造函数,将复数的实部和虚部都置0 Complex(intr,inti):构造函数,形参r为实部的初值,i为虚部的初值。 Complex complexAdd(Complex a):将当前复数对象与形参复数对象相加,所得的结果仍是一个复数值, 返回给此方法的调用者。 String ToString():把当前复数对象的实部、虚部组合成a+bi的字符串形式,其中a和b分别为实 部和虚部的数据
Complex( ) : 构造函数,将复数的实部和虚部都置 0 Complex( int r , int i ) : 构造函数,形参 r 为实部的初值,i 为虚部的初值。 Complex complexAdd(Complex a) : 将当前复数对象与形参复数对象相加,所得的结果仍是一个复数值, 返回给此方法的调用者。 String ToString( ) : 把当前复数对象的实部、虚部组合成 a+bi 的字符串形式,其中 a 和 b 分别为实 部和虚部的数据
参考答案 一、AADAA BBBBA DCBAD 二、MyClass.java 封装,多态0 =,) String str;int [arr new int[10]: 120 interface try catch 套接字IP地址端口 三、l、Peter is 17 years old! 2、jis:10 j in calculate()is 20 At last j is:10 3、Circle Rectangular Triangle 4、汤姆猫体重:20.0斤 5 name sex chinese english Mary f 76 86 Jack m 66 89 Tom m 90 88 四、l、float,int char,byte,double,long,short,.boolean。.string不是基本类型 2、通过必要的说明能够实现某个类无需重新定义就拥有另一个类的某些属性和方法,并把这种关系称为继 承,先定义的类称为父类,后定义的类称为子类,并且允许多层的继承关系。 3、java流在处理上分为字符流和字节流。字符流处理的单元为2个字节的Unicode字符,分别操作字符、 字符数组或字符串,而字节流处理单元为1个字节,操作字节和字节数组 4、a.Thread类的子类创建线程包括继承Thread类,重写run方法,在应用类中创建Thread之类的对象 和调用start方法。 B.使用Runnable接口包括实现Runnable接▣,实现run方法,创建THread类对象,采用实现Runnable 接口类的对象作为参数和调用start方法。 5、。接口中的所有方法都是抽象的,而抽象类可以定义带有方法体的不同方法。 b。一个类可以实现多个接口,而只能继承一个抽象父类。 c。接口与实现它的类不构成继承体系,而抽象类是属于一个类的继承体系。 d。接口中的方法默认是public abstract的,而成员变量默认是public static常量。 e。implements关键字用于实现接口,extends关键字用于继承。 五、l、public class Rectangle{ float width,height: public Rectangle(float width,float height){ this.width width; this.height height; } public float getLength(){ return (this.width this.height)*2:
参考答案 一、AADAA BBBBA DCBAD 二、MyClass.java 封装,多态 0 2 ==,<> String str; int [] arr = new int[10]; 120 interface try catch 套接字 IP 地址 端口 三、1、Peter is 17 years old! 2、j is : 10 j in calculate() is : 20 At last j is : 10 3、Circle Rectangular Triangle 4、汤姆猫体重:20.0 斤 5、 name sex chinese english Mary f 76 86 Jack m 66 89 Tom m 90 88 四、1、float,int char,byte,double,long,short,boolean。string 不是基本类型 2、通过必要的说明能够实现某个类无需重新定义就拥有另一个类的某些属性和方法,并把这种关系称为继 承,先定义的类称为父类,后定义的类称为子类,并且允许多层的继承关系。 3、java 流在处理上分为字符流和字节流。字符流处理的单元为 2 个字节的 Unicode 字符,分别操作字符、 字符数组或字符串,而字节流处理单元为 1 个字节,操作字节和字节数组 4、a.Thread 类的子类创建线程包括继承 Thread 类,重写 run 方法,在应用类中创建 Thread 之类的对象 和调用 start 方法。 B.使用 Runnable 接口包括实现 Runnable 接口,实现 run 方法,创建 THread 类对象,采用实现 Runnable 接口类的对象作为参数和调用 start 方法。 5、a。接口中的所有方法都是抽象的,而抽象类可以定义带有方法体的不同方法。 b。一个类可以实现多个接口,而只能继承一个抽象父类。 c。接口与实现它的类不构成继承体系,而抽象类是属于一个类的继承体系。 d。接口中的方法默认是 public abstract 的,而成员变量默认是 public static 常量。 e。implements 关键字用于实现接口,extends 关键字用于继承。 五、1、public class Rectangle { float width, height; public Rectangle(float width, float height) { this.width = width; this.height = height; } public float getLength(){ return (this.width + this.height) * 2;
public float getArea(){ return this.width this.height: } public static void main(String [args){ Rectangle rect new Rectangle(10,20); System..out.printIn(“周长是:”+rect.getLength()): System..out.printIn("面积是:”+rect.getArea()): } 2.import java.applet.* import java.awt.* public class abc extends Applet Complex a,b,c public void init(){ a new Complex(1,2) b new Complex(3,4) c new Complex(): public void paint(Graphics g) { c=a.complexAdd(b): g.drawString("第一个复数:"+a.toString0,l0,50): g.drawString("第二个复数:"+b.toString(0,l0,70): g.drawString(“两复数之和:"+c.toString(),l0,90): } class Complex{ int RealPart;/复数的实部 int ImaginPart:/复数的虚部 Complex(){RealPart =0;ImaginPart =0 ; Complex(int r,int i) RealPart =r ImaginPart =i:} Complex complexAdd (Complex a){ Complex temp=new Complex():/临时复数对象 temp.RealPart=RealPart+a.RealPart; temp.ImaginPart=ImaginPart+a.ImaginPart; return temp: public String toString() return RealPart+"+"+ImaginPart+"i):}
} public float getArea(){ return this.width * this.height; } public static void main(String [] args) { Rectangle rect = new Rectangle(10, 20); System.out.println("周长是:" + rect.getLength()); System.out.println("面积是:" + rect.getArea()); } } 2、import java.applet.* ; import java.awt.* ; public class abc extends Applet { Complex a,b,c ; public void init( ) { a = new Complex(1,2); b = new Complex(3,4); c = new Complex(); } public void paint(Graphics g) { c=a.complexAdd(b); g.drawString("第一个复数:"+a.toString(),10,50); g.drawString("第二个复数:"+b.toString(),10,70); g.drawString("两复数之和:"+c.toString(),10,90); } } class Complex{ int RealPart ; // 复数的实部 int ImaginPart ; // 复数的虚部 Complex() { RealPart = 0 ; ImaginPart = 0 ; } Complex(int r , int i) { RealPart = r ; ImaginPart = i ; } Complex complexAdd(Complex a){ Complex temp = new Complex( ); // 临时复数对象 temp.RealPart=RealPart+a.RealPart; temp.ImaginPart=ImaginPart+a.ImaginPart; return temp;} public String toString( ) { return ( RealPart+" + "+ImaginPart+" i "); } }