网站大量收购闲置独家精品文档,联系QQ:2885784924

《java语言程序设计》第五章.ppt

  1. 1、本文档共57页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《java语言程序设计》第五章

第5章 接口与多态;目录;5.1 接口;接口的语法 声明格式为 interface 接口名称 { …//属性常量 …//抽象方法 };声明一个接口Shape2D,实现类为Circle和Rectangle 把计算面积的方法声明在接口里 pi值是常量,把它声明在接口的数据成员里 interface Shape2D{    //声明Shape2D接口 final double pi=3.14;   //数据成员一定要初始化 public abstract double area(); //抽象方法 } 在接口的声明中,允许省略一些关键字,也可声明如下(,省略抽象) interface Shape2D{ double pi=3.14; //省略常量的final修饰 double area(); //省略抽象方法的public abstract修饰 };5.1.2 实现接口;5.1.2 实现接口 ——例5_4;测试类 public class InterfaceTester { public static void main(String args[]){ Rectangle rect=new Rectangle(5,6); System.out.println(Area of rect = + rect.area()); Circle cir=new Circle(2.0); System.out.println(Area of cir = + cir.area()); } } 运行结果 Area of rect = 30.0 Area of cir = 12.56;声明接口类型的变量,并用它来访问对象 public class VariableTester { public static void main(String []args) { Shape2D var1,var2; var1=new Rectangle(5,6); //矩形对象自动转化为接口对象 System.out.println(Area of var1 = + var1.area()); var2=new Circle(2.0); //圆对象自动转化为接口对象 System.out.println(Area of var2 = + var2.area()); } } 输出结果 Area of var1 = 30.0 Area of var2 = 12.56 ;5.1.3 接口的作用;保险公司的例子(不相关类) 具有车辆保险、人员保险、公司保险等多种保险业务,在对外提供服务方面具有相似性,如都需要计算保险费(premium)等,因此可声明一个Insurable 接口 在UML图中,实现接口用带有空三角形的虚线表示;5.1.3 接口的作用--多重继承;声明Circle类实现接口Shape2D和Color Shape2D具有pi与area()方法,用来计算面积 Color则具有setColor方法,可用来赋值颜色 通过实现这两个接口,Circle类得以同时拥有这两个接口的成员,达到了多重继承的目的 interface Shape2D{ //声明Shape2D接口 final double pi=3.14; //数据成员一定要初始化 public abstract double area(); //抽象方法 } interface Color{ void setColor(String str); //抽象方法 } ;class Circle implements Shape2D,Color // 实现Circle类 { double radius; String color; public Circle(double r) //构造方法 { radius=r; } public double area() //定义area()的处理方式 { return (pi*radius*radius); } public void setColor(String str) //定义setColor()的处理方式 { color=str; System.out.println(color=+color); } };测试类

文档评论(0)

jdy261842 + 关注
实名认证
内容提供者

分享好文档!

1亿VIP精品文档

相关文档