Java程序设计第6章节幻灯片.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
PPT研究院 POWERPOINT ACADEMY * * * * * * 6.3 抽象类及抽象方法 例6-5在主类Test中使用了抽象类数组引用变量,其中第0个元素引用到Circle对象,第1个元素引用到了Cylinder对象,这在Java中是允许的,即允许父类引用变量引用到子类对象。 若B是A的子类,则语句 A a=new B(); 是合法的。 6.4 final类及final成员 final关键字可以修饰类、成员变量和成员方法及方法中的参数。 在类定义前加上final,成为最终类. 如: final class A { //final类 … } 在方法定义前加上final,成为最终方法 。 例如: class B {int a; final void print(int x){ //final 方法 System.out.println(x); } … } 6.4 final类及final成员 父类中定义的最终方法就不能被子类覆盖。 例: class Base{ final int x=1; final void print(int y ){ // 父类中的final方法,不允许被子类覆盖 System.out.println(x+y); } } class Derived extends Base { void print(int y ){ //错误,对父类中的final方法进行覆盖 System.out.println(2*x+y); } } 6.4 final类及final成员 用final修饰的变量称为最终变量(常量)。在实例变量、局部变量和方法的形参定义之前加上final,那么这个变量值只能被引用,而不能被修改。final修饰的局部变量和实例变量必须给出初值,因为它修饰的变量代表一个常量。 6.4 final类及final成员 综上所述, 如果一个类被修饰为final类,则它不能被继承,即不能有子类; 如果一个方法被修饰为final方法,则这个方法不能被覆盖; 如果一个成员变量被修饰为final变量,定义时必须赋给初值,同时值不会再发生变化; 如果方法的参数被修饰为final参数,该参数的值不能被修改。 6.5.1 接口的定义 6.5 接口 定义一个接口的语法格式: [public] interface 接口名 [extends 父接口列表] { 最终变量声明; 抽象方法声明; } interface Printable //接口Printable { final int MAX=100; //最终变量声明 void add(); //抽象方法声明 float sum(float x ,float y); //抽象方法声明 } 例: 接口和抽象类的相同点有: (1)都包含抽象方法,都必须在非抽象子类中实现这些方法。 (2)都可以通过继承机制创建子类。 (3)都可以具有public属性。 (4)都不能用new关键字来创建这两种类型的对象。 接口和抽象类的不同点有: (1)在抽象类中,抽象方法必须加abstract关键字,而在接口中不需要。 (2)在抽象类中,除抽象方法外,可以定义实例变量和非抽象方法,而在接口中,只能定义最终变量和抽象方法。 (3)接口允许多继承,抽象类仅支持单继承。 6.5 接口 6.5.2 实现接口 6.5 接口 实现接口时类的声明格式为: [修饰符] class 类名 [extends 父类名] implements 接口名1 [,接口名2……] { 类体 } interface inter { // 接口inter void methodA( ); } abstract class Derived1 implements inter { } 例如: class Derived2 extends Derived1{ public void met

文档评论(0)

带头大哥 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档