展开全部

public interface Ishape {

/**

* 求周长

* @return

*/

int getPerimeter();

/**

* 求面积

* @return

*/

int getArea();

}public class Triangle implements Ishape {

private int length;

private int width;

public Triangle(int length, int width) {

this.length = length;

this.width = width;

}

@Override

public int getPerimeter() {

return (length+width)*2;

}

@Override

public int getArea() {

return length*width;

}

}

public class Rectangle implements Ishape {

private int line1;

private int line2;

private int line3;

private int height1;

private int height2;

private int height3;

public Rectangle(int line1, int line2, int line3, int height1, int height2, int height3) {

this.line1 = line1;

this.line2 = line2;

this.line3 = line3;

this.height1 = height1;

this.height2 = height2;

this.height3 = height3;

}

@Override

public int getPerimeter() {

return line1+line2+line3;

}

@Override

public int getArea() {

return line1*height1/2;

}

}/**

* Created by tony on 2015/11/6.

* 平行四边62616964757a686964616fe78988e69d8331333337623432形

*/

public class Parallelogram implements Ishape {

private int line1;

private int line2;

private int height1;

private int height2;

public Parallelogram(int line1, int line2, int height1, int height2) {

this.line1 = line1;

this.line2 = line2;

this.height1 = height1;

this.height2 = height2;

}

@Override

public int getPerimeter() {

return (line1+line2)*2;

}

@Override

public int getArea() {

return line1*height1;

}

}

/**

* Created by tony on 2015/11/6.

* 梯形

*/

public class Echelon implements Ishape {

private int topLine;

private int bottomLine;

private int line1;

private int line2;

private int height;

public Echelon(int topLine, int bottomLine, int line1, int line2, int height) {

this.topLine = topLine;

this.bottomLine = bottomLine;

this.line1 = line1;

this.line2 = line2;

this.height = height;

}

@Override

public int getPerimeter() {

return topLine+bottomLine+line1+line2;

}

@Override

public int getArea() {

return (topLine+bottomLine)*height/2;

}

}

public class TestShape {

public static void main(String[] args) {

// 矩形

Triangle triangle = new Triangle(4,5);

// 三角形

Rectangle rectangle = new Rectangle(3,4,5,4,3,6);

// 平行四边形

Parallelogram parallelogram = new Parallelogram(6,7,4,5);

// 梯形

Echelon echelon = new Echelon(3,4,6,7,8);

System.out.println("矩形周长:"+triangle.getPerimeter());

System.out.println("矩形面积:"+triangle.getArea());

System.out.println("三角形周长:"+rectangle.getPerimeter());

System.out.println("三角形面积:"+rectangle.getArea());

System.out.println("平行四边形周长:"+parallelogram.getPerimeter());

System.out.println("平行四边形面积:"+parallelogram.getArea());

System.out.println("梯形周长:"+echelon.getPerimeter());

System.out.println("梯形面积:"+echelon.getArea());

}

}

java 接口 练习题_JAVA 接口练习题相关推荐

  1. 回调java 简书_Java接口回调机制详解【转】

    一.回调的含义和用途 1. 什么是回调? 一般来说,模块之间都存在一定的调用关系,从调用方式上看,可以分为三类:同步调用.异步调用和回调.同步调用是一种阻塞式调用,即在函数A的函数体里通过书写函数B的 ...

  2. java wifi类_Java 接口——面向对象的精髓

    原标题:Java 接口--面向对象的精髓 接口有何用?面试宝典上背下来的总结,你真的明白吗?接口&工厂方法其实很简单,什么是接口先看看生活中的接口,比如USB接口. USB接口的设计者在最初就 ...

  3. java api练习_Java接口练习

    package 接口interface; /* 用接口实现关灯开灯 */ public class Test { public static void main(String[] args) { Pe ...

  4. java接口调用_java 接口怎么调用

    一个类实现了某一个接口就可以调用接口中的方法.接口可以理解为一种能力,例如:每种动物都有叫的能力,但是每种动物的叫声都不一样,叫的能力就可以定义为一个接口. 一.创建项目和包 打开Eclipse,依次 ...

  5. java基础练习_Java基础练习题

    练习题 在Java的编程环境下,创建Java项目,项目名称为Test+学号,然后完成下列编程题,为每一道编程题创建一个包,包名为test+题号,例如第一题的包为test1,然后在该包下完成题 目要求. ...

  6. Java 接口语法_JAVA接口的基本语法

    一.接口的概念 在之前学习了抽象类,其中抽象类的抽象方法定义了标准,具体的方法实现交给子类完成,之后再结合多态的特征在一定程度上解决代码的耦合(上节课的参数统一),这需要在继承关系中实现,但是继承存在 ...

  7. java修饰方法_java接口中方法、属性修饰符详解

    java接口的修饰符:abstract(inteeface本身就是抽象的,加不加abstract都一样). 接口中字段的修饰符:public static final(默认不写) 如下解释: publ ...

  8. java的接口语法_JAVA接口的基本语法

    一.接口的概念 在之前学习了抽象类,其中抽象类的抽象方法定义了标准,具体的方法实现交给子类完成,之后再结合多态的特征在一定程度上解决代码的耦合(上节课的参数统一),这需要在继承关系中实现,但是继承存在 ...

  9. java 接口 抛出异常_Java接口抛出异常,但接口实现不抛出异常?

    我读到这段代码的接口抛出一个异常,但实现它不抛出一个或赶上一个类,这是为什么?在java中合法还是安全?Java接口抛出异常,但接口实现不抛出异常? import java.rmi.*; public ...

最新文章

  1. you need python_Life is short,you need Python——Python序列(列表)
  2. 习题1.9 有序数组的插入 (20 分)
  3. TI的TCP/IP协议栈---NDK
  4. 读者来信(1)——项目经理,不要迷信制度!
  5. hal库开启中断关中断_STM32对HAL库的定时器中断
  6. python接口自动化(十)--post请求四种传送正文方式(详解)
  7. Mysql的共享锁和排他锁(转载)
  8. assembly 输出ab中所有数_罗克韦尔(AB)PLC控制器选型(2)-CompactLogix 5370
  9. 字节跳动重磅发布 2022 年 6 大前端技术发展趋势
  10. SystemC Study
  11. 转:jwgkvsq.vmx手工清除方法(针对病毒变种补充完整)
  12. vfp保存为html,vfp向HTTP发送文件
  13. 日常一记(11)--word公式输入任意矩阵
  14. LaTex 符号大全
  15. RDP Wrapper 大于10.0.19041
  16. UltraEdit编辑器中文乱码问题解决
  17. 数据可视化:大屏可视化设计全流程教程
  18. 计算机如何安装程序,如何手动安装计算机驱动程序
  19. 如何开通电子邮箱的SMTP功能
  20. windows新电脑只有固态C盘,如何分盘

热门文章

  1. Day010要事第一
  2. 分布式事务的BASE理论
  3. 两种随机数生成方法——反函数法和舍选法
  4. 回溯法 | 求解装载问题
  5. while,do while,for 循环语句总结大全,一步到位
  6. 紫光国微财报一枝独秀 2021年净利润三位数增长靠什么
  7. 男人四十一枝花,我花开后百花杀!Orz..繁忙的工作之余,joke一下~~
  8. 我的经历---公司破产
  9. ps2018首选项出现要求96和8之间的整数怎么办?
  10. 用xcode编译c++代码