全国计算机考试二级java复习资料
- 格式:doc
- 大小:184.00 KB
- 文档页数:21
计算机二级考试Java题库及答案第一题题目:什么是Java?答案:Java是一种面向对象的编程语言,由Sun Microsystems (现在是Oracle Corporation)开发。
第二题题目:Java的特点有哪些?答案:Java具有跨平台性、面向对象、简单易学、安全可靠、多线程、动态性等特点。
第三题题目:Java的基本数据类型有哪些?答案:Java的基本数据类型包括整型(byte、short、int、long)、浮点型(float、double)、字符型(char)和布尔型(boolean)。
第四题题目:Java中如何声明一个变量?答案:在Java中,可以使用关键字`int`、`float`、`char`等声明一个变量,并指定变量的类型和名称。
第五题题目:Java中的循环语句有哪些?答案:Java中的循环语句包括`for`循环、`while`循环和`do-while`循环。
第六题题目:Java中如何定义一个类?答案:在Java中,可以使用关键字`class`定义一个类,并在类中定义属性和方法。
第七题题目:Java中如何实现继承?答案:Java中使用关键字`extends`实现继承,子类可以继承父类的属性和方法。
第八题题目:Java中如何处理异常?答案:Java中使用`try-catch-finally`语句块来处理异常,可以捕获并处理异常,保证程序的正常运行。
第九题题目:Java中如何读取文件?答案:Java中可以使用`FileInputStream`或`BufferedReader`类来读取文件内容。
第十题题目:Java中如何创建线程?答案:Java中可以通过继承`Thread`类或实现`Runnable`接口来创建线程,并使用`start()`方法启动线程。
以上是计算机二级考试Java题库及答案的一部分,希望对您的备考有所帮助。
循环链表的优点主要体现在两个方面:一是在循环链表中,只要指出表中任何一个结点的(3)后序遍历(LRD子树,最后访问根结点。
1.7 查找技术(学吧学吧独家稿件)1、顺序查找进行比较,最坏情况下需要比较n次。
顺序查找一个具有n下列两种情况下只能采用顺序查找:1结构,都只能用顺序查找。
22、二分法查找为止。
前提:必须在具有顺序存储结构的有序表中进行。
查找过程:1)若中间项(中间项mid=(n-1)/2,mid2)若x3)若x*:二分法查找只适用于顺序存储的线性表,且表中元素必须按关键字有序(升序)排列。
行二分法查找,其时间复杂度为O(log2n)。
1.8 排序技术(学吧学吧独家稿件)调整为有序记录序列的一种操作。
1、交换类排序法(方法:冒泡排序,快速排序)。
23、选择类排序法(方法:简单选择排序,堆排序)。
总结:各种排序法比较:52.1 程序设计风格(1123(2)数据说明。
1(3)语句的结构。
1的简化;11的独立性;13(4)输入和输出。
1法性;3使用自由格式;5交互式输入/表格式。
2.21goto语句。
软件工程过程是把输入转化为输出的一组彼此相关的资源和活动。
3、软件生命周期软件生命周期:软件产品从提出、实现、使用维护到停止使用退役的过程。
软件生命周期分为软件定义、软件开发及软件运行维护三个阶段:1)软件定义阶段:包括制定计划和需求分析。
制定计划:确定总目标;可行性研究;探讨解决方案;制定开发计划。
需求分析:对待开发软件提出的需求进行分析并给出详细的定义。
2)软件开发阶段:软件设计:分为概要设计和详细设计两个部分。
(学吧学吧独家稿件)软件实现:把软件设计转换成计算机可以接受的程序代码。
软件测试:在设计测试用例的基础上检验软件的各个组成部分。
3)软件运行维护阶段:软件投入运行,并在使用中不断地维护,进行必要的扩充和删改。
*:软件生命周期中所花费最多的阶段是软件运行维护阶段。
4、软件工程的目标和与原则(1)软件工程目标:在给定成本、进度的前提下,开发出具有有效性、可靠性、可理解性、可维护性、可重用性、可适应性、可移植性、可追踪性和可互操作性且满足用户需求的产品。
计算机二级java考试题库及答案1. 以下哪个选项是Java中的一个基本数据类型?A. StringB. IntegerC. BooleanD. List答案:C2. Java中,哪个关键字用于定义一个类?A. classB. structC. functionD. interface答案:A3. 在Java中,以下哪个选项不是控制流语句?A. ifB. switchC. forD. try答案:D4. Java中,哪个关键字用于抛出一个异常?A. throwB. throwsC. catchD. finally答案:A5. 在Java中,哪个关键字用于声明一个方法?A. methodB. functionC. procedureD. void答案:D6. Java中,下列哪个选项是正确的继承关系?A. 类可以继承接口B. 接口可以继承类C. 类可以继承类D. 接口可以继承接口答案:D7. Java中,哪个关键字用于声明一个包?A. packageB. importC. classD. public答案:A8. 在Java中,哪个关键字用于实现多态?A. extendsB. implementsC. interfaceD. abstract答案:A9. Java中,哪个关键字用于声明一个变量?A. varB. letC. constD. final答案:A10. 在Java中,哪个关键字用于定义一个接口?A. classB. interfaceC. abstractD. enum答案:B11. Java中,哪个关键字用于声明一个枚举类型?A. enumB. listC. setD. map答案:A12. 在Java中,哪个关键字用于声明一个泛型?A. genericB. typeC. classD. extends答案:D13. Java中,哪个关键字用于声明一个线程?A. threadB. runnableC. synchronizedD. volatile答案:B14. 在Java中,哪个关键字用于声明一个同步方法?A. synchronizedB. volatileC. transientD. final答案:A15. Java中,哪个关键字用于声明一个常量?A. constB. finalC. staticD. abstract答案:B。
计算机二级考试java真题及答案一、单选题1. Java中,下列哪个关键字用于声明一个类?A. interfaceB. classC. abstractD. final答案:B2. 在Java中,下列哪个选项是正确的字符串拼接方式?A. "Hello" + "World"B. "Hello" + 123C. "Hello" + 123.45D. "Hello" + true答案:A3. Java中,下列哪个关键字用于声明一个方法?A. classB. methodC. functionD. void答案:D4. 在Java中,下列哪个选项是正确的数组初始化方式?A. int[] arr = new int[5];B. int[] arr = {1, 2, 3, 4, 5};C. int arr[] = new int[5];D. Both A and B答案:D5. Java中,下列哪个选项是正确的继承关系?A. 类可以继承多个类B. 类只能继承一个类C. 接口可以继承多个接口D. 接口不能继承接口答案:C二、填空题1. Java中,用于声明一个变量的关键字是________。
答案:var2. Java中,用于声明一个常量的关键字是________。
答案:final3. Java中,用于声明一个接口的关键字是________。
答案:interface4. Java中,用于声明一个枚举的关键字是________。
答案:enum5. Java中,用于声明一个泛型的关键字是________。
答案:<>三、判断题1. Java中,所有的类都隐式继承自ng.Object类。
(对/错)答案:对2. Java中,final关键字可以修饰类、方法和变量。
(对/错)答案:对3. Java中,static关键字可以修饰局部变量。
Java计算机二级考试题目及答案一、选择题(每题2分,共20分)1. Java中,下列哪个关键字用于声明一个类?A. classB. interfaceC. structD. enum答案:A2. 在Java中,哪个方法用于获取字符串的长度?A. length()B. size()C. count()D. length答案:A3. 下列哪个选项是Java中的垃圾回收机制?A. 手动释放内存B. 程序员控制内存分配和释放C. 系统自动回收不再使用的对象D. 程序员定期检查内存使用情况答案:C4. Java中,下列哪个操作符用于比较两个值是否不相等?A. ==B. !=C. =D. ===答案:B5. 在Java中,下列哪个关键字用于抛出异常?A. throwB. throwsC. catchD. try答案:A6. Java中,下列哪个关键字用于定义一个接口?A. classB. interfaceC. abstractD. final答案:B7. 在Java中,下列哪个关键字用于声明一个方法?A. functionB. methodC. procedureD. void答案:D8. Java中,下列哪个关键字用于声明一个抽象类?A. abstractB. interfaceC. finalD. static答案:A9. 在Java中,下列哪个关键字用于声明一个私有方法?A. privateB. publicC. protectedD. default答案:A10. Java中,下列哪个关键字用于声明一个静态方法?A. staticB. finalC. abstractD. synchronized答案:A二、填空题(每题2分,共20分)1. Java中,用于声明一个变量的关键字是________。
答案:var2. 在Java中,用于声明一个常量的关键字是________。
答案:final3. Java中,用于声明一个类的构造方法的关键字是________。
java二级考试题库及答案一、选择题(每题2分,共20分)1. Java中,以下哪个关键字用于声明一个类?A. interfaceB. classC. structD. enum答案:B2. 在Java中,以下哪个数据类型是基本数据类型?A. StringB. IntegerC. intD. ArrayList答案:C3. Java中,以下哪个方法用于将字符串转换为整数?A. parseInt()B. toInt()C. toInteger()D. convertInt()答案:A4. 在Java中,以下哪个关键字用于实现多态?A. extendsB. implementsC. overrideD. abstract答案:A5. Java中,以下哪个关键字用于声明一个方法?A. functionB. methodC. procedureD. def答案:B6. 在Java中,以下哪个关键字用于声明一个接口?A. classB. interfaceC. abstractD. struct答案:B7. Java中,以下哪个关键字用于声明一个包?A. packageB. importC. classD. public答案:A8. 在Java中,以下哪个关键字用于声明一个异常?A. throwB. throwsC. exceptionD. error答案:B9. Java中,以下哪个关键字用于声明一个枚举?A. enumB. listC. setD. map答案:A10. 在Java中,以下哪个关键字用于声明一个泛型?A. genericB. typeC. classD. extends答案:D二、填空题(每题2分,共20分)1. Java中,一个类可以继承多个______。
答案:接口2. 在Java中,所有类的根类是______。
答案:Object3. Java中,______关键字用于声明一个私有方法。
计算机等级二级JAVA考试复习资料第一套题基本操作题① c=2② n%5==0③ a=b简单应用题① swing② equals③ showMessageDialog④ exit综合应用题① JApplet② input③ Graphics g第二套题基本操作题① Java② length③ s[j]简单应用题① extends Applet② init③“num”④ Graphics综合应用题① WindowListener② new Java_3()③ System.exit④ System.exit.第三套题基本操作题① char② b③ i简单应用题① Thread② start();综合应用题①“简单文本编辑器”② mb③ add④ fileName⑤ fos第四套题① String② awt[i]简单应用题① f.setLayout② b.addActionListener 综合应用题① swing② textField③ setText第五套题基本操作题① String② count++③ ==5简单应用题① new int[10]② readInt( )③ total综合应用题① args[0]② num③ fact基本操作题① this.x② Variable()③ v.init简单应用题① ActionListener② f.setSize③ f.getContentPane()④ f.getContentPane()⑤ setText综合应用题① swing② s1.equals(s2)③ .intern()④ .intern()⑤ output第七套题基本操作题① count++② ==5简单应用题① DataInputSteam② total +anArray[i] 综合应用题① this.x=x;this.y=y;② x=p.x;y=p.y;③ new Java_3(x,y);④ return p;⑤ new Java_3(5,5);⑥ p.translate(3,4); 第八套题基本操作题①“Hello”② Java_1()③ +=简单应用题① Java_2② f.addWindowListener 综合应用题① init② JLabel③ label第九套题基本操作题① swing③ stop简单应用题① [ ][ ]② int[2][4]③a[i][k]*b[k][j]④j<4综合应用题① ActionListener② this③ workSum第十套题基本操作题① 5② nextRow简单应用题① implements② Java_2综合应用题① JApplet② JTextArea③ this.outputArea 第十一套题① init② Variable③ 30简单应用题① arrayOfInts.length② true③ foundIt综合应用题① c② bubbleSort③ setText④ b[i]>b[i+1]第十二套题基本操作题① xVal② showMessageDialog 简单应用题① throws② file综合应用题① primes② addWindowListener基本操作题① m=x;m=2;③ m=y;④ m=z;简单应用题① aTriangle[i].length② aTriangle[i][k]综合应用题① listener② ActionListener③ Performed第十四套题基本操作题①生日快乐!② INFORMATION_MESSAGE 简单应用题① new② run③ println④ random⑤ e综合应用题① RandomAccessFile② fileName③ size第十五套题基本操作题① length② ed③INFORMATION_MESSAGE 简单应用题① extends Thread② run③ agent.sell④ int⑤ tickets-=1综合应用题① try;② className③ e第十六套题基本操作题① javax.swing.*② INFORMATION_MESSAGE 简单应用题① extends② addActionListener③ ActionEvent④ String str综合应用题① abstract② extends③ getDescription第十七套题基本操作题① long② s=1;③ i简单应用题① close② readDouble综合应用题① ButtonFrame② ActionListener③ actionPerformed 第十八套题基本操作题① concat② showMessageDialog简单应用题① Java_2② WindowListener综合应用题① args[0]② num③ =fact第十九套题基本操作题① new② new③ showMessgaeDialog简单应用题① static② random③ round④ k++综合应用题①ActionListener②JLabel③input.addActionListene r(this)基本操作题① String② char[]③ toString简单应用题① swing② setVisible③ DrawFrame④ getContentPane⑤ add⑥ extends JPanel; 综合应用题① File② args[1]③ b④ close⑤ close第二十一套题基本操作题① m=a② m=b③ m=c① Frame② setSize③ fr.addWindowListener(fr)④ WindowEvent综合应用题① JTextArea② lowGrade③ setOfGrades.length第二十二套题基本操作题① String② String③简单应用题① Java_2② Java_2③ p.toString④ p.toString综合应用题① implements② Button Test③ addActionListener④ f⑤ actionPerformed第二十三套题基本操作题① String② long③ long④ print简单应用题① button.addActionListener② saveButton.addActionListener③ new④ buttonPanel⑤ actionPerformed⑥ init综合应用题① static② FileOutputStream③ flag④ close第二十四套题基本操作题① showInputDialog② parseInt③ x*x简单应用题① new② getChars③ charArray.length④ reverse( )综合应用题①橙色② printSearchResults( ) 第二十五套题基本操作题① JTextArea② format③ showMessageDialog简单应用题① frame.show( )② JRadioButton③ ActionEvent④ listener综合应用题① extends② init③ label第二十六套题基本操作题① static② d.s③ showMessageDialog 简单应用题① EXIT_ON_CLOSE② JFrame③ setSize④ JPanel综合应用题① result② firstNumber③ secondNumber④ System第二十七套题基本操作题① void② JOptionPane③ toString简单应用题① TimePrinter② implements③ ActionEvent综合应用题① JApplet② init第二十八套题基本操作题① DataOutputStream② test.dat③ close简单应用题① javax.swing② String③ k④ lotteryOdds综合应用题① JApplet② getContentPane③ outputArea第二十九套题基本操作题① new int② int i=2③ length④ f[i]简单应用题① [][]② k--③ aMatrix[i]④ println()综合应用题① actionPerformed② output③ output④ WindowEvent第三十套题基本操作题① input② showMessageDialog③ exit简单应用题① java② getName();③ implements④ double综合应用题② catch③ ex第三十一套题基本操作题① main② String③ This();简单应用题① double② canshu③ triple④ x=3*x⑤ x综合应用题① JApplet② init③ contentPane 第三十二套题基础操作① String② Thread③ getName① p.getName② abstract③ abstract④ extends⑤ extends 综合应用① true② File③ menu④ chooser⑤faceCombo 第三十三套题基础操作①javax②static③input简单应用①t.start()②Thread③super(str)④run⑤catch①JFrame②panel③implements④actionPerformed 第三十四套题基础操作①main②String③s1.equals简单应用①args[1]②f2③b④SUCCESS!综合应用①file chooser②this③this④true⑤event第三十五套题基础操作题②ch③default简单应用①io②System.in③quit④tmp综合应用①MouseAdapter②JPopupMenu③red④textArea⑤red第三十六套题基本操作题① sum=0② i③ b=b*j简单应用题① swing② face③ new④ outputArea⑤ exit综合应用题① JApplet② Graphics③ g④ ++counter第三十七套题基本操作题① n=0② print③ n%5==0简单应用题① System.in② str③ savedfile④‘\n’综合应用题① swing② ActionListener③ JPopupMenu④ popup frame⑤ WindowEvent第三十八套题基本操作题① names② length③ names[i]④ names[i]简单应用题① curDir② getName( )③ i++④ level综合应用题① extends② addActionListener③ false④ initGUI( )第三十九套题基本操作题① 15② +b简单应用题① implements Runnable② r③ k④ y++综合应用题① textLength② charAt(i)③ vowels++第四十套题基本操作题① s1 equals \”hello\”\n② showMessageDialog简单应用题① start② Runnable③ sleep综合应用题① BeijingFrame② BorderLayout()③ icon第四十一套题基本操作题① throws② readLine③parseInt① new② k++③a[i][j]=0④System.out.println() 综合应用题① swing.JFrame② JFrame.EXIT_ON_CLOSE③ setTitle④ jf第四十二套题基本操作题① main② string.length( )③ charAt简单应用题① try② FileInputStream③ close综合应用题① length② index③ temp基本操作题① int② anArray[i]简单应用题① j<5② a[i][j]=k++综合应用题① panel② hide③ closeAllListener④ counter第四十四套题基本操作题① i<=5② parseInt③ max=x简单应用题① new② int x③ point④ toString综合应用题① swing②getContentPane③(b1)④(b2)⑤ BListener⑥ actionPerformed 第四十五套题基本操作题① io② sum=0③ i<=5④ x%2==0简单应用题① Point[]② length③ Point④ y综合应用题① add② true③ Blistener2④ --第四十六套题基本操作题① class② length③ c[j]④ out简单应用题① Applet② add③ factorial(i)④ number综合应用题① javax② extends③ newButton④ f⑤ ActionListener 第四十七套题基本操作题① int[ ]② i<5③ if④ else简单应用题① greetings② catch③ e④ i++综合应用题① JFrame② b③ new FileInputStream④ new FileOutputStream第四十八套题基本操作题① int[][]② i<=5③ ++简单应用题① j2② start③ void run④ break综合应用题① TimePrinter② exit③ implements⑤ now第四十九套题基本操作题① int[5]②“Number”③ a[i]简单应用题① int[]② writeInt③ close④ FileInputStream⑤ close综合应用题① true② extends③ setTitle④ JPanel第五十套题基本操作题① n=k=0② i<10③ k%3==0简单应用题① ② this.age③ name④ super(name,age)⑤ super综合应用题① MousePanel② MouseMotionAdapter③ getX()④ getY()。
二级计算机java考试试题及答案一、选择题(每题2分,共40分)1. Java中,以下哪个关键字用于声明一个类?A. classB. interfaceC. abstractD. final答案:A2. 在Java中,哪个方法用于获取字符串的长度?A. length()B. size()C. count()D. length答案:A3. 下列哪个选项是Java中的多态性?A. 一个方法可以被多个类继承B. 一个类可以继承多个类C. 一个接口可以被多个类实现D. 一个类可以有多个父类答案:C4. Java中,哪个关键字用于声明一个方法?A. methodB. functionC. procedureD. void答案:D5. 在Java中,哪个关键字用于声明一个变量为静态?A. staticB. finalC. constD. volatile答案:A6. Java中,哪个关键字用于声明一个变量为常量?A. finalB. staticC. constD. volatile答案:A7. 在Java中,哪个关键字用于声明一个方法为同步?A. synchronizedB. threadC. lockD. mutex答案:A8. Java中,哪个关键字用于声明一个类为抽象类?A. abstractB. interfaceC. staticD. final答案:A9. 在Java中,哪个关键字用于声明一个方法为重载?A. overloadB. overloadsC. overloadingD. none of the above答案:D10. Java中,哪个关键字用于声明一个方法为重写?A. overrideB. overloadC. extendsD. implements答案:A11. 在Java中,哪个关键字用于声明一个变量为线程安全的?A. synchronizedB. threadC. volatileD. static答案:C12. Java中,哪个关键字用于声明一个类为最终类?A. finalB. abstractC. staticD. volatile答案:A13. 在Java中,哪个关键字用于声明一个变量为瞬态?A. transientB. staticC. volatileD. synchronized答案:A14. Java中,哪个关键字用于声明一个方法为本地方法?A. nativeB. synchronizedC. abstractD. final答案:A15. 在Java中,哪个关键字用于声明一个变量为严格FP(浮点数)?A. strictfpB. volatileC. synchronizedD. transient答案:A16. Java中,哪个关键字用于声明一个类为接口?A. interfaceB. abstractC. classD. final答案:A17. 在Java中,哪个关键字用于声明一个方法为私有?A. privateB. publicC. protectedD. default答案:A18. Java中,哪个关键字用于声明一个变量为包级私有?A. packageB. privateC. protectedD. default答案:D19. 在Java中,哪个关键字用于声明一个方法为保护级别?A. protectedB. publicC. privateD. default答案:A20. Java中,哪个关键字用于声明一个变量为公开?A. publicB. privateC. protectedD. default答案:A二、填空题(每题2分,共20分)1. Java中,用于声明一个类的关键字是____。
计算机二级JAVA考前冲刺提分题附答案范本一份计算机二级JAVA考前冲刺提分题附答案 1计算机二级JAVA考前冲刺提分题附答案1). 下列关于for循环和while循环的说法中哪个是正确的?A.while循环能实现的操作,for循环都能实现B.while循环判断条件一般是程序结果,for循环判断条件一般是非程序结果C.两种循环在任何情况下都可以相互转换D.两种循环结构中都必须有循环体,循环体不能为空正确答案:D2). 注释的基本原则不包括A.注释应该增加代码的清晰度B.注释要简洁C.在写代码之前写注释D.尽量给每一条语句加注释正确答案:D3). 下列说法错误的是A.switch语句只能处理等式,而if语句还可以处理关系表达式和逻辑表达式。
B.可以使用throw语句人为地引发异常。
C.可以用final说明变量为一个常量。
D.Java的字节代码是一种与平台无关的代码,即它与具体的系统是相关的。
正确答案:D4). Java 语言中,对当前对象的父类对象进行引用的关键字是( )。
A.caseB.superC.charD.break正确答案:B答案解析:当子类隐藏了父类的变量,并重写了父类方法后,又要使用父类变量或父类被重写的方法时,可以通过super 来实现对父类变量的访问和对父类方法的'调用。
5). 自定义的异常类可从( )类继承。
A.ErrorB.AWTErrorC.VirtualMachineErrorD.Exception及其子集正确答案:D答案解析:Java语言中Throwable类分为Error和Exception两个子类。
自定义的异常类是从Exception及其子集类继承的。
6). 使得线程放弃当前分得的CPU 时间,但不使线程阻塞,即线程仍处于可执行状态,随时可能再次分得CPU时间的方法是( )。
A.ti me()B.yield()C.load()D.mi n()正确答案:B答案解析:本题考查线程阻塞的概念。
全国计算机等级考试《二级Java语言程序设计》专用教材【考纲分析+考点精讲+真题演练+强化习题】最新资料,WORD格式,可编辑修改!目录第一部分公共基础知识........................................................第1章数据结构与算法....................................................考纲分析..............................................................考点精讲..............................................................1.1 算法.......................................................1.2 数据结构的基本概念...........................................1.3 线性表及其顺序存储结构.......................................1.4 栈和队列.....................................................1.5 线性链表.....................................................1.6 树与二叉树...................................................1.7 查找技术.....................................................1.8 排序技术.....................................................强化习题..............................................................第2章程序设计基础......................................................考纲分析..............................................................考点精讲..............................................................2.1 程序设计方法与风格...........................................2.2 结构化程序设计...............................................2.3 面向对象的程序设计...........................................强化习题..............................................................第3章软件工程基础......................................................考纲分析..............................................................考点精讲..............................................................3.1 软件工程基本概念.............................................3.2 结构化分析方法...............................................3.3 结构化设计方法...............................................3.4 软件测试.....................................................3.5 程序的调试...................................................强化习题..............................................................第4章数据库设计基础....................................................考纲分析..............................................................考点精讲..............................................................4.1 数据库系统的基本概念.........................................4.2 数据模型.....................................................4.3 关系代数.....................................................4.4 数据库设计与管理.............................................强化习题.............................................................. 第二部分Java语言程序设计....................................................第1章Java语言概论......................................................考纲分析..............................................................考点精讲..............................................................1.1 Java语言简介.................................................1.2 Java语言面向对象编程.........................................强化习题..............................................................第2章基本数据类型......................................................考纲分析..............................................................考点精讲..............................................................2.1 概述.......................................................2.2 基本数据类型.................................................2.3 引用数据类型.................................................2.4 Java类库中对基本数据类型的对象包装器(wrapper)类 ...........强化习题..............................................................第3章运算符和表达式....................................................考纲分析..............................................................考点精讲..............................................................3.1 概述.......................................................3.2 算术运算符和算术表达式.......................................3.3 关系运算符和关系表达式.......................................3.4 布尔逻辑运算符和布尔逻辑表达式...............................3.5 位运算符和位运算表达式.......................................3.6 赋值运算符和赋值表达式.......................................3.7 条件运算符与条件表达式.......................................3.8 运算符的优先级和复杂表达式...................................3.9 表达式语句...................................................强化习题..............................................................第4章流程控制..........................................................考纲分析..............................................................考点精讲..............................................................4.1 概述.......................................................4.2 分支(选择)语句.............................................4.4 跳转语句.....................................................4.5 循环语句与分支语句的嵌套.....................................4.6 递归.......................................................强化习题.............................................................. 第5章Java的继承、多态、高级类特性和数组 ...............................考纲分析..............................................................考点精讲..............................................................5.1 概述.......................................................5.2 覆盖方法.....................................................5.3 重载方法.....................................................5.4 高级类特性...................................................5.5 内部类.......................................................5.6 数组.......................................................强化习题.............................................................. 第6章异常和断言........................................................考纲分析..............................................................考点精讲..............................................................6.1 概述.......................................................6.2 异常处理类型.................................................6.3 异常处理编程的提醒...........................................6.4 断言.......................................................强化习题.............................................................. 第7章输入输出及文件操作................................................考纲分析..............................................................考点精讲..............................................................7.1 概述.......................................................7.2 文件.......................................................7.3 字节流.......................................................7.4 字符流.......................................................7.5 对象流.......................................................7.6 过滤流.......................................................7.7 管道流.......................................................7.8 不同流的速度比较.............................................7.9 输入输出流和正则表达式.......................................7.10 Java I/O流的其他应用........................................强化习题.............................................................. 第8章线程............................................................考纲分析..............................................................考点精讲..............................................................8.1 概述.......................................................8.3 线程的调度与控制.............................................8.4 线程同步.....................................................8.5 线程状态与生命周期...........................................8.6 线程相关的其他类与方法.......................................强化习题.............................................................. 第9章编写图形用户界面..................................................考纲分析..............................................................考点精讲..............................................................9.1 概述.......................................................9.2 用AWT编写图形用户界面.......................................9.3 AWT事件处理模型..............................................9.4 AWT组件库....................................................9.5 用Swing编写图形用户界面.....................................9.6 Swing组件和容器..............................................9.7 Swing的事件处理机制..........................................强化习题.............................................................. 第10章Applet程序设计...................................................考纲分析..............................................................考点精讲..............................................................10.1 Applet的基本概念............................................10.2 Applet的编写................................................10.3 Applet中的图形化用户界面GUI................................10.4 Applet的多媒体支持..........................................10.5 Applet与工作环境的通信......................................强化习题.............................................................. 第11章集合与泛型.......................................................考纲分析..............................................................考点精讲..............................................................11.1 概述......................................................11.2 集合框架....................................................11.3 简单集合类..................................................11.4 泛型......................................................强化习题.............................................................. 第12章Java SDK 6.0的下载和操作.........................................考纲分析..............................................................考点精讲..............................................................12.1 Java SDK 6.0的下载与安装....................................12.2 Java SDK 6.0的操作命令......................................12.3 Java编程规范................................................强化习题..............................................................第一部分公共基础知识第1章数据结构与算法考纲分析1.算法的基本概念,算法复杂度的概念和意义(时间复杂度与空间复杂度)。
目录全国计算机等级考试——二级公共基础知识辅导讲义..................... 错误!未定义书签。
第一章数据结构与算法........................................................... 错误!未定义书签。
第二章程序设计基础............................................................... 错误!未定义书签。
第三章软件工程基础............................................................... 错误!未定义书签。
第四章数据库设计基础........................................................... 错误!未定义书签。
全国计算机等级考试——二级公共基础知识辅导讲义第一章数据结构与算法1.1 算法1描述。
*:算法不等于程序,也不等于计算方法。
程序的编制不可能优于算法的设计。
2、算法的基本特征(1)可行性。
针对实际问题而设计的算法,执行后能够得到满意的结果。
(2)确定性。
每一条指令的含义明确,无二义性。
并且在任何条件下,算法只有唯一的一条执行路径,即相同的输入只能得出相同的输出。
(3)有穷性。
算法必须在有限的时间内完成。
有两重含义,一是算法中的操作步骤为有限个,二是每个步骤都能在有限时间内完成。
(4)拥有足够的情报。
算法中各种运算总是要施加到各个运算对象上,而这些运算对象又可能具有某种初始状态,这就是算法执行的起点或依据。
因此,一个算法执行的结果总是与输入的初始数据有关,不同的输入将会有不同的结果输出。
当输入不够或输入错误时,算法将无法执行或执行有错。
一般说来,当算法拥有足够的情报时,此算法才是有效的;而当提供的情报不够时,算法可能无效。
*:综上所述,所谓算法,是一组严谨地定义运算顺序的规则,并且每一个规则都是有效的,且是明确的,此顺序将在有限的次数下终止。
3、算法复杂度主要包括时间复杂度和空间复杂度。
(1)算法时间复杂度是指执行算法所需要的计算工作量,可以用执行算法的过程中所需基1.2 数据结构的基本概念12、数据结构主要研究和讨论以下三个方面的问题:(1)数据集合中各数据元素之间所固有的逻辑关系,即数据的逻辑结构。
数据的逻辑结构包含:1)表示数据元素的信息;2)表示各数据元素之间的前后件关系。
(2)在对数据进行处理时,各数据元素在计算机中的存储关系,即数据的存储结构。
数据的存储结构有顺序、链接、索引等。
1)顺序存储。
它是把逻辑上相邻的结点存储在物理位置相邻的存储单元里,结点间的逻辑关系由存储单元的邻接关系来体现。
由此得到的存储表示称为顺序存储结构。
1 12)链接存储。
它不要求逻辑上相邻的结点在物理位置上亦相邻,结点间的逻辑关系是由附加的指针字段表示的。
由此得到的存储表示称为链式存储结构。
3)索引存储:除建立存储结点信息外,还建立附加的索引表来标识结点的地址。
*:数据的逻辑结构反映数据元素之间的逻辑关系,数据的存储结构(也称数据的物理结构)是数据的逻辑结构在计算机存储空间中的存放形式。
同一种逻辑结构的数据可以采用不同的存储结构,但影响数据处理效率。
(3)对各种数据结构进行的运算。
3、数据结构的图形表示一个数据结构除了用二元关系表示外,还可以直观地用图形表示。
在数据结构的图形表示中,对于数据集合D 中的每一个数据元素用中间标有元素值的方框表示,一般称之为数据结点,并简称为结点;为了进一步表示各数据元素之间的前后件关系,对于关系R 中的每一个二元组,用一条有向线段从前件结点指向后件结点。
4、数据结构分为两大类型:线性结构和非线性结构。
(11)有且只有一个根结点;2)每一个结点最多有一个前件,也最多有一个后件。
*:常见的线性结构有线性表、栈、队列和线性链表等。
(2*:常见的非线性结构有树、二叉树和图等。
1.3 线性表及其顺序存储结构1置是线性的。
线性表是由n(n ≥0)个数据元素组成的一个有限序列,表中的每一个数据元素,除了第一个外,有且只有一个前件,除了最后一个外,有且只有一个后件。
线性表中数据元素的个数称为线性表的长度。
线性表可以为空表。
*:线性表是一种存储结构,它的存储方式:顺序和链式。
2、线性表的顺序存储结构具有两个基本特点:(1)线性表中所有元素所占的存储空间是连续的;(2)线性表中各数据元素在存储空间中是按逻辑顺序依次存放的。
*:由此可以看出,在线性表的顺序存储结构中,其前后件两个元素在存储空间中是紧邻的,且前件元素一定存储在后件元素的前面,可以通过计算机直接确定第i 个结点的存储地址。
3、顺序表的插入、删除运算(学吧学吧独家稿件)(1)顺序表的插入运算:在一般情况下,要在第i (1≤i ≤n )个元素之前插入一个新元素时,首先要从最后一个(即第n 个)元素开始,直到第i 个元素之间共n-i+1个元素依次向后移动一个位置,移动结束后,第i 个位置就被空出,然后将新元素插入到第i 项。
插入结束后,线性表的长度就增加了1。
*:顺性表的插入运算时需要移动元素,在等概率情况下,平均需要移动n/2个元素。
(2)顺序表的删除运算:在一般情况下,要删除第i (1≤i ≤n )个元素时,则要从第i+1个元素开始,直到第n 个元素之间共n-i 个元素依次向前移动一个位置。
删除结束后,线性表的长度就减小了1。
*:进行顺性表的删除运算时也需要移动元素,在等概率情况下,平均需要移动(n-1)/2个元素。
插入、删除运算不方便。
1.4 栈和队列1、栈及其基本运算(学吧学吧独家稿件)2在栈中,允许插入与删除的一端称为栈顶,不允许插入与删除的另一端称为栈底。
栈顶元素总是最后被插入的元素,栈底元素总是最先被插入的元素。
即栈是按照“先进后出”或“后进先出”的原则组织数据的。
栈具有记忆作用。
栈的基本运算:1)插入元素称为入栈运算;2)删除元素称为退栈运算;3)读栈顶元素是将栈顶元素赋给一个指定的变量,此时指针无变化。
栈的存储方式和线性表类似,也有两种,即顺序栈和链式栈。
2、队列及其基本运算(Rear )指向队尾元素,头指针(front )指向排头元素的前一个位置(队头)。
队列是“先进先出”或“后进后出”的线性表。
队列运算包括:1)入队运算:从队尾插入一个元素;2)退队运算:从队头删除一个元素。
循环队列及其运算:所谓循环队列,就是将队列存储空间的最后一个位置绕到第一个位置,形成逻辑上的环状空间,供队列循环使用。
在循环队列中,用队尾指针rear 指向队列中的队尾元素,用排头指针front 指向排头元素的前一个位置,因此,从头指针front 指向的后一个位置直到队尾指针rear 指向的位置之间,所有的元素均为队列中的元素。
*:循环队列中元素的个数=rear-front 。
1.5 线性链表(学吧学吧独家稿件)1、线性表顺序存储的缺点(学吧学吧独家稿件):(1)插入或删除的运算效率很低。
在顺序存储的线性表中,插入或删除数据元素时需要移动大量的数据元素;(2)线性表的顺序存储结构下,线性表的存储空间不便于扩充;(3)线性表的顺序存储结构不便于对存储空间的动态分配。
2、线性链表:线性表的链式存储结构称为线性链表,是一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接来实现的。
因此,在链式存储方式中,每个结点由两部分组成:一部分用于存放数据元素的值,称为数据域;另一部分用于存放指针,称为指针域,用于指向该结点的前一个或后一个结点(即前件或后件),如下图所示:线性链表分为单链表、双向链表和循环链表三种类型。
在单链表中,每一个结点只有一个指针域,由这个指针只能找到其后件结点,而不能找到其前件结点。
因此,在某些应用中,对于线性链表中的每个结点设置两个指针,一个称为左指针,指向其前件结点;另一个称为右指针,指向其后件结点,这种链表称为双向链表,如下图所示:3、线性链表的基本运算(1)在线性链表中包含指定元素的结点之前插入一个新元素。
*:在线性链表中插入元素时,不需要移动数据元素,只需要修改相关结点指针即可,也不会出现“上溢”现象(学吧学吧独家稿件)。
(2)在线性链表中删除包含指定元素的结点。
*:在线性链表中删除元素时,也不需要移动数据元素,只需要修改相关结点指针即可。
数据域指针域HEAD …(a)结点结构(b)一个非空的线性链表示意图右指针左指针数据域(a)结点结构…HEAD (b)一个非空的双向链表示意图3 3(3)将两个线性链表按要求合并成一个线性链表。
(4)将一个线性链表按要求进行分解。
(5)逆转线性链表。
(6)复制线性链表。
(7)线性链表的排序。
(8)线性链表的查找。
*:线性链表不能随机存取。
4、循环链表及其基本运算在线性链表中,其插入与删除的运算虽然比较方便,但还存在一个问题,在运算过程中对于空表和对第一个结点的处理必须单独考虑,使空表与非空表的运算不统一。
为了克服线性链表的这个缺点,可以采用另一种链接方式,即循环链表。
与前面所讨论的线性链表相比,循环链表具有以下两个特点:1)在链表中增加了一个表头结点,其数据域为任意或者根据需要来设置,指针域指向线性表的第一个元素的结点,而循环链表的头指针指向表头结点;2)循环链表中最后一个结点的指针域不是空,而是指向表头结点。
即在循环链表中,所有结点的指针构成了一个环状链。
下图a 是一个非空的循环链表,图b 是一个空的循环链表:循环链表的优点主要体现在两个方面:一是在循环链表中,只要指出表中任何一个结点的位置,就可以从它出发访问到表中其他所有的结点,而线性单链表做不到这一点;二是由于在循环链表中设置了一个表头结点,在任何情况下,循环链表中至少有一个结点存在,从而使空表与非空表的运算统一。
*:循环链表是在单链表的基础上增加了一个表头结点,其插入和删除运算与单链表相同。
但它可以从任一结点出发来访问表中其他所有结点,并实现空表与非空表的运算的统一。
1.6 树与二叉树(学吧学吧独家稿件)1、树的基本概念层次特性。
2、二叉树及其基本性质(1)什么是二叉树它具有以下两个特点:1)非空二叉树只有一个根结点;2)每一个结点最多有两棵子树,且分别称为该结点的左子树与右子树。
*:根据二叉树的概念可知,二叉树的度可以为0(叶结点)、1(只有一棵子树)或2(有2棵子树)。
(2)二叉树的基本性质(学吧学吧独家稿件)性质1 在二叉树的第k 层上,最多有2的k-1次方个结点。
性质2 深度为m 的二叉树最多有2的k 次方减一个结点。
)1(21≥-k k 12-m4性质3 在任意一棵二叉树中,度数为0的结点(即叶子结点)总比度为2的结点多一个。