欢迎来到天天文库
浏览记录
ID:39969063
大小:341.50 KB
页数:33页
时间:2019-07-16
《java课程第七章接口和包》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、方法的含义举例:水仙花的例子publicclassUseShuiXianHua{staticbooleanshuixianhua(inti){//……}publicstaticvoidmain(String[]args){for(inti=100;i<=999;i++){if(shuixianhua(i))System.out.println(i+"是一个水仙花");}}}publicclassUseShuiXianHua{staticbooleanshuixianhua(inti){intx=i/10
2、0;//百位inty=(i%100)/10;//十位intz=i%10;//个位if(x*x*x+y*y*y+z*z*z==i){returntrue;}else{returnfalse;}}publicstaticvoidmain(String[]args){for(inti=100;i<=999;i++){if(shuixianhua(i))System.out.println(i+"是一个水仙花");}}}第7章接口和包Java实例——抽象类假设有若干个Circle,以及若干个Rectangle,
3、希望计算它们的总面积,直截了当的做法是将它们分别放到两个数组中,用两个循环,加上一个加法,但这种做法是不漂亮的如果还有其它形状,triangle,ellipses等,上述方法显得“累赘”,我们希望有一种统一的表示,例如用一个数组shape[],接受所有的形状,然后用for(i=0;i4、法说明,没有方法体),抽象类的子类必须完成父类定义的每一个抽象方法,除非该子类也是抽象类。它的主要用途是用来描述概念性的内容,这样可以提高开发效率,更好地统一用户“接口”。定义抽象类abstractclass类名称{成员变量;方法(){};//定义一般方法abstract方法();//定义抽象方法}说明:抽象类中可以包含有一般方法,也可以包含有抽象方法;对于抽象方法不用完成其代码实现,而在派生的子类中实现所有抽象方法。该方法没有{},即没有方法体publicclassCircleextendsShape5、{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;}}publicabstractclassShape{publicabstractdoublearea();6、//求面积的抽象方法}【例子7-1】publicclassTriangleextendsShape{ints,h;//三角形的底边和高Triangle(inta,intb){this.s=a;this.h=b;}publicdoublearea(){return0.5*s*h;}}【例子7-1】publicclasstestShapes{publicstaticvoidmain(String[]args){Circlec1=newCircle(5);//产生一个半径为5的圆Trianglet1=newT7、riangle(2,3);//产生一个底边为2,高为3的三角形Rectangler1=newRectangle(2,4);//产生一个边长为2和4的矩形System.out.println("圆面积为"+c1.area());System.out.println("三角形面积为"+t1.area());System.out.println("矩形面积为"+r1.area());doubletotalArea=c1.area()+t1.area()+r1.area();System.out.println8、("总面积为"+totalArea);}}圆面积为78.5三角形面积为3.0矩形面积为8.0总面积为89.5输出【例子7-1】publicclasstestShapes1{publicstaticvoidmain(Stringargs[]){Shape[]shapes=newShape[5];shapes[0]=newCircle(1);shapes[1]=newCircle(2);shapes[2]=newRectangle(2,3);s
4、法说明,没有方法体),抽象类的子类必须完成父类定义的每一个抽象方法,除非该子类也是抽象类。它的主要用途是用来描述概念性的内容,这样可以提高开发效率,更好地统一用户“接口”。定义抽象类abstractclass类名称{成员变量;方法(){};//定义一般方法abstract方法();//定义抽象方法}说明:抽象类中可以包含有一般方法,也可以包含有抽象方法;对于抽象方法不用完成其代码实现,而在派生的子类中实现所有抽象方法。该方法没有{},即没有方法体publicclassCircleextendsShape
5、{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;}}publicabstractclassShape{publicabstractdoublearea();
6、//求面积的抽象方法}【例子7-1】publicclassTriangleextendsShape{ints,h;//三角形的底边和高Triangle(inta,intb){this.s=a;this.h=b;}publicdoublearea(){return0.5*s*h;}}【例子7-1】publicclasstestShapes{publicstaticvoidmain(String[]args){Circlec1=newCircle(5);//产生一个半径为5的圆Trianglet1=newT
7、riangle(2,3);//产生一个底边为2,高为3的三角形Rectangler1=newRectangle(2,4);//产生一个边长为2和4的矩形System.out.println("圆面积为"+c1.area());System.out.println("三角形面积为"+t1.area());System.out.println("矩形面积为"+r1.area());doubletotalArea=c1.area()+t1.area()+r1.area();System.out.println
8、("总面积为"+totalArea);}}圆面积为78.5三角形面积为3.0矩形面积为8.0总面积为89.5输出【例子7-1】publicclasstestShapes1{publicstaticvoidmain(Stringargs[]){Shape[]shapes=newShape[5];shapes[0]=newCircle(1);shapes[1]=newCircle(2);shapes[2]=newRectangle(2,3);s
此文档下载收益归作者所有