第6章Java中类、对象、接口及包的概念 H 第6章Java中类、对象、接口及 包的概念 6,1类的基本概念 6,2对象 63类的继承概念 64Java中接口与包的概念 dBac
第6章 Java中类、对象、接口及包的概念 第6章 Java中类、对象、接口及 包的概念 6.1 类的基本概念 6.2 对象 6.3 类的继承概念 6.4 Java中接口与包的概念
第6章Java中类、对象、接口及包的概念 H 61类的基本概念 传统的过程式语言,如C,由于它的设计方式与客 观世界之间存在差距,使得程序的编写首先必须定义 所要实现的功能,然后确定需采取的步骤,即所谓的 “逐步求精”的结构程序设计方法。实际开发中,当 程序大到一定程度的时候,其调试和维护就变得很困 难,使用过程式语言就会感到力不从心了
第6章 Java中类、对象、接口及包的概念 6.1 类的基本概念 传统的过程式语言,如C,由于它的设计方式与客 观世界之间存在差距,使得程序的编写首先必须定义 所要实现的功能,然后确定需采取的步骤,即所谓的 “逐步求精”的结构程序设计方法。实际开发中,当 程序大到一定程度的时候,其调试和维护就变得很困 难,使用过程式语言就会感到力不从心了
第6章Java中类、对象、接口及包的概念 H 前面我们说过,Jaa是一种纯面向对象的编程语 言,而面向对象程序设计是近些年来才发展起来的程 序设计方法,其基本思想是将现实世界中的事物抽象 为对象,抽象出来的对象被赋给相应的状态和行为, 通过对消息的响应完成一定的任务。在现实生活中, 任何事物都可以被认为是对象( Object),如: ①电梯 ②街头的自动售货机 ③街上跑的汽车 ④凳子 ⑤人
第6章 Java中类、对象、接口及包的概念 前面我们说过, Java是一种纯面向对象的编程语 言,而面向对象程序设计是近些年来才发展起来的程 序设计方法,其基本思想是将现实世界中的事物抽象 为对象,抽象出来的对象被赋给相应的状态和行为, 通过对消息的响应完成一定的任务。在现实生活中, 任何事物都可以被认为是对象(Object),如: ① 电梯 ② 街头的自动售货机 ③ 街上跑的汽车 ④ 凳子 ⑤ 人 ……
第6章Java中类、对象、接口及包的概念 H 上面列举的对象都有两个共性: 1)具有一定的状态和特性。比如汽车有轮胎、发 动机、方向盘等 (2)每个对象对应一组特定的操作。比如汽车需保 养、加油、清洗等 面向对象程序设计方法就是把现实世界中对象的 状态和操作抽象为程序设计语言中的对象,达到二者 的统一。同一种对象的所有共性进行抽象,又得到了 类的概念
第6章 Java中类、对象、接口及包的概念 上面列举的对象都有两个共性: (1) 具有一定的状态和特性。比如汽车有轮胎、发 动机、方向盘等。 (2) 每个对象对应一组特定的操作。比如汽车需保 养、加油、清洗等。 面向对象程序设计方法就是把现实世界中对象的 状态和操作抽象为程序设计语言中的对象,达到二者 的统一。同一种对象的所有共性进行抽象,又得到了 类的概念
第6章Java中类、对象、接口及包的概念 H 所以,面向对象程序设计中的对象是由描述状态 的变量和对这些变量进行维护和操作的一系列方法组 成的事务处理单位,而类相当于创建对象实例的模板 通过对其实例化得到同一类的不同实例。本章我们将 讨论类的特性、成员变量,方法、对象的建立及初始 化、对象的继承及接口与包等内容
第6章 Java中类、对象、接口及包的概念 所以,面向对象程序设计中的对象是由描述状态 的变量和对这些变量进行维护和操作的一系列方法组 成的事务处理单位,而类相当于创建对象实例的模板, 通过对其实例化得到同一类的不同实例。本章我们将 讨论类的特性、成员变量,方法、对象的建立及初始 化、对象的继承及接口与包等内容
第6章Java中类、对象、接口及包的概念 H 类是对一个或几个相似对象的描述,它把不同对 象具有的共性抽象出来,定义某类对象共有的变量和 方法,从而使程序员实现代码的复用,所以说,类是 同一类对象的原型。创建一个类,相当于构造一个新 的数据类型,而实例化一个类就得到一个对象。Java 为我们提供了大量的类库,如果从已知类库入手来构 造自己的程序,不仅能有效地简化程序设计,而且能 很好地学习面向对象程序设计方法 其实,前面很多例子已经对类的组成有了明确地 说明,一个类的实现包含两部分内容:声明和实体 类的各部分组成如图61所示
第6章 Java中类、对象、接口及包的概念 类是对一个或几个相似对象的描述,它把不同对 象具有的共性抽象出来,定义某类对象共有的变量和 方法,从而使程序员实现代码的复用,所以说,类是 同一类对象的原型。创建一个类,相当于构造一个新 的数据类型,而实例化一个类就得到一个对象。Java 为我们提供了大量的类库,如果从已知类库入手来构 造自己的程序,不仅能有效地简化程序设计,而且能 很好地学习面向对象程序设计方法。 其实,前面很多例子已经对类的组成有了明确地 说明,一个类的实现包含两部分内容:声明和实体。 类的各部分组成如图6.1所示
随第6章JaVa中类、对象、接口及包的概念 类的声明 public class stack 变量定义 private Vector items, public stackOf 构造函数 items-new Vector(1o) 类的实体 public Object puch(Object item)i tems addElement(item) return item: public synchronized Object popoi int len=items. size 方法定义 throw new Empty Stack Exception obj=items. ElementAt(len-1) items. removeElementAt(len-1) return obj public boolean isEmpty Oi if(items. size=0) turn tr return false. 图6.1
第6章 Java中类、对象、接口及包的概念 图 6.1 public class stack { private Vector items; public Stack(){ items=new Vector(10); } public Object puch(Object item){ items.addElement(item); return item; } public synchronized Object pop(){ int len=items.size(); Object obj=null; if(len==0) throw new EmptyStackException(); obj=items.ElementAt(len-1); items.removeElementAt(len-1); return obj; } public boolean isEmpty(){ if(items.size()==0) return true; else return false; } } 类的实体 类的声明 变量定义 构造函数 方法定义
随第6章JaVa中类、对象、接口及包的概念 6.1.1类的声明 类声明包括关键字 class、类名及类的属性。类名 必须是合法的标识符,类的属性为一些可选的关键字。 其声明格式如下: Ipubliclprivate friendly protected [abstract][final] class className Extends superclassName]implements inter faceNameList 其中,第一项属于访问控制符,它不仅针对于类, 类的变量、方法的访问也有该项的限制,我们后面会 做专门的介绍。其他的修饰符说明如下
第6章 Java中类、对象、接口及包的概念 6.1.1 类的声明 类声明包括关键字class、类名及类的属性。类名 必须是合法的标识符,类的属性为一些可选的关键字。 其声明格式如下: [public|private|friendly|protected] [abstract][final] class className [extends superclassName][implements interfaceNameList] {...} 其中,第一项属于访问控制符,它不仅针对于类, 类的变量、方法的访问也有该项的限制,我们后面会 做专门的介绍。其他的修饰符说明如下:
第6章Java中类、对象、接口及包的概念 H ● abstract:声明该类不能被实例化 final:声明该类不能被继承,即没有子类。 class class Name:关键字 classi告诉编译器表示类的声 明以及类名是 class name。 ● extends super class Name: extends语句扩展 super class Name为该类的父类
第6章 Java中类、对象、接口及包的概念 ● abstract:声明该类不能被实例化。 ● final:声明该类不能被继承,即没有子类。 ● class class Name:关键字class告诉编译器表示类的声 明以及类名是class Name。 ● extends super class Name:extends 语句扩展super class Name为该类的父类
第6章Java中类、对象、接口及包的概念 H ● implements inter face Name List:声明类可实现 一个或多个接口,可以使用关键字 implements并且在其 后面给出由类实现的多个接口名字列表,各接口之间 以逗号分隔。如图6.1中的 public class stack 即为类的声明
第6章 Java中类、对象、接口及包的概念 ● implements interface Name List:声明类可实现 一个或多个接口,可以使用关键字implements并且在其 后面给出由类实现的多个接口名字列表,各接口之间 以逗号分隔。如图6.1中的 public class stack {...} 即为类的声明