java考试题型及要点_第1页
java考试题型及要点_第2页
java考试题型及要点_第3页
java考试题型及要点_第4页
java考试题型及要点_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

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

文档简介

考试题型一、 选择题(20分,每题2分)10题二、 简答题(15分,每题5分)3题三、 程序填空(共45分,每空3分)3大题四、 编程题(20分)1大题各章复习要点第2章Java基本语法1、 标识符标识符的作用是用于标识程序中的各个元素。由字母、下划线(_)、美元符($)、数字(0〜9)组成,数字不能开头。2、 关键字P20(浏览一下,留意学过的关键字)3、 数据类型基本数据类型P20图2-1、P21表2-1各类型需要掌握的要点:类型名称、关键字,占用位数、取值范围(整数类型的取值范围取决于占用位数,如:占用位数为n,则表示的范围是:-2n〜2n-1)4、 运算符与表达式自增、自减符号在变量的前后位置不同,表达式的结果是不一样的。例如inta=1,b=2;System.out.print(a++>--b); 结果为false++在a变量后面,那表达式a++的值是取a的值作为表达式的值,值为1。--在b变量之前,那表达式--b的值是多少?先让b自减1,而后在取b的值作为表达式的值,即为1。最后a自增1。条件运算符 ?:例如:intx=-1,y;y=x>=0?x:-x;y的值是?y值为15、 利用Scanner类输入导入util包。例如:importjava.util.*;创建Scanner类对象引用。例如:Scanners=newScanner(System.in);获得键盘输入的数据,可以调用nextXXX()方法。获得整型数据,使用nextInt();获得双精度浮点数据,使用nextDouble();获得一字符串,使用nextLine()。例如inta=s.nextInt();P29例2-36、 程序流程控制顺序结构、选择结构(if()…;if()・・else…;switch。casen:…;[default:-;])、循环结构(while(){・・・};do{…}while();for(;;)…)P49例2-20、P60例2-297、 数组一维数组的声明与创建声明:类型数组名[];或类型[]数组名;创建:数组名二new类型[数组长度];也可以声明与创建合并:类型数组名[]=new类型[数组长度];注意等号左边的中括号中不要写出数组长度

也可以声明数组的同时进行初始化赋值,例如:inta[]={1,2,3,4,5};注意大括号仅在数组声明后给值的情况。inta[];a={1,2,3,4,5};这种用法是不对的。8、方法的重载在一个类中可以定义多个同名的方法,但要求各方法具有不同的参数类型或参数个数。方法重载通常用于创建完成一组任务相似但参数不同的方法。第3章类与对象1、类的定义[类的修饰符]class类名[extends父类名]〃中括号表示可以省略{ I实例变量定义成员变量的定义类(static)变量的定义成员方法的定义实例方法的定义——类成员方法的定义实例方法的定义——类(static)方法的定义方法中的变量称为方法变量2、 构造方法构造方法是类中一种特殊的方法,主要用于初始化类对象实体。类的构造方法的名字必须与它所在类的名字完全相同,而且没有类型。允许一个类中编写若干个构造方法,但必须保证它们的参数不同,参数不同是指:参数的个数不同,或参数个数相同,但参数列表中对应的某个参数的类型不同。3、 类对象的创建(1)分2步:先声明,后创建。类名引用变量名;引用变量名二new构造方法(实际参数);构造方法中的实际参数取决于构造方法定义给定的形式参数⑵1步:类名引用变量名二new构造方法(实际参数);4、综合(实验报告二(4))学生类的创建和使用创建一个学Student类,成员变量包括:学号、、性别、年龄等,且都是private类型。声明一个构造方法,初始化所有成员变量。分别声明获得各属性的public成员方法,方法名要求以get开头。分别声明修改各属性的public成员方法,方法名要求以set开头。声明一个public类型的toString()方法,把该类中的所有域信息组合成一个字符串。声明统计创建Student对象的个数的私有域count和得到Student对象的个数的public方法。主方法测试类功能(2种,任取一种)编写测试类Test,在主类中,创建2个Student对象,输出对象的所有域信息;修改对象的姓名和年龄,输出修改后的姓名和年龄;比较两个Student对象的年龄的大小,输出年龄较大的Student对象。◎在Student类中编写主方法,创建2个Student对象,输出对象的所有域信息;修改对象的姓名和年龄,输出修改后的姓名和年龄;比较两个Student对象的年龄的大小,输出年龄较大的Student对象。packageStudent;publicclassStudent{privateStringid;privateStringname;privateintage;privateStringgender;privatestaticintcount=0;publicStudent(Stringid,Stringname,Stringgender,intage){this.id=id;=name;this.age=age;this.gender=gender;count++;}publicstaticintgetCount(){returncoun;}publicStringgetId(){returnid;}publicStringgetName(){returnname;}publicStringgetGender(){returngender;}publicintgetAge(){returnage;}publicvoidsetId(Stringa){id=a;}publicvoidsetName(Stringc){name=c;}publicvoidsetGender(Stringd){gender=d;}publicvoidsetAge(inte){age=e;}publicStringtoString(){return"学号:”+this.id+"\t姓名:"++"\t性别:"+this.gender+"\t年龄:"+this.age;}publicstaticvoidmain(String[]args)(Students1=newStudent(''0001'',''张三","男",16);Students2=newStudent(''0002'',"李四",''女",18);System.outprintln(s1.toString());System.outprintln(s2.toString());System.outprintln("创建的学生总数为:''+Student.getCoun[));s1.setName("王五");s1.setAge(17);s2.setName("陆陆");s2.setAge(19);System.out|.println(s1.toString());System.out|.println(s2.toString());if(s1.getAge()>s2.getAge())System.outprintln("年龄较大的人的信息:"+s1.toString());elseSystem.outprintln("年龄较大的人的信息:"+s2.toString());}}publicclassTest(publicstaticvoidmain(String[]args)(Students1=newStudent("0001","张三","男",16);Students2=newStudent("0002","李四","女",18);System.outprintln(s1.toString());System.outprintln(s2.toString());System.outprintln("创建的学生总数为:"+Student.getCoun©);s1.setName("王五");s1.setAge(17);s2.setName("陆陆");s2.setAge(19);System.out.println(s1.toString());System.out.println(s2.toString());if(s1.getAge()>s2.getAge())System.outprintln("年龄较大的人的信息:"+s1.toString());elseSystem.outprintln("年龄较大的人的信息:"+s2.toString());}}第4章继承Java不支持类的多重继承,继承关键字extends,参见第三章类的定义。第5章抽象、接口1、 抽象类abstractclass抽象类名称{成员变量声明;abstract方法();//仅有方法头,没有方法体非抽象方法()//有方法头,有方法体{ }}注意:不可用抽象类构造方法创建对象。2、 接口[访问修饰符[interface接口名[extends父接口名列表]{接口成员定义}接口成员有3种:a.常量(接口中的成员量都是常量,可以省略public、staticsfinal关键字)b.接口中的方法都是抽象方法(接口中一般省略了public、abstract关键字)c.嵌套类和嵌套接口类通过实现(implements)接口来发挥接口的功能,如果该类是非抽象类,那就必须重写接口中的所有方法。接口和抽象类有些相似,区别在于(1)接口可以多继承,而类只允许单继承;(2)抽象类可以有部分实现,可以有静态方法等;而接口不允许有任何实现。第6章异常在程序执行期间,可能会有许多意外的事件发生°Java把这些意外的事件成为“异常”。对发生的异常,进行处理,将使程序更加清晰、健壮、容错能力强。异常处理的方式:(1)try-catch-finally语句⑵使用throw语句直接抛出异常或使用throws语句间接抛出异常。第7章文件管理与输入/输出Java支持两种类型的流:字节流和字符流。字节流由抽象类InputStream和OutputStream的子类实现。字符流由抽象类Reader和Writer的子类实现。第8章线程1、 线程的概念线程是比进程更小的执行单位,一个进程在其执行过程中,可以产生多个线程,形成多条执行线索,每条线索,即每个线程也有它自身的产生、存在和消亡的过程。2、 线程的生命周期新建一个用Thread类或其子类的对象被声明并创建b•一个用实现了Runnable接口的类创建的运行线程调用start()方法°JVM会知道又有一个新线程排队等候切换了,当JVM将CPU使用权切换给线程时,该类中的run()方法就立刻执行,run()方法规定了该线程的具体使命。中断有4种中断原因:JVM将CPU资源从当前线程切换给其他线程,使本线程让出CPU的使用权。线程使用CPU资源期间,执行了sleep(intmillsecond)方法,使当前线程进入休眠状态。经过参数指定的毫秒数后,该线程重新进到线程队列排队等待CPU资源,该方法可能会引起InterruptedException异常。线程使用CPU资源期间,执行7wait()方法,使得当前线程进入等待状态。等待状态线程不会主动进到线程队列中排队等待CPU资源,必须由其他线程调用notify()或notifyall()方法通知它,使得它重新排队等待CPU资源。线程使用CPU资源期间,执行某个操作进入阻塞状态,比如执行读/写操作引起阻塞。只有当引起阻塞的原因消除时,线程才重新进到线程队列中排队等待CPU资源。死亡死亡原因有二种:a.执行完run()方法中的全部语句;b.被提前强制性终止run()方法。所谓死亡状态就是线程释放了实体,即释放分配给线程对象的内存。P162方式一:继承Thread类P163方式二:实现Runnable接口第9章图形用户界面设计1、组件和容器组件是图形用户界面的基本部分,比如一个按钮,一个标签等容器用于包含组件和容器,可以通过add(组件或容器)方法添加括号中的参数到当前容器。2、 布局管理常用布局FlowLayout该布局的特点:将各个组件按add方法顺序地添加到容器,组件按照从左向右,第一行排满后排第二行,每行中组件都居中排列。是JPanel型容器的默认布局。BorderLayout如果一个容器使用这种布局,那么容器空间简单的划分为东、西、南、北、中五个区域,中间的区域最大。每加入一个组件都应该指明这个组件加在哪个区域中,区域由BorderLayout的静态常量CENTER^NORTH、SOUTH、WEST、EAST表示CardLayout使用CardLayout的容器可以容纳多个组件,这些组件被层叠放入容器中,最先加入容器的是第一张(最上面),依次向下排序。使用该布局的特点是,同一时刻容器只能从这个组件中选出一个来显示,这个被显示的组件将占据所有的容器空间。GridLayout其基本布局策略是把容器划分成若干行乘若干列的网格区域,组件就由add()方法添加顺序依次从第一行第一列、第一行第二列•…被填充到这些划分出来的小格中。3、 事件处理模型编写代码时注意以下三点:(1)确定事件源

⑵事件源.addXXXListener(实现事件监听接口类对象引用)事件监听接口相应的事件处理方法重写4、创建窗口有2种方法在主类中创建JFrame类对象引用,再创建各组件并添加到窗口。创建JFrame类的子类例如:窗口中有三个组件,依次是:标签(JLabel)、文本框(JTextField)、按钮(JButton)。现在在文本框中输入字符,单击“确定”按钮后,标签就显示为文本框中的内容。如图1所示,点击“确定”按钮后,如图2所示abcdelgThisabcdelgThisIBanapple!图1初始状态图1初始状态图2点击按钮后方法一:在主类中创建JFrame类对象引用,再创建各组件并添加到窗口importjavax.swing.*; //JFrame\JLabel\JTextField\JButton类所在包importjava.awt.*; //常用布局类所在包importjava.awt.event.*; 〃事件处理publicclassTestJFrame(privatestaticJFramemyframe=newJFrame(); 〃创建窗口类对象,作为该类成员变量,注意是staticprivatestatic儿abelmylabe=newJLabel("abcdefg");〃创建标签类对象,作为该类成员变量,注意是staticprivatestaticJTextFieldmytxt=newJTextField(18); 〃创建文本框类对象,作为该类成员变量,注意是staticprivatestaticJButtonmybtn=newJButton("确定"); 〃创建按钮类对象,作为该类成员变量,注意是staticpublicstaticvoidmain(String[]args)(〃为窗口设置标题〃为窗口设置布局,这里采用的是流式布局//为窗口添加标签组件//为窗口添加文本框组件//为窗口添加按钮组件//按钮组件作为事件源,添加动作事件监听〃为窗口设置标题〃为窗口设置布局,这里采用的是流式布局//为窗口添加标签组件//为窗口添加文本框组件//为窗口添加按钮组件//按钮组件作为事件源,添加动作事件监听动作事件处理方法myfram.setlayout(newFlowLayout());myfram.add(mylabe);myfram.add(mytxt);myfram.add(mybtn);mybtnaddActionListener(newActionListener()(器,并用匿名内部类作为事件监听器对象publicvoidactionPerformed(ActionEvente)//(mylabe.setText(mytx.getText());});myfram.setSize(500,200); 〃为窗口设置大小myfram.setVisible(true); 〃窗口设置为可见myframesetDefaultCloseOperation(JFrame.EXIT_ON_CLOS)}}方法二:创建JFrame类的子类i

温馨提示

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

评论

0/150

提交评论