/* (程序头部注释开始) </p><p>* 程序的版权和版本声明部分 * Copyright (c) 2011, 烟台大学计算机学院学生 * 作 者: 李兆庆 * 完成日期: 2012 年 9 月 24 日 * 输入描述: * 需求分析:2.封装一类梯形对象Ladder,该类对象具有上底、下底和高的属性,具有初始化梯形的功能、 修改上底、下底和高的功能、求周长的功能、求面积的功能。 * 程序头部的注释结束 */ import javax.swing.JOptionPane; class Triangle { private double a; private double b; private double c; //定义变量,分别用于存储三角形的三条边。 Triangle() //Triangle类的构造函数,分别对三角形三条边进行初始化,切赋值为0; { a = 0.0; b = 0.0; c = 0.0; } /*public void setLeng(double a, double b, double c) //定义“setLeng”行为,用于完成修改三条边的功能。//这样定义的函数方法是不可取的。而且无法重对象中获得其属性的值,所以下面重新定义了geter(),seter()函数。用于分别对于对象属性进行赋值,获取操作。 { this.a = a; // this关键字调用本对象的属性a并进行重新赋值。 this.b = b; // this关键字调用本对象的属性b并进行重新赋值。 this.c = c; // this关键字调用本对象的属性c并进行重新赋值。 } */ public boolean judge(Triangle t) //定义“judge”行为,用于完成判断是否为三角形的功能 { if ((a > 0) && (b > 0) && (c > 0)) //前提是每条边长必须大于零,也就是说,每天变长必须有意义。 { if(((t.a + t.b) > t.c) && ((t.a + t.c) > t.b) && ((t.b + t.c) > t.a)) //三角形成立的判定条件 { return true; } } return false; } public double getA() { return a; } public void setA(double a) { this.a = a; } public double getB() { return b; } public void setB(double b) { this.b = b; } public double getC() { return c; } public void setC(double c) { this.c = c; } public double getGirth(Triangle t) //定义“getGirth”行为,用于完成求取三角形面积的功能。 { if (judge(t) == false) { System.out.println("对不起,您输入三角形的三条边不合法!"); return 0; } double s = a + b + c ; return s; } public double getArea(Triangle t) //定义“getArea”行为,用于完成求取三角形面积的功能。 { if(judge(t) == false) { System.out.println("对不起,您输入三角形的三条边不合法!"); } double s = (a + b + c)/2; return Math.sqrt( s*(s-a)*(s-b)*(s-c)); } } public class Num { /** * @param args */ public static void main(String[] args) { Triangle tri = new Triangle() ; //通过关键字new建立一个Triangle的对象“tri”; String str =JOptionPane.showInputDialog("请输入三角形第一条边长"); double a = Integer.parseInt(str); String str1=JOptionPane.showInputDialog("请输入三角形第二条边长"); double b = Integer.parseInt(str1); String str2 =JOptionPane.showInputDialog("请输入三角形第三条边长"); double c = Integer.parseInt(str2); //System.out.println("您输入三角形的三条边分别为:"+a+" "+b+" "+c); tri.setA(a); //通过setA()方法对属性a赋值。 tri.setB(b); //通过setB()方法对属性a赋值。 tri.setC(c); //通过setC()方法对属性a赋值。 double x,y,z; x=tri.getA(); //通过getA()方法得到属性a赋值。 y=tri.getB(); //通过getB()方法得到属性b赋值。 z = tri.getC(); //通过getC()方法得到属性c赋值。 System.out.println("您输入三角形的三条边长分别为"+x+", "+y+", "+z); System.out.println(tri.judge(tri)); System.out.println("面积:"+tri.getArea(tri)); System.out.println("周长:"+tri.getGirth(tri)); } }
![]()
三角形对象封装——关于geter(),seter()修改后
最新推荐文章于 2023-06-29 10:55:42 发布