Java语言自主学习手册答案.docx

上传人:b****3 文档编号:26556233 上传时间:2023-06-20 格式:DOCX 页数:16 大小:42.52KB
下载 相关 举报
Java语言自主学习手册答案.docx_第1页
第1页 / 共16页
Java语言自主学习手册答案.docx_第2页
第2页 / 共16页
Java语言自主学习手册答案.docx_第3页
第3页 / 共16页
Java语言自主学习手册答案.docx_第4页
第4页 / 共16页
Java语言自主学习手册答案.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

Java语言自主学习手册答案.docx

《Java语言自主学习手册答案.docx》由会员分享,可在线阅读,更多相关《Java语言自主学习手册答案.docx(16页珍藏版)》请在冰豆网上搜索。

Java语言自主学习手册答案.docx

Java语言自主学习手册答案

Java语言自主学习手册答案(上)

[ppt_7]:

Java类库API

JavaAPI是SUN提供的用Java语言开发的类集合。

[ppt_12]:

Java与C++比较

语言

Java

C++

直译式语言

编译式语言

编译后产生机器码

产生近似于机器码字节码

跨平台

根据平台作改变

运行速度

较慢

具有指针类型

使用对象实例替代指针

继承

单继承

多继承

[ppt_17]:

Java虚拟机

▪Java编译器针对Java虚拟机产生class文件,因此是独立于平台的

▪Java解释器负责将Java虚拟机的代码在特定的平台上运行

[ppt_31]:

主方法

JavaApplication程序的入口是main()方法

[ppt_32]:

源文件

–Java程序的源文件扩展名必须是“.java”

–Java程序的源文件名必须与main()方法所在类名相同

–Java源文件中可以包含多个类

程序内容

–由方法体实现程序要完成的功能,方法的实现由一个个语句组成

–语句以“;”作为结束标志

–严格区分大小写

[ppt_33]:

命名

–如果.java文件包含一个public类,它必需按该类名命名

–如果一个类中含有main()方法,它必需按该类名命名

–文件名、类名严格区分大小写

类个数

一个源文件中允许有多个类,但只能有一个public类其它类的个数不限

[ppt_37]:

JavaApplet

•Applet就是使用Java语言编写的一段代码,它可以在浏览器环境中运行

•Applet类存于java.applet包中,是java.awt.Panel的子类。

它与Application的区别主要在于其执行方式的不同

•Application是从其中的main()方法开始运行的

•Applet是在浏览器中运行的,必须创建一个HTML文件,通过编写HTML语言代码告诉浏览器载入何种Applet以及如何运行

[ppt_39]:

JavaApplet

–code:

包含applet字节码的文件名

–height:

执行时在屏幕上打开的高度

–width:

执行时在屏幕上打开的宽度

[ppt_47]:

逻辑型

•boolean类型适于逻辑(布尔型)运算,一般用于程序流程控制

•boolean类型数据只允许取值true或false,不可以0或非0的整数替代true和false

[ppt_48]:

字符型

•char型数据用来表示通常意义上“字符”

•字符常量是用单引号括起来的单个字符

•Java字符采用Unicode编码,每个字符占两个字节,因而可用十六进制编码形式表示

•Java语言中还允许使用转义字符'\'来将其后的字符转变为其它的含义

[ppt_53]:

直接量与常量

•直接量:

在程序中直接给出的一个符号串,作用是为变量赋值或参与表达式运算

•常量:

用final说明的一个标识符

[ppt_55]:

Java引用类型

•Java语言中除8种基本数据类型以外的数据类型称为引用类型

•引用类型数据以对象的形式存在

•引用类型变量的值是某个对象的句柄(存储地址),而不是对象本身

•声明引用类型变量时,系统只为该变量分配引用空间,并未创建一个具体的对象

[ppt_57]:

对象的构造和初始化

1.为引用类型变量分配引用空间

MyDatem;

m

[ppt_58]:

对象的构造和初始化

2.创建新对象

–为新对象分配内存空间

–进行属性(实例变量)的默认初始化

[ppt_59]:

分配内存:

newMyDate(1,8,2003);

 

默认初始化:

 

显式初始化:

 

[ppt_61]:

3.调用所属类的构造方法

newMydate(1,8,2003);

 

[ppt_62]:

4.为引用类型变量m赋值

 

[ppt_63]:

常量

•常量一经建立在程序运行的整个过程中都不会改变

•Java中常用的常量有布尔常量、整型常量、字符常量、字符串常量和浮点常量

•字符常量用单引号引起来表示单个字符

•字符串常量用双引号引起来表示一串字符

[ppt_66]:

Java变量

变量用于记录数值可变的数据

按所属的数据类型划分

–基本数据类型变量

–引用数据类型变量

按被声明的位置划分

–局部变量:

方法或语句块内部定义的变量

–成员变量:

方法外部、类的内部定义的变量

[ppt_69]:

成员变量声明和初始化

•成员变量在类的定义中声明

•在创建对象的同时创建有关的成员变量

•成员变量创建后系统自动对其进行

–默认初始化

–显式初始化

[ppt_70]:

变量作用域

•局部变量的作用域就是它所在的方法或语句块

•在程序调用方法(进入语句块)时,局部变量才被创建并可用,随方法(语句块)的退出,局部变量将被销毁

•成员变量依附于对象(局部变量)存在,具有与对象相同的生存期和作用域

[ppt_74]:

关键字

•所有Java关键字都是小写的

[ppt_90]:

强制类型转换

对强制类型转换的限制:

整型与浮点型可以相互转换,但基本类型和数组、对象等复合类型之间不能互相转换

[ppt_99]:

数组元素的默认初始化

数组是引用类型,它的元素相当于类的成员变量

[ppt_100]:

数组元素的引用

–数组元素下标从0开始

–长度为n的数组合法下标取值范围:

0~n-1

[ppt_153]:

类的概念

•类是现实世界中实体的抽象集合,是封装了数据和其上操作的复杂的抽象数据类型,类具有完整的功能和相对的独立性,可以包含丰富的内涵、更好的安全性和更大的功能

•定义类的过程就是定义类的属性和服务的过程

•类包括对象生命周期中的要用到的所有代码,构造方法、变量的声明、方法的声明等

•类中直接声明的变量(属性)称为成员变量,方法称为成员方法

[ppt_160]:

对象生命周期

•创建对象

•使用对象

•清除不用的对象

[ppt_161]:

创建对象

创建对象的三个步骤

•声明

•实例化

•初始化

[ppt_162]:

对象的回收

•Java运行环境当确定某个对象不再被使用时,将其删除

一个对象在没有引用指向它时,可作为垃圾收集

•Java运行环境中的垃圾搜集器周期性地释放不用对象占用的空间

[ppt_164]:

•类的方法

–称为成员方法,用来规定类属性上的操作,实现类内部功能机制,是类与外界进行交互的窗口

[ppt_165]:

关键字static

•static称为静态修饰符

•在Java类中声明属性、方法和内部类时,可使用关键字static做为修饰符

•static标记的属性或方法由整个类(所有实例)共享,如访问控制权限允许,可不必创建该类对象而直接用类名加‘.’调用

[ppt_166]:

类属性

•类属性是类的属性,不属于任何一个类的具体对象,即对于该类的任何一个具体对象而言,类属性是一个公共存储单元,任何一个对象访问或修改它,都针对同一存储单元

•类属性由该类的所有实例共享

[ppt_168]:

类属性

•类属性在加载该类时,只分配一次空间,并初始化

[ppt_169]:

类属性

•类变量可用来在实例之间进行通信或跟踪该类实例的数目

[ppt_170]:

类属性

•类属性可以是public或private

•对于public类型的类属性,可以在类外直接用类名调用而不需要初始化

[ppt_172]:

类方法

•在方法前加入static标识符,即为类方法

•类方法是属于整个类的方法

•类方法可以在不产生对象的情况下直接以类名来调用

•非static的方法是属于某个对象的方法,在这个对象创建时对象的方法在内存中拥有自己专用的代码段

•static方法只能处理static的成员属性

[ppt_174]:

类方法

在类方法内部不能对实例变量和实例方法进行访问

[ppt_175]:

类方法

•在类方法内部不能使用this关键字

•this表示调用该方法的对象,而类方法不需要利用对象进行调用

[ppt_177]:

静态初始化器

•由关键字static引导的语句块(语句组)

•存在类的定义体中、方法的外部

[ppt_179]:

静态初始化器与构造方法

•构造方法是对每个新创建的对象初始化,静态初始化器对每个类初始化

•构造方法在new运算符产生新对象时由系统自动执行,静态初始化器所属类加载内存时由系统调用运行

•静态初始化器不是方法

[ppt_182]:

关键字abstract

•abstract是抽象修饰符

•加入abstract的类称为抽象类

•加入abstract的方法称为抽象方法

[ppt_183]:

抽象类

•含有抽象方法的类必须被声明为抽象类,并在类定义关键字class前加入abstract修饰符

•抽象类必须被继承

•抽象方法必须被重写

•抽象类不能被实例化,一般可利用其子类的实例进行实例化。

[ppt_184]:

抽象类

•抽象类的实例变量可以指向具体的一个子类的实例

[ppt_185]:

抽象方法

•一个方法只有声明部分而没有方法的实现,该方法叫做抽象方法

•抽象方法必须用abstract来修饰

•抽象方法必须以分号“;”作为结束标志

[ppt_187]:

关键字final

•final是最终修饰符

•final可以修饰类、属性和方法

•final修饰的类称为最终类

•final修饰的方法称为最终方法

•final标记的变量(成员变量或局部变量)即称为常量

•final标记的类不能被继承

•final标记的方法不能被子类重写

[ppt_188]:

关键字final

•final标记的成员变量必须在声明的同时或在每个构造方法中显式赋值,然后才使用

•常量只能赋值一次,一般大写

•被定义成final的类不能有子类

[ppt_190]:

终结器

•在面向对象程序设计中,对象与单纯的变量一样,有其产生和消亡的过程,当一个对象不再有用时应该回收它(释放其所占用内存空间及其他资源)

•终结器是回收对象时执行的方法

[ppt_202]:

类的继承

•Object类是所有Java类的最高层父类

•Java只支持单继承,不允许多重继承

–一个子类只能有一个父类

–一个父类可以继承出多个子类

•一个类实现了多个接口,达到多继承效果

[ppt_203]:

类的继承

•子类中只需声明特有的东西

•带private修饰符的属性、方法是不能被继承的,子类从父类继承所有非私有域(非private)的属性和方法作为自己的成员

•构造方法不能被继承

[ppt_204]:

类的继承

•在方法中调用构造方法用this()

•调用父类的构造方法用super()

•Java中任何一个子类的实例都可作为父类的实例使用,可调用父类具有的方法

[ppt_205]:

关键字this

•this代表其所在方法的当前对象

–构造方法中指该方法所创建的新对象

–普通方法中指调用该方法的对象

•“this.属性”和“this.方法”表示调用当前对象所属类的属性和方法

•“this()”表示调用当前对象所属类的构造方法

[ppt_212]:

属性的继承

•子类可以继承父类非私有的所有属性,而父类非私有的所有属性是所有子类都拥有的属性的集合

[ppt_213]:

属性的隐藏

•属性的隐藏:

子类重新定义一个与从父类那里继承的属性变量完全相同的变量

[ppt_214]:

属性的隐藏

•当子类执行继承自父类的方法时,处理来自父类的变量

•当子类执行自己定义的方法时,处理自己定义的变量

[ppt_217]:

方法的重写(覆盖)

•概念:

在子类中可以根据需要对从父类中继承来的方法进行改造

[ppt_218]:

方法的重写(覆盖)

•重写方法必须和被重写方法具有相同的方法名称、参数列表和返回值类型

•重写方法不能使用比被重写方法更严格的访问权限,即方法的访问权限不能缩小

[ppt_223]:

方法的重载

•参数列表必须不同,以此区分不同方法体

•返回类型、修饰符可相同或不相同

[ppt_224]:

指代关键字

•null:

代表“空”,定义一个对象且尚未开辟内存单元时,这个对象为null

•this:

用来指代当前对象

•super:

用来指代父类对象

[ppt_225]:

this关键字

•this表示的是当前对象本身,即this代表了当前对象的一个引用

•利用这个引用可以访问对象、修改对象的属性、调用对象的方法

[ppt_227]:

super关键字

•super表示的是当前对象的直接父类对象,是当前对象的直接父类对象的引用

•super可用于访问父类中定义的属性

•super可用于调用父类中定义的成员方法

•super可用于在子类构造方法中调用父类的构造方法

•super的追溯不仅于直接父类

[ppt_232]:

构造方法

•构造方法重载,参数列表必须不同

[ppt_233]:

构造方法重载

•可以在构造方法的第一行使用this关键字调用其它(重载)的构造方法

[ppt_243]:

调用父类构造方法

•在子类的构造方法中可使用super(参数列表)语句调用父类的构造方法

•如果子类的构造方法中没有显示地调用父类构造方法,也没有使用this关键字调用重载的其它构造方法,则系统默认调用父类无参数的构造方法

•如果子类构造方法中既未显式调用父类构造方法,而父类中又没有无参的构造方法,则编译出错

[ppt_244]:

构造方法的继承

•子类继承父类所有的成员变量和成员方法,但不继承父类有参数的构造方法

[ppt_245]:

构造方法的继承

•如果子类没有自定义构造方法,则继承父类的无参数构造方法

•如果子类自定义了构造方法,创建新对象时,先执行继承自父类的无参数构造方法,再执行自定义构造方法

•对于父类中有参数的构造方法,子类可以在自己的构造方法中利用super调用,super必须是构造方法的第一个可执行语句

[ppt_251]:

多态性

•在Java中,子类的对象可以替代父类的对象使用

•一个对象只能有一种确定的数据类型

•一个引用类型变量可能指向(引用)多种不同类型的对象

[ppt_253]:

多态性

•一个引用类型变量如果声明为父类的类型,但实际引用的是子类对象,那么该变量就不能再访问子类中添加的属性和方法

[ppt_254]:

多态性

•方法声明的参数类型为父类类型,可以使用子类的对象作为实参调用该方法

[ppt_258]:

接口

•定义:

把用于完成特定功能的若干属性组织成相对独立的属性集合,凡是需要实现这种特定功能的类,都可以继承这个属性集合并在类内使用它,这种属性集合就是接口

•接口是抽象方法和常量值的定义的集合

[ppt_259]:

•接口是一种特殊的抽象类,这种抽象类中只包含常量和方法的定义,而没有变量和方法的实现

•一个接口中所有成员方法都是抽象的,所有成员变量都被定义为publicstaticfinal

•接口不属于类层次结构。

不相关的类可以实现相同的接口

•多个无关的类可以实现同一个接口

•一个类可以实现多个无关的接口

•接口与实现类之间存在多态性

[ppt_263]:

接口

•可以通过实现接口实现多重继承:

一个类可只继承一个父类,并实现多个接口

[ppt_266]:

接口用法总结

•通过接口可以实现不相关类的相同行为,而不需要考虑这些类之间的层次关系

•通过接口可以指明多个类需要实现的方法

•通过接口可以了解对象的交互界面,而不需了解对象所对应的类

[ppt_267]:

•包(package)是相关类与接口的一个集合,它提供访问控制与命名空间管理

包机制的好处

•程序员容易确定包中的类是相关的

•程序员容易根据所需的功能找到相应的类

•每个包都创建一个新的命名空间,因此不同包中的类名不会冲突

•同一个包中的类之间有比较宽松的访问控制

[ppt_268]:

创建包

•包定义语句在每个源程序中只能有一条,即一个类只能属于一个包

•包定义语句必须在程序的第一行(之前可有空格及注释)

•包名用“.”分隔

[ppt_269]:

创建包

•在缺省情况下,系统会为.java源文件创建一个无名包,该.java源文件中定义的所有类都隶属于这个无名包,它们之间可以相互引用,但不能被其它包所引用

[ppt_270]:

包的引用

•对于同一包中的其它类,只需在要使用的属性和方法名前加上类名作为前缀即可

•对于其它包中的类,则需要在类名前加上包名前缀,这种引用称为长名引用

•只有public类型的成员才能被包外的类访问,访问要通过以下方法:

[ppt_273]:

编程中的错误

•错误分为编译错误和运行错误

[ppt_276]:

异常和异常类

Java中定义了很多异常类,每个异常类都代表了一种运行错误,类中包含了该运行错误的信息和处理错误的方法等内容

[ppt_280]:

异常的类型

•异常总是java.lang包中的标准类Throwable的一些子类对象

•所有标准异常都由Throwable类的两个直接子类涵盖,分别为Error和Exception类

[ppt_284]:

违例(Exception类)

•要么在该方法中处理异常

•要么记录下方法可能产生的异常,并抛出这种异常

[ppt_287]:

异常处理

•这种异常对象有相关的数据成员存储着故障的情况,一般称抛出(throw)异常,也就是抛出包含异常情况的对象

•该异常对象可以作为参数,传递给专门为处理相关问题而编写的程序代码,接收异常对象作为形式参数的代码称为捕获(catch)了异常

•如果Java运行时系统找不到可以捕获异常的方法,则运行时系统将终止,相应的Java程序也将退出

[ppt_305]:

声明抛出违例

•一个方法中的语句在执行时,可能生成某种违例,但是并不能确定如何处理这种违例,则此方法应声明抛出违例

•表明该方法将不对这些违例进行处理,而由该方法的调用者负责处理

[ppt_307]:

抛出违例

•首先要生成异常对象,然后通过throw语句实现抛出操作(提交给Java运行环境)

•可以抛弃的例外必须是Throwable或其子类的实例

•如果一个例外在返回到main()时还未被处理,则程序将非正常终止

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

当前位置:首页 > 人文社科 > 法律资料

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

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