Java程序设计语言第四单元Word文档下载推荐.docx

上传人:b****5 文档编号:19713280 上传时间:2023-01-09 格式:DOCX 页数:26 大小:108.21KB
下载 相关 举报
Java程序设计语言第四单元Word文档下载推荐.docx_第1页
第1页 / 共26页
Java程序设计语言第四单元Word文档下载推荐.docx_第2页
第2页 / 共26页
Java程序设计语言第四单元Word文档下载推荐.docx_第3页
第3页 / 共26页
Java程序设计语言第四单元Word文档下载推荐.docx_第4页
第4页 / 共26页
Java程序设计语言第四单元Word文档下载推荐.docx_第5页
第5页 / 共26页
点击查看更多>>
下载资源
资源描述

Java程序设计语言第四单元Word文档下载推荐.docx

《Java程序设计语言第四单元Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《Java程序设计语言第四单元Word文档下载推荐.docx(26页珍藏版)》请在冰豆网上搜索。

Java程序设计语言第四单元Word文档下载推荐.docx

成员方法分为和两种形式,分别被称为和。

Java语言规定,实例方法的定义格式为:

其中“修饰符”决定了;

返回类型是的类型;

成员方法量名是名称,它既要符合命名规则,又建议遵守Java语言命名规范;

参数列表列出了;

成员方法具有抛出异常的能力,而异常类型列表列出了。

(8)成员方法可以重载,成员方法的重载是指的现象。

Java语言规定,具体调用哪个成员方法将由共同决定,且称之为。

也就是说,Java语言中,每个成员方法是由唯一标识的。

因此致,在同一个作用域中,不能够出现的成员方法,否则将。

如果一个类中有多个成员方法,调用规则为:

(9)在Java语言中,每一个类中都有一个或几个称之为构造方法的特殊的实例成员方法,它是一类在成员方法,其作用是,构造方法不需要返回任何值,不允许定义。

构造方法具体定义格式为:

类名是类的名称,也是构造方法名,这是构造方法的重要特征之一;

参数列表是;

构造方法没有任何类型的返回值,甚至在类名前面也不允许书写void,这是构造方法的另一个重要特征。

类的构造方法与其它成员方法一样,也可以重载,即有多个不同的构造方法。

如果在定义类时,没有定义任何构造方法,系统会自动提供一个的默认构造方法。

(10)在设计类时,应该学掌握如下基本原则:

◇封闭:

◇信息隐藏:

◇接口浅晰:

◇通用性:

◇可扩展性:

(11)在设计类,确定了其包含的成员变量后,就应考虑如何设计与外界沟通的的方法时,一般应考虑包含下列成员方法:

、、、、。

(12)在设计类时,确定了类中的成员变量后,就应考虑类中成员方法的设计。

设计成员方法时,一般应考虑包含下列成员方法:

(13)在同一系统中,可能有若干个类,类与类之间存相互合作,构成3种关系:

、、。

(14)是用于模拟现实世界中实体的程序元素,在问题空间中的实体映射成解空间的,它是面向对象程序操作的基本单位,所谓程序运行就是、

的过程。

在完成类的定义之后,需要进行类的实例化,即。

在Java语言中,对象属于变量,需要经历、、。

定义对象的语法为:

创建对象的语法为:

new运算符主要完成两项工作:

、。

创建对象后,就可以引用不同对象月月的成员变量或调用不同对象的成员方法,达到对象之间相互驱动的程序运行效果,Java语言规定,引用对象的成员变量及调用对象的成员方法的语法格式为:

(15)创建对象的主要任务是为对象分配,而清除对象的主要任务是,其中主要的是。

为了提高系统资源的利用率,Java语言提供了的机制。

(16)Java语言提供了4种访问控制符。

它们分别是、、

归纳4种不同的访问特性。

可以将各种访问特性的可访问权限总结在下表中:

本类

民95

3生惠8

不同包中的所有类

private

默认

protected

public

(17)Java语言中,类的定义可以相互嵌套,即在一个类的定义中嵌套定义另一个类。

被嵌套定义在内部的类称为,没有嵌套定义在任何类中的类称为。

内部类的成员方法可以访问嵌套该类的外部类的成员。

(18)Java语言提供了两种形式的成员:

一种是静态,称为,主要包括与;

另一种是非静态,称为,主要包括与。

(19)在类中定义成员变量时,如何在访问特性修饰符之后加上修饰符就成为静态成员变量。

静态成员变量只在加载类时创建一个副本,无论创建同一类的多少对象都将同一个副本,因此,静态成员变量与类共存亡,而与具体的对象无关,很多人将其称为类变量。

在实际上将常量定义成静态成员变量的情况更加普遍。

(20)在类中定义成员变方法时,如何在访问特性修饰符之后加上修饰符就成为静态成员方法。

静态成员方法只能对方法中的局部变量和类的进行操作,而不会引用或调用。

(21)StringBuffer类定义在包中,它与String类的区别在于可以对StringBuffe类表示的字符串进行,因此被称为。

它提供了3个构造方法,它们分别是:

StringBuffer类还定义了一些有用的public方法:

方法签名

功能描述

(22)Java语言中提供了中基本数据类型,其中包括、与。

数值类型又分为与。

另外在包中还提供了BigInteger类和BigDecimal类。

BigInteger类实现;

BigDecimal类实现。

创建这两个类的对象后,其值改变,它们表示的数值均为高精度,取值范围,精度可以满足要求,进行各种运算时不会产生现象。

由于它们的数值封装在对象中,直接使用+、-、*、/等算术运算符进行运算,必须调用类中的成员方法。

BigInteger类和BigDecimal类的成员方法如下:

成员方法

 

2、名词:

(1)面向对象:

(2)面向对象程序设计方法:

(3)类:

(4)对象:

(5)成员方法重载:

(6)构造方法:

(7)内部类:

二、边学边练

1、〖任务1〗:

完成教材【例4-1】的程序,分析运行结果,阅读教材相关内容。

2、〖任务2〗:

完成教材【例4-2】的程序,分析运行结果,阅读教材相关内容。

3、〖任务3〗:

完成教材【例4-3】的程序,分析运行结果,阅读教材相关内容。

4、〖任务4〗:

完成教材【例4-4】的程序,分析运行结果,阅读教材相关内容。

三、精讲精记

一、类与对象概念

对象:

程序空间中用于模拟问题空间的实体的程序元素,是对问题空间的实体的直接抽象。

类:

是对一类对象的抽象描述,定义属于此类对象应具有的状态属性和行为方法。

类与对象的关系:

类是对象的概括和抽象,对象是类的实例,是类的具体化。

每个对象都是某类的一个实例,一类可创建若干个对象。

二、类及定义

1、类的定义

[修饰符]class类名{

类体

}

(1)修饰符:

控制类的访问权限和类别

◆访问权限:

默认与public

默认类:

friendly类,只能被同包中的类访问

public类:

公共类,可以被任何类访问,一个程序的主类必须是公共类。

◆类别:

Abstract:

抽象类,没有实现的方法,需要子类提供方法实现。

Final:

最终类,不能作为父类被其他类继承。

(2)class:

定义类的关键字。

(3)类名:

标识符,要符合标识符命名规则,要符合Java命名规范。

(4)类体:

成员变量、成员方法、内部类、静态代码

成员变量:

实例成员变量(非静态成员变量)、类成员变量(静态成员变量)

成员方法:

构造方法、实例成员方法(非静态成员方法)、类成员方法(静态成员方法)

内部类:

嵌套于类内部的类定义。

静态代码:

用static定义的代码。

2、UML与类图

(1)UML(UnifiedModelingLanguage,统一建模语言):

一种面向对象建模的图型表示方法,提供了类图、状态图、活动图、时序图、部属图、用例图等多种图型工具。

(2)类图:

用于描述类的图,主要描述类的成员变量(属性、状态)和成员方法(行为)

类名

成员变量

在成员变量或成员方法前加+代表public、-代表private、#代表protected

3、类文件(源文件)

(1)文件名:

主类名+.java

(2)第个源文件可以定义一个或多个类,只能有一个public类(主类)

(3)类文件(源文件)的基本格式如下

package包名;

import引用其它包的类的完整名;

类定义

4、类的成员变量

(1)类的成员变量用于描述对象的状态和属性。

(2)类的成员变量分为静态成员变量(类成员变量)和非静态成员变量(实例成员变量)。

静态成员变量属与类,类的各对象其享;

非静态成员变量属于对象,类的各对象有自己的值。

(3)成员变量的定义:

[public|private|protected][static][final]变量名;

◆访问控制符:

[public|private|protected],取三者之一,或默认,决定变量的访问权限:

public:

在类的可访问域中均可访问。

protected:

在类的可访问域中,只有本类、本包、子类中可访问

默认:

在类的可访问域中,只有本类、本包

private:

只能在本类中访问

◆存储方式:

[static],有则为静态,无则为非静态。

◆常量:

[final],有为常量,无为变量

◆变量名:

5、类的成员方法

(1)类的成员方法用于描述对象的行为。

(2)类的成员方法分为静态成员方法(类成员方法)和非静态成员方法(实例成员方法)。

静态成员方法属与类,可通过类调用;

非静态成员方法属于对象,只能通过对象调用。

(3)成员方法的定义:

[public|private|protected][static][final]返回类型方法名(参数列表)[throws异常类型列表]{

方法体

静态成员方法只能访问静态成员变量,不能访问非静态成员变量。

非静态成员方法,既可访问静态成员变量,也可访问非静态成员变量。

◆方法的重载:

[final],有,方法在子类中不可重载。

有,方法在子类中可重载。

◆返回类型:

方法返回值的类型,如果没有返回值,为void。

◆方法名:

◆参数列表:

调用此方法需要提供的参数的列表。

◆Throws与异常类型列表:

Throws关键字,声明方法可能抛出的异常。

异常类型列表。

◆方法体:

方法体包括各种语句,包括局部变量定义语句、表达式语句、方法调用语句,流程控制语句、方法返回语句等。

(4)成员方法的定义中,方法名和参数列表构成方法的签名,在同一个类中,可以有多个重名的方法,但要求两两方法签名必须不同,这称为方法的重载。

方法调用时,是根据方法签名不同,区分调用不同的方法。

6、构造方法

Java语言中,每个类至少要有一个构造方法,其功能是构见、初始化对象。

构造方法是一种特殊的成员方法,有如下特点:

(1)方法名必须与类名完全相同;

(2)没有返回值,也不能写void;

(3)一个类可有多个构造方法,但签名要不同;

(4)没有参数的构造方法称为默认构造方法。

如果没有定义任何构造方法,系统会自动产生一个默认构造方法。

如果定义了任何一个构造方法,而没有定义默认构造方法,则系统不会自动产生默认构造方法,这时要使用默认构造方法,必须显式定义默认构造方法。

7、内部类

Java语言中,类的定义可以相互嵌套,即在一个类的定义中嵌套定义另一个类。

被嵌套定义在内部的类称为内部类,没有嵌套定义在任何类中的类称为顶层类。

内部类的成员方法可以访问嵌套该类的外部类的所有成员,对直接外部类也可以访问内部类的各个成员。

内部类通常只在其外部类内使用,而不在其外部类之外使用,更多地是采用拟名内部类的手段简化某些场合的程序代码。

8、静态代码段

静态代码段书写在类定义的类体中,与成员变量和成员方法并列,格式为:

static{

语句;

静态代码段可以访问静态成员,但不能访问非静态成员。

静态代码在类加载的时候执行一次。

三、对象

1、对象的定义

类名对象名;

2、对象的创建

new构造方法名(实参列表);

3、用对象名引用对象

对象名=new构造方法名(实参列表);

4、对象的初始化

类名对象名=new构造方法名(实参列表);

5、类及对象的成员变量的访问和成员方法的调用

(1)静态成员变量的访问

类名.变量名

对象.变量名

(2)非静态成员变量的访问

(3)静态成员方法的调用

类名.方法名(实参列表)

对象.方法名(实参列表)

(4)非静态成员方法的调用

6、关于this

对于类的实例成员变量(非静态成员变量),只有在创建对象时,才创建它们,它们只属于创建的对象。

那么在类的定义中,需要指明当前创建的对象怎么办呢?

Java提供了一个this关键字,它代表当前对象的引用。

this可出现在所有实例成员方法中,通过它引用实例的成员变量或成员方法。

7、对象的清除

对象创建后,将为其在内存中分配空间。

如果一个对象没有变量引用,此对象就不能再使用,成为垃圾,JVM会自动择机回收此对象占用的内存空间,称为Java垃圾回收机制。

四、可编辑字符串

关于字符串,JavaAPI除提供了String类之外,在java.lang包中还提供了StringBuffer类和StringBuilder类,String为不可变字符串,StringBuffer为线程安全可变字符串,StringBuilder为非线程安全可变字符串。

1、StringBuffer和StringBuilder的构造方法

2、StringBuffer和StringBuilder的公共成员方法

五、高精度数值类

Java语言中提供了8中基本数据类型,其中包括数值类型、字符类型与布尔类型。

数值类型又分为整型(byte、short、int、long)与浮点型(float、double)。

另外在java.math包中还提供了BigInteger类和BigDecimal类。

BigInteger类实现高精度整数运算;

BigDecimal类实现高精度浮点数运算。

创建这两个类的对象后,其值不可改变,它们表示的数值均为高精度,取值范围可以无限大,精度可以满足任意要求,进行各种运算时不会产生溢出现象。

由于它们的数值封装在对象中,不能直接使用+、-、*、/等算术运算符进行运算,必须调用类中的成员方法。

六、JavaAPI及JavaAPI文档

1、JavaAPI

JavaAPI(JavaApplicationProgrammingInterface,Java应用程序编程接口),是Java平台为开发应用程序提供的编程接口和类库,具有丰富的功能。

2、JavaAPI文档

JavaAPI的功能描述、使用说明。

七、类与类之间的关系

处于同一系统中的类,相互之间往往有些关系,这些关系可以归为如下几类:

1、继承关系:

如类A继承类B时,说A与B有继承关系

代码特征:

classAextendsB{

……

类图表示

2、实现关系:

如类A实现接口B时,说A与B有实现关系,可以理解为特殊的继承关系

classAimplementsB{

3、关联关系:

如类A的属性(成员变量)为类(或接口)B对象,且在语意上,B不是A的组成部分,可以有不同的生命周期,则称A关联B

classA{

Bb;

……

4、聚合关系:

如类A的属性(成员变量)为类(或接口)B对象,且在语意上,B是A的组成部分,但B可以脱离A而存在,,则称A聚合B

4、组合关系:

如类A的属性(成员变量)为类(或接口)B对象,且在语意上,B是A的组成部分,但B不能脱离A而存在,,则称A组合B

注:

关联关系、聚合关系、组合关系三种关系的代码特征是相同的,不同的是语意。

三者都可以理解为整体与部分的关系,但关系的紧密程序不同:

关联关系<

聚合关系<

组合关系

5、依赖关系:

如类A的方法中要访问类(或接口)B对象,则称A依赖B

publicvoidmethod(){;

}

四、完善调试

设计一个教材类Book、一个课程类Course和一个测试类Test。

三个类的类图设计如下:

要求:

每门课程有1-3本教材;

在Test类中实现创建一门课程,为课程增加三本教材,然后输出课程的各项信息和教材列表。

Book.java

publicclassBook{

privateStringname;

privateStringauthor;

privateStringpress;

privateDoubleprice;

privateStringisdn;

publicBook(){

;

}

publicBook(Stringname,Stringauthor,Stringpress,Doubleprice,Stringisdn){

=name;

=author;

=press;

=price;

=isdn;

publicStringgetName(){

publicvoidsetName(Stringname){

publicStringgetAuthor(){

publicvoidsetAuthor(Stringauthor){

publicStringgetPress(){

publicvoidsetPress(Stringpress){

publicDoublegetPrice(){

publicvoidsetPrice(Doubleprice){

publicStringgetIsdn(){

publicvoidsetIsdn(Stringisdn){

publicStringtoString(){

=this.author+"

"

+this.name+"

+this.press+"

+this.isdn+"

+this.price;

return;

}

Course.java

import;

publicclassCourse{

privateStringno;

privatefloatcredit;

privateBook[]books;

privateintbookNum;

publicCourse(){

super();

=newBook[];

bookNum=;

publicCourse(Stringno,Stringname,floatcredit){

=no;

=credit;

=newBook[3];

publicStringgetNo(){

publicvoidsetNo(Stringno){

publicfloatgetCredit(){

publicvoidsetCredit(floatcredit){

publicvoidaddBook(){

if(bookNum){

System.out.println("

教材已够三本,添加失败!

"

);

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 法学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1