AvA 线回 辽宁经济职业技术学院信息系 硕士、副教授陈英 JAVA
接 口 辽宁经济职业技术学院信息系 硕士、副教授 陈英
AvA 对象的意义 o在java语言中,对象就是对一组变量和 相关方法的封装,其中变量表明了对象 的状态,方法表明对象具有的行为。 通过对对象的封装,使用户不必关心对 象行为的实现细节,只要了解通过给定 的接口与对象进行交互就可以了。 ○通过对象封装,实现了模块化和信息隐 藏,有利于程序的可移植性和信息隐藏, 同时也有利于对象的管理。 JAVA
对象的意义 在java语言中,对象就是对一组变量和 相关方法的封装,其中变量表明了对象 的状态,方法表明对象具有的行为。 通过对对象的封装,使用户不必关心对 象行为的实现细节,只要了解通过给定 的接口与对象进行交互就可以了。 通过对象封装,实现了模块化和信息隐 藏,有利于程序的可移植性和信息隐藏, 同时也有利于对象的管理
AvA 多性的意改 类的继承并不只是类的重复使用,即把它们作为基础 来定义新的类。因为它还可以为应用程序的开发带来 极大的灵活性,这是通过多态性的机制来实现的。 在java语言中,多态性指的是一个特定类型的变量可 以用于引用不同类型的对象,并且自动调用该变量引 用的特定类型对象的方法。这样就使得一个方法的调 用根据该调用作用到的对象类型而出现不同的操作行 为。 ,, 多态性表现在派生的类对象身上。它必须在一个类的 层次结构中才可以实现新的功能。 了在 该方法是基础类的一个成员,同时也是任何相关子 的成员。 JAVA
多态性的意义 类的继承并不只是类的重复使用,即把它们作为基础 来定义新的类。因为它还可以为应用程序的开发带来 极大的灵活性,这是通过多态性的机制来实现的。 在java语言中,多态性指的是一个特定类型的变量可 以用于引用不同类型的对象,并且自动调用该变量引 用的特定类型对象的方法。这样就使得一个方法的调 用根据该调用作用到的对象类型而出现不同的操作行 为。 多态性表现在派生的类对象身上。它必须在一个类的 层次结构中才可以实现新的功能。 为了在调用一个方法的时候获得多态性操作,必须使 该方法是基础类的一个成员,同时也是任何相关子类 的成员
AvA 使用多性的机制 子类对象的方法调用必须通过一个超类 的变量进行。 ○这个方法调用必须也是超类的一个成员。 子类的方法特征必须与超类相同。 ○子类方法的返回值必须与超类中的相同。 在子类中的方法访问限定符不能比超类 中的更严格。 注意:多态性只应用于方法,它不会用 于数据成员。 JAVA
使用多态性的机制 子类对象的方法调用必须通过一个超类 的变量进行。 这个方法调用必须也是超类的一个成员。 子类的方法特征必须与超类相同。 子类方法的返回值必须与超类中的相同。 在子类中的方法访问限定符不能比超类 中的更严格。 注意:多态性只应用于方法,它不会用 于数据成员
AvA 对象的转型 可以把一个对象转型为另一种类型,但是只能 在当前对象类型和新的类型位于相同派生类层 次结构中的时候进行,并且其中一个是另一个 的超类。 当执行具有多态性的方法时,会把对象存储在 种基本类型的变量中,并且在一个子类中调 用该方法。这时一般都要涉及到把子类对象转 型为基本类 ○另一个原因是可能想在类层次结构中向上转型 以便把多种可能出现的子类对象传递到一个方 法。通过指定一个超类作为类型的形式参数 可以灵活地把任何派生出来的类对象作为数 JAVA
对象的转型 可以把一个对象转型为另一种类型,但是只能 在当前对象类型和新的类型位于相同派生类层 次结构中的时候进行,并且其中一个是另一个 的超类。 当执行具有多态性的方法时,会把对象存储在 一种基本类型的变量中,并且在一个子类中调 用该方法。这时一般都要涉及到把子类对象转 型为基本类。 另一个原因是可能想在类层次结构中向上转型, 以便把多种可能出现的子类对象传递到一个方 法。通过指定一个超类作为类型的形式参数, 可以灵活地把任何派生出来的类对象作为参数 传递过来
接口的旒念 AvA 在 Person类派生得到的类中,有一个普通的 getDescriptionO方法在每个子类中分别实现。 各类中方法特征相同,并且这个方法可以接受 多态方式的调用。 当你希望一组方法能在多个不同的类中实现, 以便你能够多态地调用它们的时候,你就可以 省去基础类 通过使用java的一种接口( Interface)机制能更方 便地实现这种最终结果。接口表明了它的主要 用途,就是指定一组方法表示一个特定的类接 使创新可以在许多不同的类中分别实现 这样所有相关的类都可以共享这个普通的接 yp并且其中的方法可以被多态调用
接口的概念 在Person类派生得到的类中,有一个普通的 getDescription()方法在每个子类中分别实现。 各类中方法特征相同,并且这个方法可以接受 多态方式的调用。 当你希望一组方法能在多个不同的类中实现, 以便你能够多态地调用它们的时候,你就可以 省去基础类。 通过使用java的一种接口(interface)机制能更方 便地实现这种最终结果。接口表明了它的主要 用途,就是指定一组方法表示一个特定的类接 口,使创新可以在许多不同的类中分别实现。 这样所有相关的类都可以共享这个普通的接口, 并且其中的方法可以被多态调用
接口的旒念 AvA 在ava语言中,一个接口不是一个类,而是对符 合需求的类型一套规范。 接口是抽象类的变体。它实际上就是一组常量和 抽象方法。接口永远不能有实例字段,并且在接 口中方法不会被实现。 接口中的所有方法都是抽象的,没有一个有程序 体 o接口中的方法总是pubc和 abstract型的;接口 中的常量总是 public、 static和fna型的。 ○接口的好处是,它给出了屈从于Jav技术单继 规则的假象。当类定义只能扩展出单个类时 能实现所需的多个接口。 JAVA
接口的概念 在java语言中,一个接口不是一个类,而是对符 合需求的类型一套规范。 接口是抽象类的变体。它实际上就是一组常量和 抽象方法。接口永远不能有实例字段,并且在接 口中方法不会被实现。 接口中的所有方法都是抽象的,没有一个有程序 体。 接口中的方法总是public和abstract型的;接口 中的常量总是public、static和final型的。 接口的好处是,它给出了屈从于Java技术单继承 规则的假象。当类定义只能扩展出单个类时,它 能实现所需的多个接口
接口的定义与实 AvA 下例表示一个简单的接口和实现它的一个类 interface Sayhello i 如果你的类 符合一个特 void printmessage0: 定接口,那 ()我将执行服 务 class sayhellolmpl implements sayhello void printmessage( i System.out println hello interface SayHello强制规定,实现它的所有的 类必须有一个称做 printMessage的方法,该方法 带有一个void返回类型且没有输入参数。 JAVA
接口的定义与实现 下例表示一个简单的接口和实现它的一个类: interface SayHello { void printMessage(); } class SayHelloImpl implements SayHello { void printMessage() { System.out.println("Hello"); } } 如果你的类 符合一个特 定接口,那 我将执行服 务。 interface SayHello强制规定,实现它的所有的 类必须有一个称做printMessage的方法,该方法 带有一个void返回类型且没有输入参数
实现接 AvA 若要一个类实现一个接口,需要采取下面 两个步骤: 1)声明类需要实现指定接口 2)提供接口中所有方法的定义。 接口的实现与子类相似,除了该实现类不 能从接口定义中继承行为。当类实现特殊 接口时,它定义(即,将程序体给予)所 有这种接口的方法。然后,它可以在实现 了该接口的类的任何对象上调用接口的方 法。由于有抽象类,它允许使用接口名作 为引用变量的类型 JAVA
实现接口 若要一个类实现一个接口,需要采取下面 两个步骤: 1) 声明类需要实现指定接口。 2) 提供接口中所有方法的定义。 接口的实现与子类相似,除了该实现类不 能从接口定义中继承行为。当类实现特殊 接口时,它定义(即,将程序体给予)所 有这种接口的方法。然后,它可以在实现 了该接口的类的任何对象上调用接口的方 法。由于有抽象类,它允许使用接口名作 为引用变量的类型
实现接 AvA ○声明一个类实现一个接口需要使用 implements关 键字。 B class Employee implements Comparable 提供实例字段和方法实现是实现接口类的任务 为了使用一个接口,你可以在类中实现这个接口, 也就是声明一个类实现相应的接口,并且为接口 声明的每个方法编写代码,作为类定义的一部分 当一个类实现一个接口的时候,我们在接口中定 义的任何常量都可以直接在类中使用,就像它们 是由一个基础类继承而来的一样。 JAVA
实现接口 声明一个类实现一个接口需要使用implements关 键字。 例:class Employee implements Comparable 提供实例字段和方法实现是实现接口类的任务。 为了使用一个接口,你可以在类中实现这个接口, 也就是声明一个类实现相应的接口,并且为接口 声明的每个方法编写代码,作为类定义的一部分。 当一个类实现一个接口的时候,我们在接口中定 义的任何常量都可以直接在类中使用,就像它们 是由一个基础类继承而来的一样