Java面向对象程序设计 .docx
《Java面向对象程序设计 .docx》由会员分享,可在线阅读,更多相关《Java面向对象程序设计 .docx(13页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精品名师归纳总结第三章 Java 面对对象程序设计3.1 明白面对对象程序设计的基本概念3.2 把握类的使用方法3.3 熟识对象的创建与使用方法3.4 明白包的创建与使用方法3.1 明白面对对象程序设计的基本概念一、对象现实世界中,对象(Object)就是客观存在的某一事物。一辆自行车,一台运算机,它们都可以视为对象。对象普遍具有两个特点:状态(属性)和行为。比如,小鸟出名称、体 重、颜色等状态和飞行、觅食等行为。同样,自行车也有品牌、外观、重量等状态和刹车、加速、减速等行为。在面对对象程序设计中,对象是一组数据和相关方法的集合。程序中可通过变量向其传递或猎取数据,而通过调用其中的方法执行某些
2、操作。在Java 中,对象必需基于类来创建。类是用来描述一组具有共同状态和行为的对象的原型,是对这组对象的概括、归纳与抽象表达。在面对对象程序设计中,可以让具有共同特点的对象形成类,它定义了同类对象共有的变量和方法。通过类可以生成具有特定状态和行为的实例,这便是对象。从某种程度上讲, Java 编程就是设计类,在编程中可以接受自定义方法或继承方法设计一个类。此外,仍可在编程时利用类来创建对象,然后转变对象变量值和调用对象方法 来实现程序的某些功能。二、类 三、封 装封装( Encapsulation )是将代码及其处理的数据绑定在一起的一种编程机制,该机制保证了程序和数据都不受外部干扰且不被误
3、用。懂得封装性的一个方法就是把它想成一个黑匣 子,它可以阻挡在外部定义的代码任凭拜望内部代码和数据。对黑匣子内代码和数据的访 问通过一个适当定义的接口严格把握。封装的目的在于使对象的设计者和使用者分开,使用者不必知道对象行为实现的细节,只需要使用设计者供应的接口来拜望对象。封装是 OOP 设计者追求的理想境域,它可以为开发员带来两个好处:模块化和数据隐匿。模块化意味着对象代码的编写和爱惜可以独立进行,不会影响到其他模块,而且有很 好的重用性。数据隐匿就使对象有才能爱惜自己,它可以自行爱惜自身的数据和方法。因 此,封装机制提高了程序的安全性和可爱惜性。四、继承继承是面对对象程序设计中两个类之间的
4、一种关系,是一个类可以继承另一个类(即它的父类)的状态和行为。被继承的类称为超类或父类,继承父类的类称为子类。一个父类可以同时拥有多个子类,这时这个父类实际上是全部子类的公共变量和方法的集合 ,每 一 个 子 类 从 父 类 中 继 承 了 这 些 变 量 和 方 法 。然而,子类也可以不受父类供应的状态和行为的限制。子类除了具有从父类继承而来的变量和方法外,仍可以增加自己的变量和方法。子类也可以转变从父类继承来的方法,即可以掩盖继承的方法。继承使父类的代码得到重用,在继承父类供应的共同特性的基础上增加新的代码,从而使编程不必一切从头开头,进而有效提高了编程效率。五、多态可编辑资料 - - -
5、 欢迎下载精品名师归纳总结多态性可以用“一个对外接口,多个内在实现方法”来表示。也就是说,我们可以在一个类中定义多个同名方法,程序在调用某个方法时,系统会自动依据参数类型和个数的不同调用不同的方法,这种机制被称为方法重载。此外,当我们利用继承由父类创建子类时,假如父类中的某些方法不适合子类,我们无法删除它们,但可以重新定义它们,这被称为掩盖。如此一来,当我们利用子类创建对象 时,假如调用对象的某个方法,系统会第一在子类中查找此方法。假如找到,就调用子类的方法。否就,将向上查找,即在父类中查找此方法。这种情形被称为父类与子类之间方法的多态性。3.2 把握类的使用方法下面我们结合Java 程序的格
6、式来详细介绍类的声明方法: package 包名/ 声明程序所在包import 包名 .*/ 导入外部包,可包含多条import 语句,以导入多个外部包中的类import 包名 .类名/ 声明和定义类 类修饰符 class 类名 extends 父类名称 implements 接口名称列表 / 声明成员变量或常量 拜望把握修饰符 staticfinal 变量名或常量名。/ 定义其他成员变量或常量/ 声明和定义成员方法 拜望把握修饰符 abstractstaticfinalnativesynchronized返回类型 方法名 参数列表 throws 反常类型列表 / 方法体/ 定义其他方法/ 定
7、义其他类说明说明:( 1 ) 在 一 个 Java文 档 中 可 以 包 含 多 个 类 , 但 最 多 只 能 有 一 个 为 公共类(即publicclass,也可以没有)。(2)假如存在 public class 的话,该类的类名必需与文档名相同。( 3 ) main方 法 是Java应 用 程 序 的 入 口 , 如 果 文 档 中 存 在 public class 和 main 方法,就 main 方法必需位于public class 中。main 方法的格式如下:public class 类名 / 成员变量列表public static void mainString args /
8、 局部变量声明/ 方法体一、类声明类声明定义了类的名字及其他属性。类声明的一般格式如下:可编辑资料 - - - 欢迎下载精品名师归纳总结 类修饰符 class 类名 extends 父类名称 implements 接口名称列表 其中, class 关键字和类名是必需的, 表示可选项。类名是要声明的类的名字,它必须是一个合法的 Java标识符,习惯上首字母要大写。1类修饰符类修饰符有public 、 abstract 和 final 。假如没有声明这些类修饰符,Java 编译器默认该类为friendly 类,对于这些类,只有同一包中的类可以拜望。public ( 公 共 的 ) : 带 有 pu
9、blic 修 饰 符 的 类 称 为 公 共 类 , 公 共 类 可 以 被任 何 包 中 的 类 访 问 。 不 过 , 要 在 一 个 类 中 使 用 其 他 包 中 的 类 , 必 须 在程序中增加 import 语句 。abstract ( 抽 象 的 ) : 带 有 abstract 修 饰 符 的 类 称 为 抽 象 类 , 相 当 于 类的 抽 象 。 一 个 抽 象 类 可 以 包 含 抽 象 方 法 , 而 抽 象 方 法 是 没 有 方 法 体 的方 法 , 所 以 抽 象 类 不 具 备 具 体 功 能 , 只 用 于 衍 生 出 子 类 。 因 此 , 抽 象类不能被实
10、例化。final ( 最 终 的 ) : 带 有 final 修 饰 符 的 类 称 为 最 终 类 。 不 能 通 过 扩 展 最终类来创建新类。也就是说,它不能被继承,或者说它不能派生子类。2. 说明一个类的父类extends 关键字用来告知编译器创建的类是从父类继承来的子类,父类必需是Java系统的预定义类或用户已经定义好的类。一个类只能有一个父类,但一个父类可以有多个子类。3. 说明一个类所实现的接口implements 关键字用来告知编译器类实现的接口,一个类可以实现多个接口,多个接口之间用逗号分隔,其形式为:implements interface1,interface2,。使用接
11、口的主要目的是为了使程序的功能描述和功能的详细实现相分别,从而使程序结构更清晰。4. 类体类体是类功能实现的主体,是Java 语句的集合。类体中一般定义三类要素:成员变量和常量、构造方法和方法。其中,成员变量和常量用来刻画对象的状态,方法用来描述对象的行为,而构造方法一般用来初始化成员变量。1. 拜望把握修饰符使用拜望把握修饰符可以限制拜望成员变量或常量的权限。拜望把握修饰符有4 个等级:private、 protected、public 以及默认(即不指定修饰符)。二、成员变量与常量成员变量或常量声明必需放在类体中,其一般形式为: 拜望把握修饰符 static 变量名。类型所属类同一个包中的
12、其他类privateprotectedpublic默认同一个包中的不行拜望可拜望可拜望可拜望 拜望把握修饰符 staticfinal 常量名。可拜望可拜望可拜望可拜望不行拜望可拜望可拜望可拜望可编辑资料 - - - 欢迎下载精品名师归纳总结子类不同包中的子类不同包中的非子类不行拜望 可拜望 可拜望不行拜望不行拜望 不 可 访可拜望不行拜望问可编辑资料 - - - 欢迎下载精品名师归纳总结2. static 变量(类变量或静态变量)Java 中包括两种类型的成员变量:实例成员变量和类成员变量,简称实例变量和类变量。假如用 static 关键字修饰成员变量,就该变量是一个类变量(又称静态变量)。不
13、加static修饰的成员变量称为实例变量。package Chapter3 class ConcentCirclepublic static int x=100,y=100 。 /定义圆心坐标变量public int r 。/定义半径变量public static void mainString argsConcentCircle t1=new ConcentCircle 。 /创建对象ConcentCircle t2=new ConcentCircle 。t1.x+=100 。/设置圆心的横坐标t1.r=50 。/初始化半径变量t2.x+=200 。t2.r=150 。System.out.
14、printlnCircle1:x=+t1.x+,y=+t1.y+,r=+t1.r。System.out.printlnCircle2:x=+t2.x+,y=+t2.y+,r=+t2.r。三、方法的声明与实现1. 方法定义的一般形式在 Java 中,方法在类体中定义。与类一样,方法的定义也包括两个部分:方法声明和方法体。方法声明的一般形式为: 拜望把握修 abstractstaticfinalnativesynchronized返回类型 方法名 参数列表 throws 反常类型 /方法体2. 方法的修饰符方法的修饰符分为拜望把握修饰符和非拜望把握修饰符。方法的拜望把握修饰符与成员变量的拜望把握修
15、饰符的用法是一样的。(1) abstract 方法(抽象方法)带有 abstract 修饰的方法称为抽象方法,是指没有方法体的方法。不过,抽象方法只能显现在抽象类中。(2) static 方法(类方法或静态方法)方法与成员变量类似,也分为实例方法和类方法(又称静态方法)。带有static 修饰符的方法称为类方法,不加static 修饰的方法称为实例方法。可编辑资料 - - - 欢迎下载精品名师归纳总结实例方法是属于某个对象的方法,即每个对象的实例方法都有自己专用的内存空间。类方法是属于整个类的,它被该类的全部对象共享。类方法与实例方法请参考【例5】。(3) final 方法(最终方法)带有 f
16、inal 修饰的方法称为最终方法。在面对对象程序设计中,子类可以掩盖父类的方法。但是,假如父类的某个方法被final 修饰,就其子类就不能掩盖这个方法,只能继承这个方法。因此,这样可以防止子类对父类的关键方法进行修改,保证了程序的安全性。(4) native 方法(本的方法)用其他语言编写的方法在Java 程序中称为本的( native)方法。由于native 方法的方法体是使用其他语言在程序外部编写的,所以native 方法没有方法体。(5) synchronized 方法(同步方法)同步方法用于多线程编程。多线程在运行时,可能会同时存取一个数据。为了防止数据的不一样性,可以将方法声明为同步
17、方法,进而对数据加锁,以保证线程的安全。(6) throws 反常类型列表程序在运行时可能会发生反常现象。每一个反常都对应着一个反常类。假如期望方法忽视某种反常,可将其抛出,让它的“上级”(如调用它的对象等)来处理,从而使程序得以连续运行。3. 方法的返回类型一个方法必需声明其返回类型,方法的返回类型可以是Java 中的任意数据类型。当一个方法不需要返回数据时,返回类型必需是void(空)。假如一个方法具有返回值,就在方法体中使用return 语句把一个确定的值返回给调用该方法的语句。4. 方法的参数传递当编写一个方法时,一般会在方法名之后给出一个参数列表(称为方法的形参)来声明该方法所需要的
18、参数类型和参数。参数列表由参数类型和参数名称组成,各参数之间用逗号分隔。在 Java 中,可传递的参数(称为方法的实参)可以是任何数据类型,包括基本数据类型、数组或对象,它必需与方法的形参完全对应。其中,传递基本类型的参数时,编译器会将 参数的值传递到方法中。在方法中修改传递过来的参数的值,并不会影响原参数的值。请 参考【例 6】与【例 7】。5. 重载方法Java 支持重载方法,即多个方法可以共享一个名字。但是,各方法之间必需在参数个数、次序或类型方面有所区分。public static String doubleItString data /参数类型为 String System.out.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java面向对象程序设计 Java 面向 对象 程序设计
限制150内