《Java程序设计》期末复习资料
说明:  本份资料由五部分构成:“考试范围”、“考试题型”、“参看课本相关知识和课后习题”、“课本各个章节重点知识”和“期中测试试卷及参考答案”。
一、考试范围:课本第一至八章。
二、考试题型:①选择题,20道,20分;②填空题,10空,10分;③简答题,6题,30分;④阅读程序题,含填空、改错和运行结果等三类题型,20分;⑤编程题,20分。
三、参看课本相关知识和课后习题:
看课本相关章节,仔细看课后习题的选择题和填空题(答案在第301页)。
四、课本各个章节重点知识:
第一章
1.简述Java语言的特点?
答:(1).易于学习;(2).高效率的执行方式;(3).与平台无关性;(4).分布式
(5).安全性;(6).多线程;(7).丰富的API(Application Program Interface)文档和类库
2.Java程序有两种基本的类型,分别是___Applet_______、Application____。
3.编译源程序使用的命令是_javac___,解释执行编译过的程序使用的命令是_java__。
4.编译Applet源程序文件后,它所产生的字节码文件的扩展名是(B )
A.java    B.class    C.html     D.exe
第二章
1.Java的布尔常量只有两个值:false(假)和 true(真)。
2.Java的整型变量byte占1个字节,字符型变量char占2个字节。
3.下列变量定义错误的是(A)
A.float x;y;     B.float x,y=2.33f;    C.public int i=100,j=2,k;   D.char ch1=’m’,ch2=’/’;
4.假设以下选项中的变量都已经正确定义,不合法的表达式是(C)
A.a>=4==b<1   B.’n’-3   C.’a’=8    D.’A’%6
5.Java的复合数据类型有___3____种。
6.表达式2>=5的运行结果是__false____。
7.15.设x、y、max、min均为int 型变量,x、y已赋值。用三目条件运算符将x、y的较大值赋给max、较小值赋给min的语句分别是max=(x>y)?x:y ___和_ min=(ximport java.io.*;
public class LeapYear
{
public static void main(String args[]) throws IOException
{
int year; String str;
BufferedReader buf;
buf=new BufferedReader(new InputStreamReader(System.in));
System.out.print("Input the year:");
str=buf.readLine();
year=Integer.parseInt(str);                                                    // 将str转成int类型后指定给a存放
if (year % 4 == 0 && year % 100 !=0 || year % 400 ==0)
System.out.println("year "+year+" is a leap year.");
else
System.out.println("year "+year+" is not a leap year. ");
}
}
2.编程序计算当n为多大时下列不等式成立。
public class Limit{
public static void main(String args[]) {
int n=0; float sum=0;
while (sum<=10) {  n+=1; sum+=1.0/n;}
System.out.print("N= "+n);
}
}
3.编一程序,从键盘输入一个自然数,判断其是否为素数(只能被1和其本身整除的自然数)。
import java.io.*;
public class Prime{
public static void main(String args[]) throws IOException
{
int i;boolean p;
BufferedReader buf;
String str;
buf=new BufferedReader(new InputStreamReader(System.in));
System.out.print("Input m is:");
str=buf.readLine();
int m=Integer.parseInt(str);
p=true;
for(i=2;iif (m%i==0)
p=false;
if (p==true)
System.out.println(m+" is a prime number.");
else
System.out.println(m+" is not a prime number.");
}
}
4.水仙花数是指一个 n 位数 ( n≥3 ),它的每个位上的数字的 n 次幂之和等于它本身。(例如:1^3 + 5^3 + 3^3 = 153)
三位的水仙花数共有4个:153,370,371,407;
四位的水仙花数共有3个:1634,8208,9474;
五位的水仙花数共有3个:54748,92727,93084;
六位的水仙花数只有1个:548834;
七位的水仙花数共有4个:1741725,4210818,9800817,9926315;
八位的水仙花数共有3个:24678050,24678051,88593477
……
请试着用Java语言编写出其程序。
public class shuixianhua {
public static void main(String[] args) {
for (int i = 1; i < 10; i++) {
for (int j = 0; j < 10; j++) {
for (int k = 0; k < 10; k++) {
if (i*i *i+j*j*j + k*k*k==i*100+j*10+k) {
int sum = i*100 + j*10 +k;
System.out.println(sum);}
}
}
}
}
}
5.用选择排序法对十个数按照从大到小进行排序,然后输出。
public class Sort12
{
public static void main(String args[])
{
int mp[]={8,6,12,5,14,7,21,2,9,3};
System.out.println("The original 10 numbers:");
for (int j=0;j/t");
System.out.println();
for(int i=0;ifor (int j=i;jif(mp[i]>mp[j]) {int t=mp[i];mp[i]=mp[j];mp[j]=t;}
System.out.println("The sorted 10 numbers:");
for (int j=0;j/t"); } } 6.假设有一条钢材长2000米,每天截取其中的一半,编一程序求出多少天后,钢材的长度开始短于5米。 public class MSteel{ public static void main(String args[]){ int d=0;float m=2000; while (m>=5) { m=m/2;d++; System.out.print(d+": "); System.out.println(m); } System.out.print("You need "+d+" days"); } } 7.使用java.lang.Math类,生成10个0~99之间的随机整数,求出它们中的最大值和最小值。提示:java.lang.Math类支持random方法:Math.Random()。该方法返回值是正数,类型为double,范围为0~1。如果要得到其他范围的数,则要进行相应的转换。例如要得到(a,b)之间的整数的方法是:(int)(b-a+1)*Math.random( )+a)。若要得到(0,99)之间的整数可以使用下列语句:int m=(int)(100*Math.random( )); public class LSRnd{ public static void main(String args[]){ int mun,n,max1,min1; max1=0; min1=100; for (n=1;n<=10;n++){ mun=(int)(100*Math.random()); System.out.print(mun+" "); if (mun>max1) max1=mun; if (munThe largest number is: "+max1); System.out.println("The smallest number is: "+min1); } } 第四章 (一)知识点部分 1.类的声明: 类首:【修饰符】class 类名 extends 父类名 implements 接口名 类主体: 变量 方法 2.对象的创建和使用 Student类 Students s = new Student(); s.变量名 s.方法名(参数列表) 3.构造方法(为对象进行初始化的) 特点: 1.类名相同 2.无返回值,没有void 3.java为每一个类提供一个默认的无参的构造函数Student(){} 4.实体:当用一个类创建一个对象时,类中的成员变量被分配内存空间,这些内存空间被称作该对象的实体,而对象中存放着引用,以确保实体由该对象操作使用。 5.参数传递 6.垃圾回收机制:实际上,java有所谓的“垃圾回收”机制,这种机制周期的检测某个实体是否已不再被任何对象所拥有,如果发现这样的实体,就释放实体占有的内存。 7.对象的生命周期,对象销毁方法 finalize 8.访问权限 1.类: public 默认, 如果在一个源文件中,声明了若干个类,则只能有一个类的权限是public,且这个类的名字和文件名字相同,一般main方法在这个类中。 2.变量和方法:四种。 9.static修饰符(8句话) u 不同对象的同名实例变量占用不同的内存空间。 u 通过对象名来访问实例变量 u 同一类中的所有对象的类变量共享一个存储空间。 u 可以使用类名和对象名访问类变量。 u 实例方法可以对实例变量和类变量进行操作。 u 实例方法必须由对象调用。 u 类方法只能对类变量进行操作 u 类方法可以用类名和对象名调用 10.类的继承 1.子类和超类 2.子类继承超类的变量(两个原则) 3.子类继承超类的方法 4子类的构造方法(使用super) 11.null this super对象运算符 12.最终类最终方法(final) 13.抽象类抽象方法(abstract) 抽象方法特点:(1)无方法体(2)必须被子类覆盖 抽象类特点: (1)抽象类不能用new运算符创建对象。 (2)抽象类中可以有抽象方法也可以没有。 (3)一旦类中包括了抽象方法就必须声明为abstract (4)若超类是抽象类,子类必须实现超类中所有抽象方法 抽象类不能被abstract和final同时修饰 抽象方法不能被abstract、static、final同时修饰 14.类的多态性 1.方法重载:一个类中,方法名称相同,参数个数和参数类型不同 2.方法覆盖:父类与子类 定义方法名称、参数个数、参数类型、均相同的方法 15.接口 1.接口内容:常量(默认为public、static、final)和抽象方法(public、abstract) 2.接口定义 修饰符 interface 接口名 3.接口实现 class 类名 implements 接口名 4.特点:当一个类实现了一个接口,它必须实现接口中所有的方法,这些方法都要被声明为public。注意:方法的名字、返回类型、参数个数及类型必须与接口中方法一致。 16.包 1.声明包;package 包名 2.引用包:import 包名 3.包是有等级的,包中可以有包。 4. java常用的包有: java.lang 语言包 java.util  实用包 java.awt 抽象窗口工具包 java.text 文本包 java.io 输入输出流的文件包 java.applet Applet应用程序 java.net 网络功能 (二)练习部分: 1.下面程序段中,最早被垃圾收集的是(D) public void method(){ String a,b; a = new String("hello"); b = new String("game over"); System.out.println(a+b+"ok"); a=null; a=b; System.out.println(a) } A.第4行前 B.第6行前 C 第7行前 D第8行前 2.关于对象成员占用内存的说法正确的是(B) A.同一个类的对象共用一段内存 B.同一个类的对象使用不同的内存段,但静态成员共享相同的内存空间 C.对象的方法不占用内存 D以上说法都不对 3.构造方法何时被调用(B) A类定义时 B创建对象时 C调用方法时 D使用对象的变量时 4.输出结果 class Test03{ public static void main(String[] args){ StringBuffer s= new StringBuffer("good"); StringBuffer s2=new StringBuffer("bad"); test(s,s2);System.out.println(s);//9 System.out.println(s2);//10 } static void test(StringBuffer a,StringBuffer b){ System.out.println(a);//1 System.out.println(b);//2 b=a;//3 a=new StringBuffer("new");//4 System.out.println(a);//5 System.out.println(b);//6 a.append("hah");//7 b.append("hah");//8 } } 输出结果为: good bad new good goodhah bad 5. 关于以下程序代码的说明正确的是( D ) 1.class HasStatic{ 2. private static int x=100; 3. public static void main(String args[ ]){ 4. HasStatic hs1=new HasStatic( ); 5. hs1.x++; 6. HasStatic hs2=new HasStatic( ); 7. hs2.x++; 8. hs1=new HasStatic( ); 9. hs1.x++; 10. HasStatic.x- -; 11. System.out.println(“x=”+x); 12. } 13. } A、 5行不能通过编译,因为引用了私有静态变量 B、 10行不能通过编译,因为x是私有静态变量 C、 程序通过编译,输出结果为:x=103 D、 程序通过编译,输出结果为:x=102 6.面向对象的程序设计有许多特性,下列选项中,不是面向对象程序设计特性的是(C) A.封装性 B。继承性 C.逻辑性 D。多态性 7.下列哪个声明是正确的(D) A.abstract final class Hh{…..} B. abstract private move(){。。。} C.protected private number; D.public abstract class Car{。。。} 8.下面的程序段在程序执行到第13行的声明时,将调用(C) class Person{ public void printValue(int i,int j){} public void printValue(int i){} } public class Teacher extends Person{ public void printValue(int i,int j){} public void printValue(int i){} public static void main(String args[]){ Person t= new Person(); t.printValue(10, 20); } } A.第3行的方法 B。第4行的方法 C。第8行的方法 D。第9行的方法 9.能将程序补充完整的选项是(C) class Person{ String name,department; int age; public person(String n){ name =n; } public Person(String n,int a){ name = n;age = a; } public Person(String n,String d,int a){ ____________________________ department = d; } } A.Person(n,a)B this(Person(n,a))C.this(n,a) D.this(name,age) 10.下列说法正确的是(C) A.重载是指自来重新定义父类中函数的做法 B.覆盖是指在同一个类中允许存在多个同名函数 C.多态性是指同一个属性或者行为在一般类及其各个特殊类中具有不同的语义 D.子类不能包含父类中没有的特性 11.当不希望某个类被其他类继承时,就可以将该类标识为(A) A.final B。abstract c.private D.protected 12下列选项中,用来尽量隐蔽对象的内部细节的特性是(B) A.重载 B。封装 C。继承 D 多态 13.下列说法正确的是(B) A.用abstract修饰的方法,不能再被子类重写 B.用final修饰的方法,不能再被子类重写 C.抽象类中一定要包括abstract方法 D.某个类中包含了abstract方法,该类可以不声明为abstract类 14.下面那个类声明是正确的(C) A.abstract class G2 extends superClass1,superClass2{。。。。} B.abstract public class classmates{。。。。} C.public final class NewClass extends superClass implements Interface1{。。。。} D.public abstract class String{。。。} 15.下列关于构造方法说法正确的是(C) A构造方法的名称可以和类不一样 B.构造方法必须有返回值 C.只能用new调用构造方法 D.构造方法不可以被重载 16.在抽象类中声明一个抽象方法的是(B) A.public abstract method(); B。public abstract void method(); C.public void abstract Method(); D。public void method(){abstract} 17能将程序补充完整的选项是(D) class Person{ private int a; public int change(int m){ return m; } } public class Teacher { public int b; public static void main(String[] args) { Person p = new Person(); Teacher t = new Teacher (); int i; ____________ } } A.i=m B。i=b C.i=p.a D.i=p.change(50) 18. 什么是方法重载和方法覆盖? 答:一个类中,有若干个方法名字相同,但方法的参数类型不同,称为方法的重载。 如果超类和子类有同名且参数相同的方法,那么超类的对象调用超类的方法,子类的对象调用子类的方法,这就是覆盖。 19. 举例说明类和对象的关系? 答:类是具有共同属性和行为的事物的抽象。对象是类的实例。例如,“电话”类代表电话这一类事物,而电话的对象代表一个具体的电话。 20. 抽象类特点有哪些? 答:(1)抽象类不能用new运算符创建对象。 (2)抽象类中可以有抽象方法也可以没有。 (3)一旦类中包括了抽象方法就必须声明为abstract (4)若超类是抽象类,子类必须实现超类中所有抽象方法 第五章 (一)知识点部分: 1.Applet与Application的区别 (1) Application是独立运行的,Applet是嵌入到web页面上的,必须在支持java的浏览器中运行 (2) Application中亦须有一个并且只有一个方法main(). Applet中没有main()方法,并且它是从java.applet.Applet继承的 (3) Application是能够进行各种操作的程序,包括读/写文件操作,但是Applet队站点的磁盘文件不能进行读/写操作。 2.Applet的生命周期 是指小应用程序的整个运行过程,他可以分为四个阶段 初始化init、启动start、停止stop、退出destroy 3.图形用户界面:包括AWT和SWING开发包 4.AWT简介:抽象窗口工具包,是java提供的建立图形用户界面GUI的开发包。主要功能有:用户界面构件、事件处理模型、图形和图像工具、布局管理等 5.事件处理机制涉及的三类对象 在java的事件处理中,主要涉及三类对象 (1) 事件:用户对界面操作在java语言上的描述,以类的形式出现 (2) 事件源:事件发生的场所,通常就是各个组件 (3) 事件处理者(监视器):接收事件并对其进行处理的对象 6授权处理机制 由于同一个事件源上可能发生多个事件,因此java采用了授权处理机制,事件源可以把在其自身所有可能发生的的事件分别授权给不同的时间处理者来处理。事件处理这也成为监听器,监听器时刻监听着事件源上发生的事件类型,一旦该事件类型与自己所负责处理的时间类型一致,就马上处理。 7.AWT组件库 按钮(Button)、标签(Label)、文本框(TextField)、文本域(TextArea)--ActionEvent-->ActionListener-->public void actionPerformed(ActionEvent e) 复选框(Checkbox)、单选钮(CheckboxGroup) 、下拉列表(Choice)、列表(List)、 ItemEvent-->ItemListener-->public void itemStateChanged(ItemEvent e) 框架(Frame)-->WindowEvent-->WindowListener--若干方法 WindowAdapter 默认布局是边界布局 对话框(Dialog)有模式、无模式 必须放在Frame中 面板(Panel)默认布局是FlowLayout布局 文件对话框(FileDialog) 菜单(MenuBart、Menu、MenuItem)必须放在frame中 构件的外观颜色和字体(Color、Font) 布局(四种) getSouce方法获得事件源 引包 import java.applet.*; import java.awt.*; import java.awt.event.*; 8.Swing Container c = new Container(); c=this.getContentPane(); javax.swing包 (二)练习部分: 1.小应用程序是存储于_InternetServer_上的java程序,它是在_客户端__端运行的。 2.小应用程序的生命期中包括如下几个阶段:_初始_、_启动_、_停止_和_退出_。 3.程序包java.awt.event是用于处理java中的___事件___的。 4.在文本域中输入回车、点选按钮触发的事件是_ActionEvent_,该事件对应的接口是_ActionListener_,其中只有_actionPerformed(ActionEvent e)_一个方法需要重写。 5.单选钮、复选框、下拉列表、列表对应的类分别是_CheckboxGroup,Checkbox,Choice,List_,它们都涉及了_ItemEvent_事件。 6.类java.awt.Panel的用途是___将各种布局组合起来___。 7.用java.applet.Applet生成的小应用程序中不能直接加入菜单,菜单必须加在_窗口_中。 8.Java中用类_java.awt.Font_来设置字体,用类_java.awt.Color_来设置颜色。 9.试编写一小应用程序,单击按钮后实现红色和兰色的转换。 import java.applet.*; import java.awt.*; import java.awt.event.*; public class ButtonPress extends Applet implements ActionListener{ Button b1 = new Button("红色"); Button b2 = new Button("兰色"); public void init(){ this.setLayout(new FlowLayout()); this.add(b1); this.add(b2); this.setBackground(Color.orange); b1.addActionListener(this); b2.addActionListener(this); } public void actionPerformed(ActionEvent e){ if(e.getSource()==b1){ this.setBackground(Color.red); } else{ this.setBackground(Color.blue); } } } 10. Applet与Application的区别 (1).Application是独立运行的,Applet是嵌入到web页面上的,必须在支持java的浏览器中运行 (2).Application中亦须有一个并且只有一个方法main(). Applet中没有main()方法,并且它是从java.applet.Applet继承的 (3).Application是能够进行各种操作的程序,包括读/写文件操作,但是Applet队站点的磁盘文件不能进行读/写操作。 第六章 (一)知识点部分: 1.请解释try、catch、finally块之间的关系。 答:try块用来监视某段代码执行过程中是否发生异常,若发生则产生异常对象并抛出。catch用于捕获异常并处理它。finally块中的语句无论是否发生异常都将被执行。 2.简述throw,throws语句的作用。 答: throw语句用于在程序中自行抛出异常,throw语句执行后,其后继语句将不再执行,执行流程将直接寻找后面的catch语句,如果catch语句中的参数能匹配throw语句抛出的Throwable对象,则执行相应的异常处理程序。如果catch语句中的参数没有一个能与该对象相匹配,则由缺省的异常处理器终止程序的执行并输出相应的异常信息。 throws语句用于声明一个方法可能引发的所有异常,这些异常是要求调用该方法的程序处理的。 (二)练习部分: 1.Throwable类有两个子类,分别是(Error)和(Exception)。 2.异常分为运行异常、捕获异常、(声明异常)和(抛出异常)。 3.如果程序段中有多个catch,程序会(C) A.每个catch都执行一遍 B.把每个符合条件的catch都执行一次 C.找到适合的异常类型后就不再执行其他catch D.找到适合的异常类型后继续执行后面的catch 4.当方法遇到异常又不知如何处理时,下列哪种做法是正确的(C) A.捕获异常 B.抛出异常 C.声明异常 D.嵌套异常 第七章 1.什么是进程? 答:进程是一个具有一定独立功能的程序在一个数据集合上的一次动态执行过程。 2.什么是线程? 答:线程就是比进程更小的运行单位,一个进程可以划分成多个线程。 3.在生命周期中,一个线程具有_创建_、_就绪_、_运行_、_阻塞_和_死亡_等五种状态。 4. Thread类的成员方法start的作用是_启动已创建的线程对象_。 5. 关于线程,下面说法对的是(C ) A.一个线程就是一个正在执行的程序 B.线程和线程之间无法通信 C.进程划分成线程,可以减少并发控制的时间 D.一个程序只有一个线程 第八章 1.什么是数据流? 答:数据流是指一组有序的、有起点和终点的字节组合。 2._InputStream_和_OutputStream_是字节输入输出流的超类;_Reader_和_Writer_是字符输入输出流的超类。 五、期中测试试卷及参考答案: 《Java程序设计》期中考试卷 一、单项选择题(每小题1分,共20分) 1、给出如下代码: class Test{  private int m;  public static void main(String args[]) {。。。。。。} } 如何使成员变量m 被方法main ()直接访问? ( ) A.将private int m 改为 static int m B.将private int m 改为protected int m C.将private int m 改为 public int m D.将private int m 改为 int m 2、给定两个整型数组的定义:int arr1[]={1,2,3,4,5};int arr2[]=arr1;然后经过修改将数组arr1的内容改为{1,4,9,16,25},那么此时arr2[1]的值为?( ) A、 1 B、2 C、4 D、9 3. Java源程序经编译生成的字节码文件的扩展名为( )。 A. class B. java C. exe D. html 4、一个类中定义的成员变量只能在同一个类中访问,下面的那个修饰符可以获得需要的访问控制( )。 A.private B.默认的 C.public D.static 5、下面哪个语句会产生编译错误( ) A、 float F = 4096.0f; B.double D = 4096.0; C. byte B = 4096; D.char C = 4096; 6、下列标识符中哪组都是合法的。 ( ) A. _key, exle, CLASS B. 5ab test1, _3a C. bcp, new, _c_d D.switch, if, _p 7、class A{ private static int x; public static void setX(int i){x=i;} public void printX(){System.out.println(“x=”+x);}} class B{ A.setX(10); ① A.printX(); ② A a=new A(); a.setX(20); ③ a.printX(); ④ } 下面哪句代码有错( ) A. ① B. ② C. ③ D. ④ 8、公有成员变量MAX_LENGTH是一个int型值,如果此变量的值保持常数值100,要使用哪个声明?( ) A. public int MAX_LENGTH=100; B. final int MAX_LENGTH=100; C. final public int MAX_LENGTH=100; D. protected final int MAX_LENGTH=100; 9.下列关于实型变量书写正确的是( ) A、 E3 B、2e0.3 C、1.2e3 D、1.2E0.3 10.在某个类中存在一个方法:void sort(int x),以下不能作为这个方法的重载的声明的是( ) A. public float sort(float x) B. int sort(int y) C. double sort(int x,int y) D. void sort(double y) 11. 开发出java程序设计语言的公司是( )。 A. SUN B. Microsoft C. IBM D. Borland 12. java语言中的复合数据类型包括:( ) A. 数组、类和字符 B.数组、浮点和布尔 C. 数组、类和接口 D.字符、类和布尔 13. 对于任意一个类,用户所能定义的构造方法的个数至多为 。( ) A.0 个 B.1 个 C.2 个 D. 任意个 14. 假设类 A 有构造方法 A(int a) ,则在类 A 的其他构造方法中调用该构造 方法的语句格式应为 ( ) A. A(x) B. this. A(x) C. this(x) D. super(x) 15. 以下定义一维数组的语句中,正确的是:( ) A. int a[5] B. int a[]=new [5]; C. int a[]; int a=new int[5]; D. int a[]={1,2,3,4,5}; 16. 有关类的说法正确的是( ) A 类具有封装性,所以类的数据是不能被访问的 B 类具有封装性,但可以通过类的功能接口访问类中的数据 C 声明一个类时,必须用public修饰 D 每个类中,必须有main方法,否则程序无法运行 17. 下面关于继承的说法正确的是( ) A 超类的对象就是子类的对象 B 一个类可以有几个超类 C 一个类只能有一个子类 D 一个类只能有一个超类 18. 下面关于多态性的说法正确的是( ) A 一个类中,不能有同名的方法 B 子类中不能有和父类同名的方法 C 子类中可以有和父类中同名且参数相同的方法 D 多态性就是方法的名字可以一样,但返回的类型必须不一样 19.关于实例方法和类方法,以下描述正确的是: ( ) A. 实例方法只能访问实例变量 B. 类方法既可以访问类变量,也可以访问实例变量 C. 类方法只能通过类名来调用 D. 实例方法只能通过对象来调用 20. 下列说法中,符合对象和类关系的是( ) A. 人和老虎 B.书和计算机等级考试书 C. 建筑材料和楼 D.轿车和汽车 二、填空题(每空1分,共20分) 1. java程序有两种基本的类型,分别是 、 。 2、编译源程序使用的命令是 ,解释执行编译过的程序使用的命令是 。 3、所有类的祖先是 4、java中声明接口的关键字为 实现接口的关键字为 。 5、在java编程中声明自定义包的关键字为 、声明包的语句必须添加在程序中___ _ __ 位置,包引入的关键字为 , 包是唯一自动引入每个java程序中。 6、父类和子类之间是 关系,用 关键字表示这种关系。 7.在java语言中,用来引用当前对象的运算符是 ,而用来引用当前对象的父类的运算符是 8.通过运算符 来实现成员变量的访问和成员方法的调用。 9.为类Class2编写构造方法的方法头,该构造函数接收两个整型形式参数 10.如果有一个类Son是Father的子类,能够被不同包中的类所使用,请写出该类的声明头 三、简答题(每小题5分,共15分) 1、 试述java语言的特点 2、 什么是方法重载和方法覆盖 3、 举例说明类和对象的关系 四、改错题:阅读下列程序,在不改变程序结构的基础上改正错误。(5分) 1. class Wrong { 2. public static void main(String args[]) { 3. bArr[]={“I’m a student”,”you’re a teacher”,”They’re my friends”} 4. for(i=0;i<=bArr.length;i++) { 5. System.out.println(Arr[i]); 6. System.out.println(bArr[i].tolowerCase()); 7. System.out.println(bArr[i].toupperCase()); 五、阅读程序题(每小题5分,共15分) 六、编程题(共25分,其中第一题15分,第二题10分) 1、编写一个java程序,完成下面功能: 1)设计一个ArrayTest类,添加一个整型数组,添加构造方法以对数组赋初值(要求是一个0-99间的随机整数)。 2)为ArrayTest类添加数组的求和方法,返回求和值。 3)利用ArrayTest计算数组的各个元素和值并在标准输出设备中输出结果。 2.假设有一条钢材长2000米,每天截取其中的一半,编写程序,求出多少天后,钢材的长度开始小于5米。 《Java程序设计》期中考试卷 参考答案 一、1.A 2.C 3.A 4.A 5.C 6.A 7.B 8.C 9.C 10.B 11.A 12.C 13.D 14.C 15.D 16.B 17.D 18.C 19.D 20.D 二、1.Application、Applet 2.javac、java 3.Object 4.interface、implements 5.package、第一行、import、java.lang 6.继承、extends 7.this、super 8.. 9.class2(int x,int y) 10.public class Son extends Father 三、 1.提示:课本第3页 (1).易于学习 (2).高效率的执行方式 (3).与平台无关性 (4).分布式 (5).安全性 (6).多线程 (7).丰富的API(Application Program Interface)文档和类库 2.提示:课本第110~111页 一个类中,有若干个方法名字相同,但方法的参数类型不同,称为方法的重载。 如果超类和子类有同名且参数相同的方法,那么超类的对象调用超类的方法,子类的对象调用子类的方法,这就是覆盖。 3.提示:课本第89页 类是具有共同属性和行为的事物的抽象。对象是类的实例。例如,“电话”类代表电话这一类事物,而电话的对象代表一个具体的电话。 四、 第3行改为:String bArr[]={“I’m a student”,”you’re a teacher”,”They’re my friends”} 第4行改为:for(int i=0;istatic:y=4 no static:x=0 static:y=4 no static:x=6 static:y=7 2.10 40 3.hello welcome new welcome hello welcomejava 六、 1. public class ArrayTest { int a[]=new int[10]; ArrayTest(){ for(int i=0;iint)(100*Math.random()); System.out.print(a[i]+" "); } } int sum(){ int sum=0; for(int i=0;ireturn sum; } public static void main(String args[]){ ArrayTest aa=new ArrayTest(); int sum=aa.sum(); System.out.println(); System.out.println("数组的和是:"+sum); } } 2. public class Limit { public static void main(String[] args) { int n=0; double sum=2000; while(sum>=5){ n+=1;sum/=2; } System.out.println("N="+n); } }

《Java程序设计》期末复习资料相关推荐

  1. java语言程序设计期末复习综合练习题_Java语言程序设计期末复习综合练习题答案...

    Java语言程序设计期末复习综合练习题 一.选择题. 2. main方法是Java Application程序执行的入口点,关于main方法的方法头以下哪项是合法的( )? A.public stat ...

  2. java语言程序设计复习重点_java语言程序设计期末复习要点

    java语言程序设计期末复习要点 一.选择题 1.以下哪个标识符为合法标识符( A ). A. aVariable1 B. 1var C. var% D. static 2.下列叙述中,正确的是( A ...

  3. 2015年中央电大c语言,2015年电大 2015年电大小抄-中央电大2012春季c语言程序设计期末复习指导(本)资料.doc...

    2015年电大 2015年电大小抄-中央电大2012春季c语言程序设计期末复习指导(本)资料 中央广播电视大学计算机科学与技术专业 C语言程序设计A课程考核说明(2012) 一.考核说明 <C语 ...

  4. 管理信息系统期末复习资料

    管理信息系统 期末复习资料 管理信息系统考试题型:填空题(20分,每空一分)单选(每题2分,共20分)判断:(每题2分,共10分)简答题(每题5分,共20分)论述题(每题10分,共20分)画图题(一个 ...

  5. 《计算机组成原理》期末复习资料汇总

    <计算机组成原理>期末复习资料汇总 一.名词解释 微程序:是指能实现一条机器指令功能的微指令序列. 微指令:在机器的一个CPU周期内,一组实现一定操作功能的微命令的组合. 微操作:执行部件 ...

  6. c语言判断s1是否大于s2,C语言程序设计_复习资料一.doc

    C语言程序设计_复习资料一 -- <程序设计基础> 院(系) 班级 学号 姓名 试卷卷面成绩占课程考核成绩 %平时 成绩占 %课程考核成绩题号一二三四五六七八九十小计得分 得 分一.单项选 ...

  7. c语言程序设计单项选择题,1.奥鹏南开《C语言程序设计》复习资料单项选择题答案及解析...

    奥鹏南开<C语言程序设计>复习资料答案及解析单项选择部分 [1.1]以下不正确的C语言标识符是. A) int B) a_1_2 C) ab1exe D) _x [A]int是关键字,标识 ...

  8. c语言程序设计备考,《C语言程序设计》复习资料.doc

    <C语言程序设计>复习资料<C语言程序设计>复习资料.doc 第 PAGE 7 页 共 NUMPAGES 7 页1.概念:1.若x和n均是int型变量,且它们的初值均为5,计算 ...

  9. 长春工业大学计算机组成原理考试开卷考吗,计算机组成原理期末复习资料

    长春工业大学人文信息学院 计算机星系工程系 计算机组成原理 期末复习资料 计算机组成原理 一.缩写词解释 CPU:中央处理器 ALU:算术逻辑单元 I/O:输入输出接口 RAM:随机存储器 SRAM: ...

  10. Linux 操作系统常用以下哪种编译器,Linux 操作系统期末复习资料(Alpha版)

    Linux 操作系统期末复习资料 >>问答题 1.请列举至少4个你知道的Linux发行版? 答:RedLinux.红旗Linux.Debain.SuSE Linux等. 2.Linux支持 ...

最新文章

  1. 命令行收集(DOS/Linux/nc/xscan/xsniffer)
  2. php常见排序算去,PHP兑现常见排序算法
  3. 10个重要问题概览Transformer全部内容
  4. 什么是闭包,我的理解
  5. 机器人纹身师出世,你敢让它帮你纹身吗?
  6. 利用python爬取_在知乎上利用Python爬取了三百万数据!服务器崩了!企业级大项目...
  7. html点击按钮弹出窗口_电脑桌面总是弹出广告怎么办?教你2种方法,轻松解决...
  8. C语言 time函数 开销,C语言: 函数调用的开销
  9. python99乘法表while翻译_Python学习之while练习--九九乘法表
  10. linux windows 动态库导出查看 ld -r
  11. 解决ModuleNotFoundError: No module named ‘_curses‘错误
  12. TexStudio快捷键
  13. Queries with streaming sources must be executed with writeStream.start()
  14. linux ls -l 日期乱码,请教-关于ls-l的日期显示问题
  15. python3 input函数
  16. CentOS6.6下搭建vsftpd+PAM认证
  17. Spring中的循环依赖(单例)
  18. postgis版本升级
  19. c语言 最佳情侣身高差
  20. Windows下Putty使用ssh密钥对远程连接阿里云服务器

热门文章

  1. Camera_Hal3_User_Manual
  2. MAVEN专题之十、设计你自己的maven插件【高手必备】
  3. xmpp java_XMPP: Android基于Xmpp的即时通讯
  4. JSP还有必要学吗 这篇文章告诉你
  5. 如何挑选和购买适合自己的示波器
  6. vscode 插件: REST Client 介绍
  7. ios微信小程序下拉刷新怎么配_浅谈微信小程序中的下拉刷新和上拉加载
  8. 欧式空间与希尔伯特空间
  9. python字符编码(一看就懂)
  10. 从刷卡到二维码再到刷脸,无现金方式如何掀起支付革命?丨Xtecher 视角