设计一个类层次,定义一个抽象类--形状(类名:shape)。
其中包括求形状的面积抽象方法(方法名:calArea())。
继承该抽象类定义三角形(Triangle)、矩形(Rectangle)、圆(Circle)并分别存入一个数组中。
将数组中各类图形的面积输出。

Shape:

package com.cdp.shape;

public abstract class Shape {
abstract double calArea();
}

Triangle:

package com.cdp.shape;

public class Triangle extends Shape {
// 属性
private double a, h; // 构造方法
public Triangle(double a, double h) {
this.a = a;
this.h = h;
} @Override
double calArea() {
// TODO Auto-generated method stub
return a * h / 2;
} }

Rectangle:

package com.cdp.shape;

public class Rectangle extends Shape {
private double w, h; public Rectangle(double w, double h) {
this.h = h;
this.w = w;
} @Override
double calArea() {
// TODO Auto-generated method stub
return w * h;
} }

Circle:

package com.cdp.shape;

public class Circle extends Shape {
private double r; public Circle(double r) {
this.r = r;
} @Override
double calArea() {
// TODO Auto-generated method stub
return 3.14 * r * r;
} }

Task测试类:

package com.cdp.shape;

public class Task {

	public static void main(String[] args) {
// TODO Auto-generated method stub
// 定义一个形状数组
Shape[] s = new Shape[3];
// 将三角形、矩形、圆形放入数组中
s[0] = new Triangle(3, 4);
s[1] = new Rectangle(5, 6);
s[2] = new Circle(2); // 输出面积
System.out.println("三角形的面积为" + s[0].calArea());
System.out.println("矩形的面积是:" + s[1].calArea());
System.out.println("圆形的面积是:" + s[2].calArea());
} }

运行结果:

三角形的面积为6.0
矩形的面积是:30.0
圆形的面积是:12.56

Java之简单图形面积计算的更多相关文章

  1. Java入门:绘制简单图形

    在上一节,我们学习了如何使用swing和awt工具创建一个空的窗口,本节学习如何绘制简单图形. 基本绘图介绍 Java中绘制基本图形,可以使用Java类库中的Graphics类,此类位于java.aw ...

  2. 输出简单图形(StringBuilder代替双重循环)

    在有些题目中打印简单图形必须使用StringBuilder或者StringBuffer,否则会运行超时(用String都会超时). 因为在题目的要求中说到输入的n是小于1000的,用双重循环就会超时, ...

  3. 基于《仙剑奇侠传柔情版》利用Java的简单实现(一)

    基于<仙剑奇侠传柔情版>利用Java的简单实现(一) 2018-12-01 23:55:36   by Louis  一,新建一个类GameFrame.class,具体代码如下: pack ...

  4. 学习笔记:HTML5 Canvas绘制简单图形

    HTML5 Canvas绘制简单图形 1.添加Canvas标签,添加id供js操作. <canvas id="mycanvas" height="700" ...

  5. Java实现简单版SVM

    Java实现简单版SVM 近期的图像分类工作要用到latent svm,为了更加深入了解svm,自己动手实现一个简单版的.         之所以说是简单版,由于没实用到拉格朗日,对偶,核函数等等.而 ...

  6. java实现简单的单点登录

    java实现简单的单点登录 摘要:单点登录(SSO)的技术被越来越广泛地运用到各个领域的软件系统当中.本文从业务的角度分析了单点登录的需求和应用领域:从技术本身的角度分析了单点登录技术的内部机制和实现 ...

  7. [ASP.NET] 图形验证码破解-以简单图形为例

    原文 http://www.dotblogs.com.tw/joysdw12/archive/2013/06/08/captcha-cracked.aspx 前言 这次来讲个比较有趣的主题,就是该如何 ...

  8. Java中的图形界面编程

    前言 正文 Java中的图形界面编程 AWT/Swing AWT(Abstract Window ToolKits,抽象窗体工具集) 1.容器类:用来存储组件,实现容器布局 2.组件类:实现界面的一些 ...

  9. Java自定义简单标签

     Java自定义简单标签可以方便的在页面输出信息,并且对于权限的控制,和对于Jsp标签和servlet代码的分离有着很好的作用. 下面将以权限的控制为例自定义一个标签: 一.标签类型 <wxt: ...

随机推荐

  1. grunt入门之grunt watch的使用

    watch几乎是grunt必不可少的应用,一旦配置好watch,保存文件后将立即执行命令 安装方式如下: npm install grunt-contrib-watch --save-dev 安装好以 ...

  2. ProcessBuilder和Runtime远程执行

    http://desert3.iteye.com/blog/1596020 ProcessBuilder.start() 和 Runtime.exec() 方法都被用来创建一个操作系统进程(执行命令行 ...

  3. cdoj 26 遮挡判断(shadow) 水题

    遮挡判断(shadow) Time Limit: 20 Sec  Memory Limit: 256 MB 题目连接 http://acm.uestc.edu.cn/#/problem/show/26 ...

  4. ueditor 编辑器再thinkphp中使用 解决转义问题

    在前台common.php文件中加入下面的函数就可以解决了 <?php //取消thinkphp里面的转义 if (get_magic_quotes_gpc()) { function stri ...

  5. Javascript模块化编程系列三: CommonJS & AMD 模块化规范描述

    CommonJS Module 规范 CommonJS 的模块化规范描述在Modules/1.1.1 中 目前实现此规格的包有: Yabble,CouchDB,Narwhal (0.2), Wakan ...

  6. oc-28-构造函数

    Dog.h #import <Foundation/Foundation.h> @interface Dog : NSObject { NSString *_name; int _age; ...

  7. 了解javascript中的this --实例篇

    对javascript this的赋值有了深一层的理解后,看一下比较复杂的情况,this的应用篇参考<对javascript this的理解>. #demo1 var name=" ...

  8. mysql博客

    http://blog.csdn.net/mchdba/article/details/9190771 本帖最后由 mchdba 于 2014-2-10 17:15 编辑 公司招聘MySQL DBA, ...

  9. Graylog2+mongdb+rsyslog中央日志服务器对syslog的web管理--转载

    原文地址:http://blog.sina.com.cn/s/blog_49be4d570100yvv1.html 1.下载mongodb,可以通过下面2中方法安装. (1)官网下载yum源后直接安装 ...

  10. UBI FAQ and HOWTO

    转:http://www.linux-mtd.infradead.org/faq/ubi.html UBI FAQ and HOWTO Table of contents How do I enabl ...