第18天 Java面向对象小程序(二)
2016-11-13 21:36
211 查看
填写一个Java应用程序,其中有3个类:Trangle、Lader和Circle,分别用来刻画三角形、梯形和圆形。
上面这个程序就是对类和方法的简单应用,停下来回顾一下这些东西,把基础知识回顾一遍再开始慢慢前行。
下面代码中的注释非常非常清楚,建议自己先构思一下然后自己比着敲一遍。
勿以事小而不为。勿以事简而不为。把基础打扎实方能远行。与诸君共勉。
上面这个程序就是对类和方法的简单应用,停下来回顾一下这些东西,把基础知识回顾一遍再开始慢慢前行。
下面代码中的注释非常非常清楚,建议自己先构思一下然后自己比着敲一遍。
package test; class Trangle { double sideA,sideB,sideC,area,length; boolean boo; public Trangle(double a,double b,double c) { sideA=a;sideB=b;sideC=c; // 参数a, b, c分别赋值给sideA, sideB, sideC if(a+b>c && a+c>b && b+c>a) //a, b, c构成三角形的条件表达式 { boo=true; } else { boo=false;// 给boo赋值 } } double getLength() { return (sideA+sideB+sideC); // 方法体,要求计算出length的值并返回 } public double getArea() { if(boo) { double p=(sideA+sideB+sideC)/2.0; area=Math.sqrt(p*(p-sideA)*(p-sideB)*(p-sideC)) ; return area; } else { System.out.println("不是一个三角形,不能计算面积"); return 0; } } public void setABC(double a,double b,double c) { sideA=a; sideB=b; sideC=c;// 参数a, b, c分别赋值给sideA, sideB, sideC if(a+b>c && a+c>b && b+c>a) // a, b, c构成三角形的条件表达式 { boo=true; //给boo赋值。 } else { boo=false;// 给boo赋值 } } } class Lader { double above,bottom,height,area; Lader(double a,double b,double h) { above = a; bottom = b; height = h; // 方法体 } double getArea( ) { return ((above+bottom)*height/2.0); // 方法体,,要求计算出area返回 } } class Circle { double radius,area; Circle(double r) { radius = r; // 方法体 } double getArea( ) { return (3.14*radius*radius); // 方法体,要求计算出area返回 } double getLength( ) { return (3.14*2.0*radius); // getArea方法体的代码,要求计算出length返回 } void setRadius(double newRadius) { radius=newRadius; } double getRadius( ) { return radius; } } public class AreaAndLength { public static void main(String args[ ]) { double length,area; Circle circle=null; Trangle trangle; Lader lader; circle = new Circle(5.0); //创建对象circle trangle = new Trangle(3.0,4.0,5.0); //创建对象trangle lader = new Lader(10.0,12.0,5.0); //创建对象lader length=circle.getLength(); // circle调用方法返回周长并赋值给length System.out.println("圆的周长:"+length); area = circle.getArea( ); // circle调用方法返回面积并赋值给area System.out.println("圆的面积:"+area); length = trangle.getLength(); // trangle调用方法返回周长并赋值给length System.out.println("三角形的周长:"+length); area = trangle.getArea(); // trangle调用方法返回面积并赋值给area System.out.println("三角形的面积:"+area); area = lader.getArea(); // lader调用方法返回面积并赋值给area System.out.println("梯形的面积:"+area); trangle.setABC(12,34,1); // trangle调用方法返修改三个边的代码,要求将三个边修改为12,34,1 area = trangle.getArea(); // trangle调用方法返回面积并赋值给area System.out.println("三角形的面积:"+area); length = trangle.getLength(); // trangle调用方法返回周长并赋值给length System.out.println("三角形的周长:"+length); } }
勿以事小而不为。勿以事简而不为。把基础打扎实方能远行。与诸君共勉。
相关文章推荐
- 运用JAVA面向对象思想写一个区域管理程序
- 初学JAVA面向对象最应该看的小程序
- 写Java程序要体现面向对象
- [Java实现]通过一个Java小程序(吃苹果)深入理解面向对象思想
- Java三个月 - 面向对象程序设计OOP的乐趣 - 程序人生
- JAVA进阶 面向对象程序设计——第5周 设计原则(耦合和聚合,代码结构设计,程序维护拓展发展)
- 写Java程序要体现面向对象
- Java三个月 - 面向对象程序设计OOP的乐趣 - 程序人生
- 从一个JAVA程序谈面向对象思想的建立
- 在面向过程语言和开发中借鉴面向对象思想提高程序模块化和阅读性
- 面向Java开发人员的Ajax:Ajax的Java对象序列化
- 面向对象的程序开发技术C++教学课件系列之三
- java 面向对象程序设计浅谈一
- Java面向对象程序设计之接口运用
- java基础3--程序控制语句,类、对象和方法
- 面向对象与上帝造人——类与对象(java篇)
- 面向 Java 开发人员的 Ajax: Ajax 的 Java 对象序列化---在 Ajax 应用程序中序列化数据的五种途径
- 面向Java开发人员的Ajax:Java对象序列化
- Java面向对象继承与组合的问题
- 今天开始重温Java:1.面向对象