22236java程序设计内容摘要:
联系,这种联系导致物体状态的变化。 所有这些,构成了面向对象分析的核心思想。 类与对象的基本概念 所有的物体都可以被视为对象 类是具有相同特征的多个对象的模板 ,它封装了这些对象的所有共同特征。 Java的类 形式如下: [修饰符 ] class 类名 [extends父类名 ][implements接口名列表 ] 类的修饰符有 private、 public、 abstract 、 final。 说明如下: 类体 { [成员变量说明 ] [构造方法说明 ] [静态初始化说明 ] [方法说明 ] } Java中成员变量说明形式如下: [修饰符 ] 成员变量类型 成员变量名 使用类变量的格式如下: 类名 . 类变量名 访问类对象变量的格式如下: 类对象名 . 类对象变量名 例 41 成员变量的访问 说明形式如下: [构造方法修饰符 ] 方法名 ( [形式参数列表 ]) [throws异常列表 ] 方法体 ( 1) 缺省的构造方法 例如在例 41的类 Point中 : public Point(){}; //对象成员变量的初值按 Java规定 ( 2 ) 带参数的构造方法 如例 41中: public Point(int x,int y) { =x。 =y。 } 形式如下: [方法修饰符 ] 返回值类型 方法名 ( [形参列表 ]) [throws异常列表 ] 形式参数列表的形式如下: (类型 形参名 , 类型 形参名 , …… ) 方法体是实现了这个方法的代码段 方法的调用 类方法调用形式如下: 类名 . 类静态方法名 (实型参数列表 ) 对象方法调用形式如下: 类对象名 . 类非静态方法名 (实型参数列表 ) 例 42 类方法的使用 递归方法 1) 直接递归方法与间接递归方法 例 43 递归方法 求 sum(n)=1+2+3+4+…… +n 例 44 递归方法 求 factorial (n)=1*2*3*4*…… *n. 方法的 final修饰符 例 45 最终方法例 final boolean GetSwitchState //获取开关状态 { return PowerOn。 //返回 PowerOn值 } 继承 形式如下: class SubClassName extends SupperClassName 例 46 子类与父类是继承的关系 编译后会产生四个结果文件: 在 Java中 , Java所有类的父类。 继承关系形成的这种所谓的树形层次结构。 例 47 图形抽象类 最终类 ( final类 ) 例 48 final类说明 final class EndClass extends SupperClass { …… } 对象的创建及使用 语法形式为: 类名 对象名; 对象的实例化和初始化 语法形式为: 对象名 =new 类构造方法名 ( [实参表 ]) ; 对象的成员变量及方法的的访问 构造了对象 , 才能访问对象的成员变量及方法。 null,this和 super null为 空 变量 , 用于指代空对象 , 但这个对象不存在相应的实例 , 如下面的例子: Rectangle rect=null。 this引用表示的是对象本身 例 49 this引用自身 super指代的是对类的父类的引用。 例 410 super 引用类的父类 接口 下面我们可以总结出接口和类之间的区别: ( 1) 类只能继承一个类 , 而对于接口 , 类可以实现多个接口。 ( 2)对于继承性,类继承了父类的方法:子类可以选 择是否覆盖父类的方法。 接口的方法没有实现,因此,类必须实现接口中的每个方法。 形式如下: [修饰符 ]interface接口名 [extends] [接口序列 ] 一个最简单的接口说明: public interface Cookable extends Foodable,Printable 接口体 例 411 接口说明 interface Countable { final int MALMUM=50。 void incrementCount()。 void decrementCount()。 int currentCount()。 int setcount(int newcount). } 在接口中成员变量声明的形式如下: [修饰符 ] 类型名 变量名; 例如: 在接口中 , 下面这行代码: int STEP=5。 等同于: public static final int STEP=5。 接口中说明的方法都是抽象方法 , 其声明的形式为: [修饰符 ] 方法返回值类型 方法名 ( 参数列表 ) ; 例 412 抽象方法说明 int increment(int x); 实现接口的类的声明形式如下: [类修饰符 ] class类名 [extends子句 ] [ implements 子句 ] 其中 , implements子句的形式如下: implements 接口名列表 例 413 接口的使用 public class MySample implements MyInterface { void display()。 {(“ Display!”)。 } } public interface MyInterface { void display()。 } 包 包说明格式如下: package包名 例 414 包说明 package SamplePackage public class Class1 { …… } public class Class2 { …… } public class Class3 { …… } 在 Java中 ,包采用如下的层次结构: 子包 类文件和接口文件 以下是一个 Windows 环境变量的例子: CLASSPATH=C:\JDK\lib。 C:\JDK\src。 包的使用 例 415 包的使用 现在对程序做一些修理改 , 改正后的程序如下: Java包 Java自带了一些包。 这些包以 “ java.”开头 , 作为 java 的一个标准部分发布的。 单向链表 单向链表的概念 图为整数链表 : 3 . 7 . 9 . 3 / head 单向链结点类描述 单向链结点类描述如下: 建立只有一个元素的单向链表 如图: 栈式链表如图: head / head 1 2 1 N1 N head 队式链表 如图: 1 2 H P 1 head 2 finger N 单向链表中插入或删除一个结点 如图 , 左栏为插入结点 , 右拦为删除结点 单向链表类 队 queen 栈 小结 本章主要介绍如何定义和使用类 , 类是构造面向对象程序的基本单位。 类的使用主要表现为以下两方面:一是通过类创建和使用类的对象;二是用一个类去定义另一个类 , 即类的继承与引用 , 而多态性则为类的使用提供了更大的灵活性。 应注意区分类与对象这两种个基本概念。 而类是抽取了同类对象的共同属性和行为形成的对象或实体的 “ 模版 ” , 类是静态概念。 对象是现实世界中实体的描述 ,对象要创建才存在。 有了对象才能对对象进行操作 ,不再使用的对象由系统撤消。 接口是面向对象的一个重要思想 , 利用接口使设计与实现分离 , 使利用接口的用户程序不受不同接口实现的影响 , 不受接口实现改变的影响。 接口在 Java中还起着另一个非常重要的作用 , 弥补 Java只支持单继承的不足 , 它用来完成多继承的一些功能。 Java接口反映了对象分析中较高层次的抽象 , 为描述相互似乎没有关系的对象的共性提供的一种有效的手段。 包是为了解决一个大的问题 、 设计较大规模的程序而引入的概念。 使用包可以提供一定的访问控制。 类 、 方法缺省访问权限就是可以在它所属的包中被访问。 说明为 public的类 、 方法才可以在其他它包中被访问。 如果类和方法被说明为 protected, 则其他它包中只有它的子类才可以访问它们。 本章最后描述了单向链结点类 、 单向链类 、 队类和栈类 , 这些是。 第 5章 异常处理 异常类的层次 throws抛出异常 throw抛出异常 trycatch异常处理 正确地使用异常 小结 习题 异常类的层次 异常类的层次结构如图 51所示 : O bject T hrowabl e E rr or E xc ep t i on R un t i m eE xc ep t i on I O E xc ep t i on O bject 图 5 1 异常类的层次结构 throws抛出异常 throws异常说明形式如下: 方法说明 [ throws 异常类列表 ] 例 51 throws抛出一个异常 class Test {…… public String getInput() throws IOException; // throws一个异常 {…… } } 例 52 throws多个异常 class Animation { // throws多个异常 public Image loadImage(String s) throws EOFException ,MalformURLException { …… } } throw抛出异常 throw语句的形式为: throw 异常类的实例。 例 53 可以看出 , 抛出异常有这样三步: ( 1) 确定异常类; ( 2) 创建异常类的实例; ( 3) 抛出异常。 trycatch异常处理 try… catch语句形式如下: try { 语句; //说明抛出异常的部位 , 该部位含有抛出异常的语句 , 如调用抛出异常的方法。 } catch ( 异常类 1 变量名 ) //按抛出的异常类进行捕获 , 并加处理 { catch 处理 } catch ( 异常类 2 变量名 ) //按抛出的异常类进行捕获 , 并加处理 { catch 处理 }。22236java程序设计
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。
用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。