Java程序设计复习1.docx_第1页
Java程序设计复习1.docx_第2页
Java程序设计复习1.docx_第3页
Java程序设计复习1.docx_第4页
Java程序设计复习1.docx_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第一章1简述Java语言的特点?答:(1).易于学习;(2).高效率的执行方式;(3).与平台无关性;(4).分布式(5).安全性;(6).多线程;(7).丰富的API(Application Program Interface)文档和类库2Java程序有两种基本的类型,分别是_Applet_、Application_。3编译源程序使用的命令是_javac_,解释执行编译过的程序使用的命令是_java_。4编译Applet源程序文件后,它所产生的字节码文件的扩展名是(B )A.java B.class C.html D.exe第二章1Java的布尔常量只有两个值:false(假)和 true(真)。2Java的整型变量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=5的运行结果是_false_。715.设x、y、max、min均为int 型变量,x、y已赋值。用三目条件运算符将x、y的较大值赋给max、较小值赋给min的语句分别是max=(xy)?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 位数 ( n3 ),它的每个位上的数字的 n 次幂之和等于它本身。(例如:13 + 53 + 33 = 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 mpj) int t=mpi;mpi=mpj;mpj=t; System.out.println(The sorted 10 numbers:); for (int j=0;jt); 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个099之间的随机整数,求出它们中的最大值和最小值。提示:java.lang.Math类支持random方法:Math.Random()。该方法返回值是正数,类型为double,范围为01。如果要得到其他范围的数,则要进行相应的转换。例如要得到(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;nmax1) 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.无返回值,没有void3.java为每一个类提供一个默认的无参的构造函数Student()4.实体:当用一个类创建一个对象时,类中的成员变量被分配内存空间,这些内存空间被称作该对象的实体,而对象中存放着引用,以确保实体由该对象操作使用。5.参数传递6.垃圾回收机制:实际上,java有所谓的“垃圾回收”机制,这种机制周期的检测某个实体是否已不再被任何对象所拥有,如果发现这样的实体,就释放实体占有的内存。 7.对象的生命周期,对象销毁方法 finalize8.访问权限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应用程序 网络功能(二)练习部分: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 Test03public static void main(String args)StringBuffer s= new StringBuffer(good);StringBuffer s2=new StringBuffer(bad);test(s,s2);System.out.println(s);/9System.out.println(s2);/10static 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输出结果为:goodbadnewgoodgoodhahbad5. 关于以下程序代码的说明正确的是( D )1class HasStatic2 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=103D、 程序通过编译,输出结果为:x=1026.面向对象的程序设计有许多特性,下列选项中,不是面向对象程序设计特性的是(C)A封装性 B。继承性 C.逻辑性 D。多态性7.下列哪个声明是正确的(D)Aabstract final class Hh. B. abstract private move()。C.protected private number; D.public abstract class Car。8.下面的程序段在程序执行到第13行的声明时,将调用(C) class Personpublic void printValue(int i,int j)public void printValue(int i)public class Teacher extends Personpublic 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 PersonString 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;APerson(n,a)B this(Person(n,a))C.this(n,a) D.this(name,age)10.下列说法正确的是(C)A重载是指自来重新定义父类中函数的做法B.覆盖是指在同一个类中允许存在多个同名函数C多态性是指同一个属性或者行为在一般类及其各个特殊类中具有不同的语义D子类不能包含父类中没有的特性11.当不希望某个类被其他类继承时,就可以将该类标识为(A)Afinal B。abstract c.private D.protected12下列选项中,用来尽量隐蔽对象的内部细节的特性是(B)A.重载 B。封装 C。继承 D 多态13.下列说法正确的是(B)A.用abstract修饰的方法,不能再被子类重写B用final修饰的方法,不能再被子类重写C抽象类中一定要包括abstract方法D某个类中包含了abstract方法,该类可以不声明为abstract类14.下面那个类声明是正确的(C)Aabstract class G2 extends superClass1,superClass2。Babstract public class classmates。Cpublic final class NewClass extends superClass implements Interface1。Dpublic abstract class String。15.下列关于构造方法说法正确的是(C)A构造方法的名称可以和类不一样B构造方法必须有返回值C只能用new调用构造方法D构造方法不可以被重载16.在抽象类中声明一个抽象方法的是(B)Apublic abstract method(); B。public abstract void method();Cpublic void abstract Method(); D。public void method()abstract17能将程序补充完整的选项是(D)class Personprivate 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;_Ai=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、退出destroy3.图形用户界面:包括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.SwingContainer 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生成的小应用程序中不能直接加入菜单,菜单必须加在_窗口_中。8Java中用类_java.awt.Font_来设置字体,用类_java.awt.Color_来设置颜色。9.试编写一小应用程序,单击按钮后实现红色和兰色的转换。import java.applet.*;import java.awt.*;import java.awt.event.*;public class ButtonPress extends Applet implements ActionListenerButton 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);elsethis.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语句用于声明一个方法可能引发的所有异常,这些异常是要求调用该方法的程序处理的。(二)练习部分:1Throwable类有两个子类,分别是(Error)和(Exception)。2异常分为运行异常、捕获异常、(声明异常)和(抛出异常)。3如果程序段中有多个catch,程序会(C)A.每个catch都执行一遍 B.把每个符合条件的catch都执行一次C.找到适合的异常类型后就不再执行其他catchD.找到适合的异常类型后继续执行后面的catch4当方法遇到异常又不知如何处理时,下列哪种做法是正确的(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 Testprivate int m;public static void main(String args) 。如何使成员变量m 被方法main ()直接访问? ( )A.将private int m 改为 static int m B.将private int m 改为protected int mC.将private int m 改为 public int m D.将private int m 改为 int m2、给定两个整型数组的定义:int arr1=1,2,3,4,5;int arr2=arr1;然后经过修改将数组arr1的内容改为1,4,9,16,25,那么此时arr21的值为?( )A、1 B、2 C、4 D、93. Java源程序经编译生成的字节码文件的扩展名为( )。A. class B. java C. exe D. html4、一个类中定义的成员变量只能在同一个类中访问,下面的那个修饰符可以获得需要的访问控制( )。A.private B.默认的 C.public D.static5、下面哪个语句会产生编译错误( )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, _p7、class A private static int x;public static void setX(int i)x=i;public void printX()System.out.println(“x=”+x);class BA.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.310.在某个类中存在一个方法: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. Borland12. java语言中的复合数据类型包括:( )A. 数组、类和字符 B.数组、浮点和布尔

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论