当前位置:文档之家› Java期末复习重点

Java期末复习重点

Java期末复习大纲程序练习:1.编程实现:从键盘分别输入一个4位的整数,然后计算并输出各位数字之和。

2.编程实现:求出一组数中的最大数和最小数。

3.字符串的相关操作(参考实验指导实验19、实验20)4.编程实现:在程序中定义一个Person类,一个Person类的子类Student类,再定义主类C1,在main方法中,生成Student的对象,并输出各项信息。

(参考《实验指导》实验31、实验32)5.定义一个Rectangle类,它包含两个私有成员:length(长)和width(宽),均为整型。

两个公有成员:带两个整型参数的构造函数,用来获得从外界传入的数据;成员方法GetArea()(用来计算面积)。

然后在main方法中构造一个Rectangle的对象并输出它的面积。

6.编程实现如下的骰子游戏:丢下两个骰子,若分值的总值为7点,则“赢”;否则“输”。

(1)首先定义Die类。

提示:Die类表示一个骰子有faceValue一个int成员,有一个roll()方法和getFaceValue()方法。

roll()方法使faceValue为1~6中的一个随机值(取随机值采用ng.util包中的Random类,例如:取1~10之间的一个随机整数:Random r=new Random();int x=r.nextInt(10)+1)。

getFaceValue()方法是返回faceValue的值。

(2)然后定义DiceGame类。

提示:DiceGame类有die1、die2两个整型成员变量,一个play()方法,该方法返回一个布尔类型,true表示分值的总值为7点,否则为false。

(3)最后定义Test类,对上面定义的类进行测试。

提示:写出主类,main()方法中产生一个DiceGame对象,执行play()方法后显示输赢。

7.有一个Animal类,它里面定义了void eat()、void breath()两个方法,方法体的内容自己定义,从Animal类派生出Fish、Cat类,要求在main方法中有Fish、Cat类的对象调用父类Animal中的两个方法。

8.编写一个Java程序,用接口相关知识解决:电在线路上传输时都会有损耗,假如计算电费时区分冬季和夏季用电情况,冬季在电表读数上加20度作为用电损耗,而夏季没有此损耗。

每度电费为0.49元,用电度数为125,分别计算出冬季和夏季相应的电费。

第1章Java语言概述1.Java语言有哪些特点?2.面向对象有哪些基本特征?3.什么是Java虚拟机?字节码的好处?4.Java语言的结构?第2章Java语言开发环境1.JDK环境的配置。

2.Path和ClassPath的作用?3.JDK的使用:编写、编译、运行一个简单Java应用程序的步骤。

第3章Java语言基础1.数据类型的基本要素?2.变量的属性?3.基本数据类型有哪些?了解它们的数据的性质、取值范围、存储方式、参与的运算?它们在内存中存放的是数据值本身。

4.引用数据类型有哪些?在内存中存放的是指向该数据的地址,不是数据值本身。

5.Java标识符的命名规则是什么?(给定标识符,会判断是否合法)6.Java语言中的常量。

用final定义常量。

单精度后加f或F,双精度后加d或D 可省略。

7.变量。

注意:Java语言程序中可以随时定义变量,不必集中在执行语句之前。

8.数据类型转换。

9.字符串数据类型转换为数值型数据。

(见P50表3.7)10.数值型数据转换为字符串类型。

(使用+)int MyInt=1234;String MyString=""+MyInt;11.Java语言中从键盘输入数据。

◆由键盘输入的数据,不管是文字还是数字,Java皆视为字符串。

◆两种输入方式。

(输入缓冲区和Scanner,至少掌握一种输入方式。

)12.运算符与表达式。

◆两个整数相“/”,结果为整数。

(a/b)*b+(a%b)==a是恒成立的。

◆对取模运算符“%”来说,其操作数可以为浮点数。

a%b与a-((int)(a/b)*b)的语义相同◆值得注意的是Java语言对加运算符进行了扩展,使它能够进行字符串的连接,如"abc"+"de",得到字符串"abcde"。

◆不能在浮点数之间作“==”的比较◆++和——的运算,注意前置和后置,尤其是用在复合语句中。

(x=++a+--b)◆赋值运算的扩展:+=等:自动类型转换和右结合性。

◆了解运算符的优先级和结合性。

(P63表3.14)第4章流程控制1.Java语言不允许在两个嵌套的复合语句内声明两个同名的变量。

2.Java中的三种注释方式。

3.可以用选择和循环结构来解决问题。

4.break和continue的含义和区别。

第5章数组与字符串1.数组的概念。

相同数据类型的元素按一定顺序排列的集合。

Java中,数组元素可以为简单数据类型,也可以为对象。

2.Java语言内存分配问题◆栈内存:定义的基本类型的变量和对象的引用变量,超出作用域将自动释放。

◆堆内存:存放由new运算符创建的对象和数组。

由Java虚拟机的自动垃圾回收器来管理。

3.什么是引用变量?(为数组或对象起的一个名称,)4.Java中一维数组的定义和使用。

每个数组都有一个属性length指明它的长度,如a.length指出数组a所包含的元素个数。

(常作为循环控制条件)5.二维数组的定义和使用。

◆Java中的二维数组看作是由多个一维数组构成。

◆求二维数组的维数计算某数组的行数:数组名.length计算某数组中某行元素的个数:数组名[下标].length◆二维数组申请内存方式(必须指定高层维数):(会判断正确、错误的方式)6.字符串的声明和使用及常用方法。

第6章类与对象1.什么是类?什么是对象?类和对象有怎样的关系?2.面向对象程序设计思想的重点是类的设计,而不是对象的设计。

3.类的定义和使用。

◆类修饰符及含义见P102表6.1所示。

◆类的成员不能是执行语句。

◆成员变量和成员方法的定义、修饰符见教材表6.2所示。

◆在定义类的成员变量时,可以同时赋初值,但对成员变量的操作只能放在方法中。

4.成员变量与局部变量的区别?5.对象的创建和使用。

◆对象的创建:Cylinder volu;//声明指向对象的变量voluvolu=new Cylinder();//利用new创建新的对象,并让变volu指向它或者:Cylinder volu=new Cylinder();◆volu只是对象的名称,它是指向对象实体的引用变量,而非对象本身。

◆当一个对象被创建时,会对其中各种类型的成员变量按P106表6.4自动进行初始化。

◆一个类多个对象,它们的成员变量分配在不同的内存,因此修改某一对象的成员变量时其他不受影响。

◆this关键字的使用。

“this.成员名”,此时this代表调用此成员的对象。

若在通过方法调用,将外部传入的参数赋值给类的成员变量,方法的形式参数与类的成员变量同名时,则需用this来标识成员变量。

6.传递数组:指明参数是一个数组,实参只给出数组名。

7.当参数是基本数据类型时,采用传值方式调用;当参数是引用型的变量时,则是传址方式调用。

8.了解匿名对象。

第7章Java语言类的特征1.私有成员(private)、公共成员(public)、保护成员(protected)、缺省访问控制符各自的访问权限是什么?2.什么是方法的重载,即方法的重载条件是什么?会判断哪些是合法的重载形式。

3.什么是构造方法?构造方法有哪些特征?何时被调用?什么是默认构造方法?何时被调用?4.什么是静态成员(类成员)?什么是实例成员?使用静态成员有什么意义?静态成员的访问格式是什么?main方法为何是public,static的呢?5.什么是静态初始化器?它与构造方法有什么区别?6.对象的赋值与比较。

◆对象是一种引用型变量,它实际保存的是对象在内存中的地址。

◆引用变量也可作为方法的参数,采用传址调用。

◆例如:Circle c1=new Circle(2);Circle c2=new Circle(3);c2=c1;//它们所共同指向的同一对象的内容相等还是两个引用变量中所保存的地址相等呢?第8章继承、抽象类和接口1.什么是继承?什么是父类、子类?子类是如何创建的?2.在子类中如何访问父类的成员。

3.什么是覆盖?覆盖与重载的区别什么?4.”==”和equal()方法比较对象的异同?5.什么是抽象类和抽象方法?抽象类有哪些特征?◆抽象类也可以有构造方法;抽象类中所有方法不一定为抽象的;包含抽象方法的类一定要声明为抽象类;abstract类不能用final来修饰。

6.接口与抽象类有何区别?7.利用接口实现类的多重继承。

8.什么是内部类、匿名类?会阅读程序,注意区分内部类、外部类的同名变量或方法的使用。

(例如《实验指导》P83)9.什么是包(类库)?有何作用?第9章异常处理1.什么是异常?按照错误的性质将错误如何分类及其含义?会判断错误的类型2.什么是抛出异常和捕获异常?try-catch-finally语句如何使用?3.抛出异常的方式。

第12章图形界面设计1.了解java.awt包中主要类及组件类的继承关系。

2.什么是组件?组件是怎样分类的?3.什么是窗口?窗口又如何分类,他们又分别具有怎样的特征?◆Window类是可以自由移动的、不依赖其他容器而存在的窗口。

◆Frame带有标题和尺寸重置角标;Java应用程序中,一般独立应用程序主要使用Frame作容器。

◆Dialog是带标题不能改变大小的窗口。

4.什么是面板?面板与窗口有何区别?(P246)◆Panel类与窗口类似,但它是一种没有标题的容器,且不能独立存在,必须包含在另外一个容器之中。

5.图形用户界面设计的步骤?6.什么是控件?它有何作用?Java中有哪些常用控件?7.什么是窗口的布局管理?有哪些布局管理方式?它们分别具有怎样的策略或特征?◆布局管理即“页面设置”(layout),是指窗口上的组件遵循一定的规则来排列,并会随着窗口大小的变化来改变组件大小与位置的一种布局方式。

◆流式布局管理的策略:⏹组件按照加入容器的先后顺序从左向右排列;⏹一行排满后就自动地转到下一行继续从左向右排列;⏹每一行中的组件都居中排列。

⏹组件大小不随容器大小的变化而改变。

◆边界式布局管理⏹将显示区域按地理方位分为东(East)、西(West)、南(South)、北(North)、中(Center)五个区域。

将组件加入容器中,若没有指定区域,则默认为中间;⏹若将组件加入到已被占用的位置,将会取代原先的组件。

⏹利用add()添加组件时必须指出组件的摆放位置。

相关主题