java用接口、多态、继承、类计算三角形和矩形周长及面积的方法
作者:一羽清宁 发布时间:2021-10-24 22:15:46
标签:java,接口,多态,继承,类
本文实例讲述了java用接口、多态、继承、类计算三角形和矩形周长及面积的方法。分享给大家供大家参考。具体如下:
定义接口规范:
/**
* @author vvv
* @date 2013-8-10 上午08:56:48
*/
package com.duotai;
/**
*
*
*/
public interface Shape {
public double area();
public double longer();
}
/**
* @author vvv
* @date 2013-8-10 上午09:10:06
*/
package com.duotai;
/**
*
*
*/
public class Triangle implements Shape {
double s1;
double s2;
double s3;
// 初始化一个三角形对象,并赋予该三角形三边长
public Triangle(double s1, double s2, double s3) {
if (isTri(s1, s2, s3)) {
this.s1 = s1;
this.s2 = s2;
this.s3 = s3;
} else {
System.out.println("输入的三边长" + s1 + "、" + s2 + "、" + s3
+ "不能组成一个三角形,请重新输入三边长!");
}
}
// 判断是否是个三角形
public boolean isTri(double s1, double s2, double s3) {
if (s1 + s2 < s3) {
return false;
}
if (s1 + s3 < s2) {
return false;
}
if (s2 + s3 < s1) {
return false;
}
return true;
}
/*
* (non-Javadoc)
*
* @see com.duotai.Shape#area()
*/
@Override
public double area() {
double p = (s1 + s2 + s3) / 2;
return Math.sqrt(p * (p - s1) * (p - s2) * (p - s3));
}
/*
* (non-Javadoc)
*
* @see com.duotai.Shape#longer()
*/
@Override
public double longer() {
return s1 + s2 + s3;
}
}
/**
* @author vvv
* @date 2013-8-10 上午09:12:06
*/
package com.duotai;
/**
*
*
*/
public class Director implements Shape {
double s1;
double s2;
// 初始化一个长方形,并赋予该长方形两边长
public Director(double s1, double s2) {
this.s1 = s1;
this.s2 = s2;
}
/*
* (non-Javadoc)
*
* @see com.duotai.Shape#area()
*/
@Override
public double area() {
// TODO Auto-generated method stub
return s1 * s2;
}
/*
* (non-Javadoc)
*
* @see com.duotai.Shape#longer()
*/
@Override
public double longer() {
// TODO Auto-generated method stub
return 2 * (s1 + s2);
}
}
/**
* @author vvv
* @date 2013-8-10 上午09:13:30
*/
package com.duotai;
/**
*
*
*/
public class Test {
/**
* @param args
*/
public static void main(String[] args) {
Shape triangle = new Triangle(3, 4, 8);
// 新建一个三边长为3,4,5的三角形
Shape tri = new Triangle(3, 4, 5);
Shape director = new Director(10, 20);
// 新建一个两边长为10,20的长方形
System.out.println("三角形triangle的周长为:" + triangle.longer());
System.out.println("三角形triangle的面积为:" + triangle.area());
System.out.println("三角形tri的周长为:" + tri.longer());
System.out.println("三角形tri的面积为:" + tri.area());
System.out.println("该长方形的周长为:" + director.longer());
System.out.println("该长方形的面积为:" + director.area());
}
}
希望本文所述对大家的java程序设计有所帮助。


猜你喜欢
- Android 实现会旋转的饼状统计图实例代码最近在做一个项目,由于有需要统计的需要,于是就做成了下面饼状统计图。 下图是效果图: 大致思路
- 1.向上转型 向下转型2.强制类型转换的应用应用多态性时由于引用为父类类型,导致编译时只能调用父类中声明的属性和方法。子类特有的属性和方法不
- 现在的手游基本都是重复操作,一个动作要等好久,结束之后继续另一个动作.很麻烦,所以动起了自己写一个游戏辅助的心思.这个辅助本身没什么难度,就
- 肝了两天,重新整理了下时间工具类,以后我就以该时间工具类进行项目开发了,后会不定期更新功能,也欢迎留言需求,让工具类不断的完善。常量介绍相关
- 引言相信大家在生活中,特别是最近的双十一活动期间,会收到很多短信,而那些短信都有两个特征,第一个是几乎都是垃圾短信,这个特点此处可以忽略不计
- 波浪球的效果一直都是想模仿的对象,在最近一段时间里模仿了这一界面,其实所用知识并不多。1)、波浪的效果是利用三角函数来实现的,在自定义vie
- Starting创建手势密码可以查看 CreateGestureActivity.java 文件.登陆验证手势密码可以看 GestureLo
- Spring自动装配之方法、构造器位置的自动注入1. 注解定义@Autowired的定义信息如下:@Target({ElementType.
- 学习内容:1.普通参数2.pojo参数3.嵌套pojo4.数组参数5.集合参数6.解决中文乱码7.json数据传递参数案例分析:1.pom.
- 在使用 SpringMVC 上传文件时,接收到的文件格式为 MultipartFile,但是在很多场景下使用都需要File格式的文件,记录下
- JDK8已发布,写了一个datetime时间函数使用方法的小示例package datetime;import static java.ti
- 一、java发展史1.java之父:詹姆斯·高家林2.关键时间点:1996年Java(1.0)发布,2004年Java(5.0)发扬光大,2
- 传输层安全性协议(英语:Transport Layer Security,缩写作 TLS),及其前身安全套接层(Secure Sockets
- 前言设计模式在我看来更像是一种设计思维或设计思想,它就像《孙子兵法》一样,为你的项目工程提供方向,让你的项目工程更加健壮、灵活,延续生命力。
- String 不是简单类型,而是一个类,它被用来表示字符序列。字符本身符合 Unicode 标准,其初始化方式有两种。如:String gr
- mybatis-plus返回查询总记录数mp框架提供了selectCount方法,来查询总记录数;需求:查找薪水大于3500 名字里有&am
- 使用spring框架实现数据库事务处理事务对于数据库来说是,是对sql语句的一系列操作,这些操作被组织成为一个事务。事务具有原子性的,要么全
- 图片解析:1.生成字节码文件的过程可能产生编译时异常(checked),由字节码文件到在内存中加载、运行类此过程可能产生运行时异常(unch
- 1、什么是Callback,什么时候需要使用Callbackcallback是回调的意思,一般我们需要2个类需要相互掉用,一个类把数据动态传
- 相信各位同道在写代码的时候,肯定会写一些日志打印,因为这对往后的运维而言,至关重要的。那么我们请求一个restfull接口的时候,哪些信息是