Java程序设计教程(第三版) 上机实训5 类的继承与多态 参考答案.docx

Java程序设计教程(第三版) 上机实训5 类的继承与多态 参考答案.docx

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

PAGE13

实训1

?//Main.java(主程序文件)

package?practice5_1;

import?java.util.*;

public?class?Main?{

????public?static?void?main(String[]?args)?{

????????double?a?=?0,b?=?0,c?=?0;

????????System.out.println(请输入三角形三边(格式为a?b?c):);

????????Scanner?scan?=?new?Scanner(System.in);

????????//使用scanner方法获取输入的三边并赋值给abc

????????a?=?scan.nextDouble();

????????b?=?scan.nextDouble();

????????c?=?scan.nextDouble();

????????

????????Trangle?t1?=?new?Trangle(a,?b,?c);

????????System.out.println(图形为:?+?t1.name);

????????System.out.println(面积为:?+?t1.Area());

????????System.out.println();

????????

????????Circle?c1?=?new?Circle(2);

????????System.out.println(图形为:?+?c1.name);

????????System.out.println(面积为:?+?c1.Area());

????????System.out.println();

????????

????????Rectangle?r1?=?new?Rectangle(2,3);

????????System.out.println(图形为:?+?r1.name);

????????System.out.println(面积为:?+?r1.Area());

????????scan.close();

????}

}

//Shape.java

package?practice5_1;

public?abstract?class?Shape{????//定义一个抽象类Shape

????String?name;????//成员有图形名称

????

????public?Shape(String?name)?{?//构造方法,给图形名赋值

????????super();

????????this.name?=?name;???//给图形名赋值

????}

????

????public?abstract?double?Area();??//求面积的抽象方法Area()

}

//Trangle.java

package?practice5_1;

public?class?Trangle?extends?Shape{?//利用继承产生子类Trangle(三角形)

????double?a,b,c;???????//声明三边

????boolean?T?=?false;??//声明一个布尔类用于判断三角形是否成三边

????

????public?Trangle(double?a,double?b,double?c)?{????//构造方法,对各属性赋初值

????????super(Trangle);???//将图形名传递到父类给name赋值

????????this.a?=?a;?????//将a边长赋值给a

????????this.b?=?b;?????//将b边长赋值给b

????????this.c?=?c;?????//将c边长赋值给c

????????pd();???????????//调用pd()方法来判断三角形是否成立

????}

????

????public?void?pd()?{??????//写一个判断方法用于判断abc三边是否能构成三角形

????????if((a+bc)??(a+cb)??(b+ca))?{???//利用两边和大于等于第三边判断三角形是否成立

????????????T?=?true;???//成立即视为三角形,T记true

????????}else?{

????????????T?=?false;

????????}

????}

????

????public?double?Area()?{??????//重写父类的抽象方法Area()来计算图形的面积//返回计算过后的面积

????????if(T)?{?????//三角形成立时进行面积计算

????????????double?p?=?(?a?+?b?+?c?)

文档评论(0)

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

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

1亿VIP精品文档

相关文档