java语言程序设计 第十三章 抽象类与接口 (13.1)
来源:互联网 发布:git clone ssh 端口 编辑:程序博客网 时间:2024/06/12 00:18
程序小白,希望和大家多交流,共同学习
public abstract class GeometricObject{ private String color; private boolean filled; private java.util.Date dateCreated; protected GeometricObject() { dateCreated = new java.util.Date(); } protected GeometricObject(String color, boolean isFilled) { this.color = color; this.filled = filled; dateCreated = new java.util.Date(); } public String getColor() { return color; } public void setColor(String color) { this.color = color; } public boolean isFilled() { return filled; } public void setFilled(boolean filled) { this.filled = filled; } public java.util.Date getDateCreated() { return dateCreated; } @Override public String toString() { return "created on " + dateCreated + "\ncolor: " + color + "\nand filled: " + filled; } public abstract double getArea(); public abstract double getPerimeter();}
public class TriangleException extends Exception{ private double side1; private double side2; private double side3; public TriangleException(double side1, double side2, double side3) { super("Can't create a triangle."); this.side1 = side1; this.side2 = side2; this.side3 = side3; } public double getSide1() { return side1; } public double getSide2() { return side2; } public double getSide3() { return side3; }}
// 为了练习异常的声明,写了一个TriangleException,其实没必要,只要用 if 判断给出错误信息就好public class Triangle extends GeometricObject{ private double side1; private double side2; private double side3; public Triangle() { } public Triangle(double side1, double side2, double side3) throws TriangleException { this(side1, side2, side3, "white", false); } public Triangle(double side1, double side2, double side3, String color, boolean filled) throws TriangleException { super(color, filled); this.side1 = side1; this.side2 = side2; this.side3 = side3; judge(side1, side2, side3); } public double getSide1() { return side1; } public void setSide1(double side1) { this.side1 = side1; } public double getSide2() { return side2; } public void setSide2(double side2) { this.side2 = side2; } public double getSide3() { return side3; } public void setSide3(double side3) { this.side3 = side3; } @Override public double getArea() { double side = (side1 + side2 + side3) / 2; double area = Math.sqrt(side * (side - side1) * (side - side2) * (side - side3)); return area; } @Override public double getPerimeter() { return (side1 + side2 + side3); } private void judge(double side1, double side2, double side3) throws TriangleException { if ((side1 + side2 <= side3) || (side1 - side2 >= side3)) { throw new TriangleException(side1, side2, side3); } }}
import java.util.Scanner;public class TsetTriangle{ public static void main(String [] args) { Scanner input = new Scanner(System.in); System.out.print("Enter side1 : "); double side1 = input.nextDouble(); System.out.print("Enter side2 : "); double side2 = input.nextDouble(); System.out.print("Enter side3 : "); double side3 = input.nextDouble(); System.out.print("Enter a color : "); String color = input.next(); System.out.print("Is filled ? "); boolean filled = input.nextBoolean(); try { Triangle triangle = new Triangle(side1, side2, side3, color, filled); System.out.println("Area : " + triangle.getArea()); System.out.println("Perimeter : " + triangle.getPerimeter()); } catch (TriangleException ex) { System.out.println(ex.getMessage()); } }}
阅读全文
0 0
- java语言程序设计 第十三章 抽象类与接口 (13.1)
- java语言程序设计 第十三章 抽象类与接口 (13.2、13.3、13.4)
- java语言程序设计 第十三章 (13.6、13.7)
- java语言程序设计 第十三章 (13.17、13.18)
- java 语言程序设计 第十三章 13.5
- java语言程序设计 第十三章 (13.9、13.10、13.11、13.12)
- java语言程序设计 第十三章 (13.13、13.14、13.15、13.16)
- Java基础(接口与抽象类)
- JAVA接口与抽象类(1)
- Java:接口与抽象类
- JAVA 抽象类与接口
- Java抽象类与接口
- java 抽象类与接口
- JAVA接口与抽象类
- JAVA 接口与抽象类
- java抽象类与接口
- Java接口与抽象类
- Java抽象类与接口
- JavaScript 性能优化之文档碎片
- 【蓝桥杯】【埃及分数】
- java的简单介绍
- angularjs操作json
- [SDUT](3341)数据结构实验之二叉树二:遍历二叉树 ---- 二叉树
- java语言程序设计 第十三章 抽象类与接口 (13.1)
- 调用OKhttp封装类请求网络数据适配到Recyclerview上拉下拉刷新
- 基于QNX的物联网项目 Project Ion
- MVC升级后报"当前上下文中不存在ViewBag"错的解决方法
- BitcoinGold比特黄金btg挖矿教程-BTG矿工指南
- 笨办法学python习题19 函数和变量
- IDEA快捷键
- 输入挂 等等总结
- JavaScript获取HTML元素的四种方法