Java程序设计复习1
- 格式:docx
- 大小:35.71 KB
- 文档页数:16
《Java语言程序设计(一)》复习资料Java语言是目前使用最为广泛的网络编程语言之一;具有面向对象;与平台无关性;多线程性;动态性等特点。
Java运算符按功能分6种,具体如下:算术运算符、关系运算符、逻辑运算符、位运算符、赋值运算符、条件运算符。
结构化程序设计有顺序、分支、循环三种基本流程;java中的分支语句包括if语句、switch 语句;循环语句包括while语句、do-while语句、for语句;其他如对象、变量定义语句、赋值语句、方法调用语句等都是顺序语句。
Java中逻辑型用boolean表示;字符型用char表示;整型共有4种分别是byte(字节型)、short(短整型)、long(长整型)、int(普通整型);浮点型共两种float和double。
创建线程可以通过继承线程类Thread创建线程类;建立一个实现Runnable接口的类来运行线程。
用abstract修饰的类不能创建对象,必须产生子类,有子类创建对象;用abstract修饰的方法只允许声明,而不允许实现;如果一个类是一个abstract类的子类,它必须实现父类的abstract方法。
在类的方法的定义之前,加上修饰字public和加上修饰字private是不同的。
Public修饰的方法为公用方法,任何类的方法都可以访问他;Private修饰的方法,本类内部可以访问。
在面向对象系统中,类是对一组相同对象的描述,类概括了同类对象的共有性质:数据和方法。
对象是类的一个实例。
一个java应用程序必须且只有一个类含有main方法,这个类称为应用程序的主类,其main方法必须被说明为public static void;一个Java Applet小应用程序不再需要main方法,但必须有一个类扩展了Applet类,即它是Applet类的主类。
"编程语言的四个发展阶段(1)面向机器语言(2)面向过程语言(3)结构化程序设计阶段(4)面向对象编程。
面向对象复习1.以下关于抽象类和接口的说法错误的是()A、接口中的方法都必须加上public关键字。
B、在抽象类中可以没有抽象方法C、实现抽象类和接口的类必须实现其中的所有方法,除非它也是抽象类。
接口中的方法都不能被实现D、接口中定义的变量默认是public static final 型,且必须给其初值,所以实现类中不能重新定义,也不能改变其值。
2.下列哪一种叙述是正确的()A.abstract修饰符可修饰字段、方法和类B.抽象方法的body部分必须用一对大括号{ }C.声明抽象方法,大括号可有可无D.声明抽象方法不可写出大括号3下列说法正确的是()A、JAVA程序的main方法必须写在类里面B、JAVA程序中可以有多个main方法C、JAVA程序中类名必须与文件名一样D、JAVA程序的main方法中如果只有一条语句,可以不用{}(大括号)括起来4.Java中,在如下所示的Test类中,共有(2)个构造方法。
public class Test{private int x;public Test(){x=35;}public void Test(double f){This.x=(int)f;}public Test(String s){}}5 变量命名规范说法正确的是(F)E、变量由字母、下划线、数字、$符号随意组成;F、变量不能以数字作为开头;G、A和a在java中是同一个变量;H、不同类型的变量,可以起相同的名字;6为一个boolean类型变量赋值时,可以使用(I)方式I、boolean = 1;J、boolean a = (9 >= 10);K、boolean a="真";L、boolean a = = false;7以下(O)不是合法的标识符M、STRINGN、x3x;O、v oidP、de$f2、表达式(11+3*8)/4%3的值是(D)A、31B、0C、1D、23、(A)表达式不可以作为循环条件A、i++;B、i>5;C、bEqual = str.equals("q");D、count = = i;4、运算符优先级别排序正确的是(C)A、由高向低分别是:()、!、算术运算符、关系运算符、逻辑运算符、赋值运算符;B、由高向低分别是:()、关系运算符、算术运算符、赋值运算符、!、逻辑运算符;C、由高向低分别是:()、算术运算符、逻辑运算符、关系运算符、!、赋值运算符;D、由高向低分别是:()、!、关系运算符、赋值运算符、算术运算符、逻辑运算符;5、以下程序的运行结果是:(B)public class Increment{public static void main(String args[]) {int a;a = 6;System.out.print(a);System.out.print(a++);System.out.print(a);}}A.666B.667C.677D.6766、下列值不为true的表达式有(C)。
一、选择题:1.运行Java程序需要的工具软件所在的目录是 A 。
A.JDK的bin目录 B.JDK的demo目录 C.JDK的lib目录 D.JDK的jre目录2.下列关于Java语言特点的叙述中,错误的是 A 。
A.Java是面向过程的编程语言 B.Java支持分布式计算C.Java是跨平台的编程语言 D.Java支持多线程3. Java的核心包中,提供编程应用的基本类的包是 A 。
A.ng B.java.util C.java.applet D.java.rmi4.下列关于Java对import语句规定的叙述中,错误的是 C。
A.在Java程序中import语句可以有多个B.在Java程序中import语句可以没有C.在Java程序中import语句必须有一个D.在Java程序中import语句引入在所有类定义之前5.在编译Java程序时,用于指定生成.class文件位置的选项是 B。
A.-g B.-d C.-verbose D.-vonarn6.下列关于构造方法的叙述中,错误的是 C 。
A.Java语言规定构造方法名与类名必须相同B.Java语言规定构造方法没有返回值,但不用void声明C.Java语言规定构造方法不可以重载D.Java语言规定构造方法只能通过new自动调用7.下列叙述中错误的是 D 。
A.Java Application与Applet所用编译命令相同B.通常情况下,Java Application只能有一个main()方法C.Java Applet必须有HTML文件才能运行D.Java Applet程序的.class文件可用Java命令运行8.处理对象传输的接口是 A。
A.Serializable B.Cloneable C.ItenListener D.ActionListener9.在读取二进制数据文件的记录时,为了提高效率常常使用的一种辅助类是 C 。
A.InputStream B.FileInputStream C.BufferInputStream D.BufferedReader 10.下列事件监听器中,无法对TextField对象进行事件监听和处理的是 D 。
第1章、Java语言简介第2知识点、Java程序的开发过程【单项选择】1 、下列关于classpath环境变量的说法中,哪一个是正确的(难度系数:易)A、classpath配置一次后可永久使用B、没有classpath环境变量就不能运行Java程序C、classpath环境变量可以让虚拟机找到class文件的目录D、查看当前classpath配置的命令是:classpath参考答案:C答案解析:classpath环境变量可以让虚拟机找到class文件目录,没有配置classpath环境变量时,java虚拟机会自动将其设置为“.”。
查看当前classpath的命令是set classpath;【单项选择】2 、在下列说法中,选出最正确的一项是( )。
(难度系数:易)A、Java语言是以类为程序的基本单位的B、Java语言是不区分大小写的C、多行注释语句必须以//开始D、在Java语言中,类的源文件名和该类名可以不相同参考答案:A【单项选择】3 、Java属于以下哪种语言? (难度系数:易)A、机器语言B、汇编语言C、高级语言D、以上都不对参考答案:C答案解析:Java是一门高级编程语言【单项选择】4 、下列选项中不属于Java虚拟机的执行特点的一项是( )。
(难度系数:易)A、异常处理B、多线程C、动态链接D、简单易学参考答案:D【单项选择】5、下列命令中,可以将文档注释提取出来生成帮助文档的是()(难度系数:易)A、javacB、javaC、javadocD、jar参考答案:C答案解析:可以使用javadoc命令将文档注释提取出来生成帮助文档【单项选择】6 、下列关于Java特点的描述中,错误的是?(难度系数:易)A、Java语言不支持指针B、Java具有自动垃圾回收的机制C、Java只能运行在Window和Linux平台D、Java允许多个线程同时执行参考答案:C答案解析:JAVA是一门面向对象的语言,它没有指针的概念,并提供了自动垃圾回收的机制,具有跨平台,多线程等特点。
湖南科技学院二○ 年 学期期末考试信息与计算科学专业 年级《面向对象程序设计》 试题考试类型:开卷 试卷类型: 卷 考试时量:120 分钟 一、单项选择题(每小题2 分,共计30 分)1. 符合对象和类的关系的是( D )。
A )人和猴子B )书和房子C )狗和猫D )飞机和交通工具2. 在java 语言中,能自动导入的包是__B ______。
默认导入 A )java.awt B )ng C )java.io D )java.applet3. 下列说法不正确的是( B )。
A )java 应用程序必须有且只有一个main 方法。
B )System.out.println ()换行了的与System.out.print ()是相同的标准输出方法C )java 源程序文件的扩展名为javaD )java 小应用程序Applet ? 没有main 方法。
4. 下列数中,表示为单精度浮点数的是( C )。
A )0.652dB )3.14156DC )0.29874fD )0568 5. 下列关于Java 源程序结构的论述中,正确是( A )。
A )一个文件包含的public 类、 package 最多1个 B )一个文件包含的import 语句最多1个 C )一个文件包含的接口定义最多1个 D )一个文件包含的类定义最多1个6. 用鼠标点击菜单项(MenuItem)产生的事件是( A )。
A )MenuEventB )ActionEventC )KeyEventD )MouseEvent 7. 若要串行化=序列化 某些类的对象,这些类就必须实现( A )。
A )Serializable 接口 标记作用 B )java.io.Externalizable C )java.io.DataInput 接口 D )DataOutput 接口 8. 表达式“7^2”的值是( A )。
A )49 B )14 C )5D )29. 在语句“for(i=0;i<100;i+=3)”之后的循环体中,未使用语句来更改变量i 的值。
2021年《Java程序设计》复习题答案《Java 程序设计》复习题一、选择题: 1.哪个关键字可以抛出异常?finallyC、 throwD、 staticA、transientB、 2.对于下列代码:String str1=\ String str2=\String str3=new String(\StringBuffer str4=new StringBuffer(\ 以下表达式的值为 true 的是 A) str1= =str2; C) str2= =str3; 3. B) str1= =str4; D) str3= =str4;。
D.java.rmiJava 的核心包中,提供编程应用的基本类的包是B.java.utilC.java.appletA.ngng包中封装了所有编程应用的基本类;java.util包提供实用程序类和集合类,如系统特性定义和使用、日期函数类、集合等常用工具;java.applet 包为Applet提供执行需要的所有类,。
主要是访问Applet内容的通信类。
java.rmi包提供程序远程方法调用所需的类。
4.下面程序段的输出结果是StringBuffer buf1=new StringBuffer( );System.out.println(buf1.length()); A. 0 5. B. nullC. 16D. 8在编译 Java 程序时,用于指定生成.class 文件位置的选项是。
B.-dC.-verboseD.-vonarnA.-g-g 输出文件中加行号以及局部变量信息,为调试程序时用。
-o 对类文件进行优化编译。
-nowarn 关闭警告信息,只显示错误信息。
-verbose 显示源代码文件和字节码文件的相关信息。
-d<目录>指定存放生成的类(.class)文件的位置6.是正确的(欲构造 ArrayList 类的一个实例,此类继承了 List 接口,下列哪个方法 )A . ArrayList myList=new Object();B. List myList=new ArrayList();C. ArrayList myList=new List();D. List myList=new List();7.不匹配正则表达式“a?b+[.,:]\\\\d”的字符串是。
Java程序设计基础期末复习指导Ⅰ复习要求第1章程序设计概述1.掌握程序设计语言的分类2.掌握面向对象中的基本概念3.掌握建立Java运行环境练习题P10 1.第二章Java语言基础1.掌握变量、各种运算符的功能和用法2.掌握运算符的优先级3.理解程序源代码课本例题2.4 2.5 2.6 2.8练习题P28 3. 4. 5. 6.第三章流程控制1.掌握选择结构并熟练应用2.掌握循环结构并熟练应用例题:3.2 3.3 3.5 3.7练习题:P42 1. 3第四章方法1.掌握方法的概念和作用2.掌握方法的定义3.掌握参数传递与返回值例题: 4.1 4.2 4.4 4.6 4.7练习题P56 1. 2. 3.第五章类与对象1.掌握类的定义2.掌握类的实例化3.掌握Java Application的基本结构例题: 5.1 5.3 5.6 5.7 5.12练习题:P80 1. 2.第六章继承与多态1.掌握继承关系2.掌握属性、方法在继承中的特点3.掌握接口的作用、定义和实现例题:6.1 6.3练习题:P111 1. 2.第七章例外处理1.掌握例外机制2.了解Java定义的例外类练习题:P138 1.第八章Java基本类库介绍1.了解包的概念2.了解ng中的几个基本类练习题:P159 1.第九章Java的集合类1.了解集合类与普通数组的区别2.了解集合类的特点及适用条件练习题:P184 1.第十章输入输出系统1.掌握输入输出的总体结构2.掌握流的概念3.能构建不同的流例题:10.8练习题:P211 1.第11、12、13章内容只做了解,不在本次考试范围之内。
II样题一、选择题(每小题2分,共60分)1.算法的主运算如下,其中i的初值为1,s的初值为0,“←”为赋值号。
while i<n do{for j←1 to n dos←s+a[i,j]i←i*2;则该算法的时间复杂度为()A.O(2n) B.O(n+log2n)C. O ( n log2n)D.O(n2)2. 下面关于数据结构的叙述中,正确的叙述为()A.顺序存储方式和优点是存储密度大,且插入、删除运算效率高B.链表中的每一个结点都包含好一个指针C.包含n个结点的二叉排序树的最大检索长度为log2nD.将一棵树转换为二叉树后,根结点没有右子树3.下面列出的数据管理技术发展的三个阶段中,哪个(些)阶段没有专门的软件数据进行管理()I.工管理阶II.文件系统阶段III.数据库阶段A.只有I B.IIC.I,II D.II,III4.数据库的三级模式结构由模式、模式和内模式组成,它适合于哪个(些)类型的数据库()I.关系型数据库II.层次型数据库III.网状型数据库A.只有IB.I和IIC.II和IIID.都适合5.提高模块的__,使得当修改或维护模块时,可减少把一个模块的错误扩散到其他模块中去的机会。
《JA V A程序设计》复习题之(一)选择题一、单选择题1、编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为( )。
A. javaB. .classC. htmlD. .exe2、设x = 1 , y = 2 , z = 3,则表达式y+=z--/++x 的值是( )。
A. 3B. 3. 5C. 4D. 53、不允许作为类及类成员的访问控制符的是( )。
A. publicB. privateC. staticD. protected4、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( )。
A. static void method( )B. public void method( )C. final void method( )D. abstract void method( ) 5.Java application中的主类需包含main方法,以下哪项是main方法的正确形参?()A、String argsB、String ar[]C、Char argD、StringBuffer args[]6.以下关于继承的叙述正确的是()。
A、在Java中类只允许单一继承B、在Java中一个类只能实现一个接口C、在Java中一个类不能同时继承一个类和实现一个接口D、在Java中接口只允许单一继承7.paint()方法使用哪种类型的参数? ()A、GraphicsB、Graphics2DC、StringD、Color8.以下哪个不是Java的原始数据类型()A、intB、BooleanC、floatD、char9.以下哪项可能包含菜单条()。
A、PanelB、FrameC、AppletD、Dialog10.若需要定义一个类域或类方法,应使用哪种修饰符?()A、staticB、packageC、privateD、public11.在浏览器中执行applet 程序,以下选项中的哪个方法将被最先执行()。
第一章1.简述Java语言的特点?答:(1).易于学习;(2).高效率的执行方式;(3).与平台无关性;(4).分布式(5).安全性;(6).多线程;(7).丰富的API(Application Program Interface)文档和类库2.Java程序有两种基本的类型,分别是___Applet_______、Application____。
3.编译源程序使用的命令是_javac___,解释执行编译过的程序使用的命令是_java__。
4.编译Applet源程序文件后,它所产生的字节码文件的扩展名是(B )A.javaB.classC.htmlD.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<1B.’n’-3C.’a’=8D.’A’%65.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.");elseSystem.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.");elseSystem.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.使用ng.Math类,生成10个0~99之间的随机整数,求出它们中的最大值和最小值。
提示:ng.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.无返回值,没有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运算符创建对象。