构造方法的继承 2. 在构造方法中super关键字的使用super是表示父类对象的关键字,super表示当前对象的直接父类对象的一个引用,通过super可使用父类对象的方法或域。 Fixed_Telephone( ) { } //无参数的构造方法 Fixed_Telephone (long pn) { phoneNumber = pn; //初始化电话号码 } Fixed_ Telephone (long pn, double mf ) { phoneNumber = pn; monthFee = mf; //初始化座机费 } Fixed_Telephone(long pn, double mf, double b) { phoneNumber = pn; monthFee = mf; balance= b; //初始化电话费的剩余金额 } * 构造方法的继承 设计子类的构造方法可选择如下方式: (1)仅调用父类的无参数构造方法。 (2)定义自己的一个(或多个)构造方法,并调用父类的带参数的构造方法。 * Fixed_Telephone( ) { } //无参数的构造方法 Fixed_Telephone (long pn) { phoneNumber = pn; //初始化电话号码 } Fixed_ Telephone (long pn, double mf ) { phoneNumber = pn; monthFee = mf; //初始化座机费 } Fixed_Telephone(long pn, double mf, double b) { phoneNumber = pn; monthFee = mf; balance= b; //初始化电话费的剩余金额 } Ordinary_phone (long pn , double mf , boolean ds) { super (pn, mf); longdistanceService = ds; } Ordinary_phone(long pn , double mf , double b , boolean ds){ super (pn ,mf, b); //调用父类三个参数的构造方法为继承的域赋初值 longdistanceService = ds ; //用参数初始化自定义域 } 接口 接口(interface)也有人翻译为界面,是用来实现类间多重继承功能的一种结构。 接口是在语法上与类有些相似。它定义了若干个抽象方法和常量,形成一个属性集合,该属性集合通常对应了某一组功能。 凡是需要实现这种特定功能的类,都可以继承并使用它。一个类只能直接继承一个父类,但可以同时实现若干个接口。实现(或继承)接口实际上就获得了多个特殊父类的属性,即实现了多重继承。 所谓多重继承,是指一个子类可以有一个以上的直接父类,该子类可以继承它所有父类的属性。 * 接口与多继承 接口定义的仅仅是实现某一特定功能的一组对外的协议和规范,而并没有真正地实现这个功能。这些功能的真正实现是在继承这个接口的各个类中完成的。 因为接口包含的是未实现的一些抽象的方法,它与抽象类有些相象。它们之间存在以下的区别: 接口不能有任何实现了的方法,而抽象类可以。 类可以继承(实现)许多接口,但只能继承一个父类。 类有严格的层次结构,而接口没有层次结构,没有联系的类可以实现相同的接口。 * 接口的定义 接口是由常量和抽象方法组成的特殊类。接口的定义包括两个部分:接口声明和接口体。声明接口一般格式如下: [public] interface 接口名 [extends 父接口名表 ] { 域类型 域名=常量值; //常量域声明 返回值 方法名(参数表); //抽象方法声明 } 接口声明中有两个部分是必需的:interface关键字和接口的名字。用public修饰的接口是公共接口,可以被所有的类和接口使用;没有public修饰符的接口则只能被同一个包中的其他类和接口利用。 * 接口的实现 定义接口是为了让某些类实现它。 类实现某个接口,要在类的声明中要包括一条implements语句,并提供在接口中定义的所有抽象方法的具体实现。 一个类可以实现多个接口,可以在implements后面列出要实现的多个接口,这些接口以逗号分隔。 public class StockApplet extends Applet implements StockWatcher{ publ
原创力文档

文档评论(0)