Java程序设计项目教程 教学课件 作者 郭庚麒 周江_ 07章 接口和包.pptx

Java程序设计项目教程 教学课件 作者 郭庚麒 周江_ 07章 接口和包.pptx

ID:52769856

大小:138.35 KB

页数:29页

时间:2020-03-07

Java程序设计项目教程 教学课件 作者 郭庚麒 周江_ 07章 接口和包.pptx_第1页
Java程序设计项目教程 教学课件 作者 郭庚麒 周江_ 07章 接口和包.pptx_第2页
Java程序设计项目教程 教学课件 作者 郭庚麒 周江_ 07章 接口和包.pptx_第3页
Java程序设计项目教程 教学课件 作者 郭庚麒 周江_ 07章 接口和包.pptx_第4页
Java程序设计项目教程 教学课件 作者 郭庚麒 周江_ 07章 接口和包.pptx_第5页
资源描述:

《Java程序设计项目教程 教学课件 作者 郭庚麒 周江_ 07章 接口和包.pptx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第7章接口和包【学习目标】Java实现多继承的方式是通过接口,另外,为了达到更好的封装效果,java引入了包的概念,所以读者在学习本章内容后,应该达到以下目标:了解抽象方法和抽象类的原理,并用抽象类实现子类对父类的继承;了解接口的原理,并接口和继承性实现多继承;了解包的原理,和访问控制权限的使用,更好的理解封装性。7.1抽象方法和抽象类7.1.1抽象类abstractclass类名称{成员变量;方法(){//定义一般方法方法体};abstract方法();//定义抽象方法}抽象类有三个最重要的特点:(1)抽象类体中,可以包含抽象方法,也可以不包含抽象方法。但类体中

2、包含抽象方法的类必须要声明为抽象类。(2)抽象类不能被实例化,即使抽象类中没有抽象方法,也不能被实例化。(3)抽象类的子类只有在覆盖父类的每一个抽象方法后,才能创建子类对象。否则,子类也必须声明为抽象类,也不能被实例化。【任务7-1】用抽象类实现多个形状求面积(一)任务描述任意二维形状area方法(空)矩形圆三角形area方法(求矩形面积)area方法(求圆面积)area方法(求三角形面积)publicabstractclassShape{publicabstractdoublearea();//求面积的抽象方法}publicclassCircleextendsS

3、hape{intr;//半径Circle(intaR){this.r=aR;}//覆盖父类的抽象方法publicdoublearea(){return3.14*r*r;}}publicclassRectangleextendsShape{intx,y;//矩形的底边和高Rectangle(inta,intb){this.x=a;this.y=b;}publicdoublearea(){returnx*y;}}publicclassTriangleextendsShape{ints,h;//三角形的底边和高Triangle(inta,intb){this.s=a;t

4、his.h=b;}publicdoublearea(){return0.5*s*h;}}publicclasstestShapes{publicstaticvoidmain(String[]args){Circlec1=newCircle(5);//产生一个半径为5的圆Trianglet1=newTriangle(2,3);//产生一个底边为2,高为3的三角形Rectangler1=newRectangle(2,4);//产生一个边长为2和4的矩形System.out.println("圆面积为"+c1.area());System.out.println("三角

5、形面积为"+t1.area());System.out.println("矩形面积为"+r1.area());doubletotalArea=c1.area()+t1.area()+r1.area();System.out.println("总面积为"+totalArea);}}圆面积为78.5三角形面积为3.0矩形面积为8.0总面积为89.57.1.2用抽象类实现运行时多态抽象类提供了方法声明与方法实现相分离的机制,使各子类表现出共同的行为模式。抽象方法在不同的子类中表现出多态性。【任务7-2】用数组存储各种形状并求面积publicclasstestShapes

6、1{publicstaticvoidmain(Stringargs[]){Shape[]shapes=newShape[5];shapes[0]=newCircle(1);shapes[1]=newCircle(2);shapes[2]=newRectangle(2,3);shapes[3]=newTriangle(3,5);shapes[4]=newTriangle(6,5);doubletotalArea=0;for(inti=0;i<=4;i++){totalArea=totalArea+shapes[i].area();System.out.println

7、("第"+i+"个形状面积为"+shapes[i].area());}System.out.println("面积总和为"+totalArea);}}第0个形状面积为3.14第1个形状面积为12.56第2个形状面积为6.0第3个形状面积为7.5第4个形状面积为15.0面积总和为44.27.2接口Java中类的定义并不支持多重继承,但它通过接口机制可以实现多重继承的功能。一个类可以实现多个接口,使得接口提供了比多重继承更简单但更强大的功能。7.2.1接口的定义说明:(1)在上面的接口声明中,public表明任意类都可以使用该接口,如果没有public限定词修饰,就只

8、有与该接口

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。