Java:实验四第6题
问题:
设计一个程序,其中含有一个接口Shape(形状),其中有求形状的面积的方法area()。再定义三个实现接口的类:三角型类、矩形类和圆类。在主方法中创建Shape类型的一维数组,它有三个元素,放置三个对象,分别表示三角形、矩形和圆,然后利用循环输出三个图形的面积。
( 注:三角形面积s=Math.sqrt(p*(p-a)*(p-b)*(p-c)),a,b,c为三条边,p=(a+b+c)/2 )
代码:
(1)接口Shape:定义了求形状面积的方法getArea()
package com.company;import java.util.Scanner;interface Shape
{public abstract double getArea(double a,double b);
}
(2) 三角形类、长方形类、圆类都继承接口Shape,实现了接口的getArea()方法
class Triangle implements Shape{private double p;public double getArea(double a,double b,double c){p=(a+b+c)/2;return Math.sqrt(p*(p-a)*(p-b)*(p-c));}
}
class Rectangle implements Shape{public double getArea(double a,double b,double c){return a*b;}
}
class Circle implements Shape{public double getArea(double a,double b,double c){return a*a*Math.PI;}
}
(3)在主方法中获取三角形的三个边a、b、c(其中长方形的边为a、b,圆的半径为a),然后创建Shape类型的一维数组s,它有三个元素,放置三个对象,分别表示三角形、矩形和圆,然后利用for循环输出三个图形的面积。
public class Main {public static void main(String[] args) {Scanner input=new Scanner(System.in);double a=input.nextDouble();double b=input.nextDouble();double c=input.nextDouble();Shape [] s=new Shape[3];s[0]=new Triangle();s[1]=new Rectangle();s[2]=new Circle();s[0].getArea(a, b,c);for (int i=0;i<3;i++){System.out.println(s[i].getArea(a,b,c));}}
}
运行结果:
Java:实验四第6题相关推荐
- Java实验四,星号题最终版(暂定。。。也许还能找到问题)
实验四 1. 第一版使用wait.notifyAll.synchronized ,可以买到票但是排序不行 2. 第二版 第一次使用公平锁.ReentrantLock.Condition,感觉还是没解决 ...
- java实验四云南大学_云南大学软件学院Java实验四
云南大学软件学院Java实验四 云南大学软件学院 实 验 报 告 姓名: 王定欢 学号: 班级: 日期: 2016.10.13 成绩: JAVA实验四 一. 实验目的: Fundamental Pro ...
- java实验四结果,java实验四异常处理.doc
java实验四异常处理.doc 实验四异常处理一.实验目的1.掌握异常的概念和Java异常处理机制.2.掌握异常的定义.抛出和捕捉处理.二.实验内容与要求1.仔细读下面的JAVA语言源程序,自己给出程 ...
- #20165323 Java实验四 Android程序设计
一.实验报告封面 课程:Java程序设计 班级:1653班 姓名:杨金川 学号:20165323 指导教师:娄嘉鹏 实验日期:2018年5月14日 实验时间:13:45 - 15:25 实验序号:实验 ...
- java实验四用户程序设计_20145329《Java程序设计》实验四总结
实验四 Android环境搭建 实验内容 1.搭建Android环境 2.运行Android 3.修改代码,能输出学号 实验步骤 1.搭建Android环境 2.安装Android,核心是配置JDK. ...
- java实验四——找鞍点
package hello;public class 实验四 {public static void main(String[] args) {// TODO Auto-generated metho ...
- java实验四云南大学_云南大学软件学院JAVA实验八
云南大学软件学院 实验报告 姓名:王增伟学号:20111120083 班级:软件工程日期:2014.11.11成绩: JAVA实验八 一.实验目的: 熟悉图形化界面编程,学会用程序画简单的图形.书写文 ...
- Java:实验四第5题
问题: 请仔细阅读下面的程序,分析程序的结构和输出结果.由此理解接口.抽象类.继承.实现接口,进一步理解多态. interface Food { public void doEat();} / ...
- 西农大 Java 实验四 第一题
任务一:界面设计 请设计一个界面,包括:菜单,文本框,按钮,标签,文本区,选择框,单选按钮和下拉列表. package first;import java.awt.BorderLayout; impo ...
最新文章
- 从今天开始收集一些经典的算法。
- 深度 | 人工智能的游戏征途:超级玛丽简直小菜一碟,星际争霸、LOL才是大boss...
- 关于VS2005不能更改字体的问题
- 秋招 百度二轮面试---血淋淋的经历写实
- Gentoo 安装日记 02 (建立并启动虚拟机)
- Regex Tester (免费有用)
- Windows10上安装Git 2.10.2详细图解
- java封装示例代码
- 【codevs1306】广播操的游戏
- 全局异步和主线程异步区别、改变PlaceHolder颜色、解决键盘弹起挡住文本框问题...
- HTML5新的解析顺序,HTML5新表单新功能解析
- GJB 软件质量保证报告(模板)
- 开发国信股票自动交易软件
- HR问:“你为什么离开上一家公司?”,这样回答最机智
- 腾讯云服务器文件怎么恢复吗,实战腾讯云镜像备份恢复云服务器实例提取网站数据文件...
- android 旋转屏幕 不重走生命周期,屏幕旋转后Activity生命周期
- 在Lua中使用枚举型变量
- 2017 12 05
- 宽度优先搜索算法(BFS)详解(超级详细讲解,附有大图)
- 74LS273芯片介绍
热门文章
- 百度Android定位API使用指南
- day33 java的注解
- html 给照片添加圆角属性,CSS3新增属性(背景图、边框背景、圆角)
- idea导入ssm项目_一个简洁的适合 Java 小白练手的“秒杀”项目
- w ndows2000,华塑CAE软件简介
- 推荐系统实战系列(python版).rar_python实战音乐推荐系统
- java 僵尸进程_Linux 僵尸进程
- c语言log_Morn:一个极简的C语言日志
- linux rmp命令安装包在哪里_一文带你了解阿里云Linux服务器的基本操作
- 前端chrome浏览器调试总结??