编程设计一个Triangle类表示三角形,其中包括3个double型变量a、b、c表示三角形边长。为该类定义两个构造方法:一个构造方法设置三条边长都为0.0;另一个带3个参数的构造方法通过传递参数来创建三角形对象。定义求三角形面积的方法getArea,面积计算公式使用海伦公式。编写另一个主类程序测试这个三角形类的所有方法
时间: 2023-05-26 16:07:20 浏览: 57
public class Triangle {
double a;
double b;
double c;
public Triangle(){
a = 0.0;
b = 0.0;
c = 0.0;
}
public Triangle(double a, double b, double c){
this.a = a;
this.b = b;
this.c = c;
}
public double getArea(){
double p = (a + b + c) / 2.0;
double area = Math.sqrt(p * (p - a) * (p - b) * (p - c));
return area;
}
}
public class Main {
public static void main(String[] args) {
Triangle t1 = new Triangle();
Triangle t2 = new Triangle(3.0, 4.0, 5.0);
System.out.println("t1的面积为:" + t1.getArea());
System.out.println("t2的面积为:" + t2.getArea());
}
}
相关问题
编程设计一个triangle类表示三角形,其中包括3个double型变量a、b、c表示三角形边长。为该类定义两个构造方法:默认构造方法设置三条边长都为0.0;带3个参数的构造方法通过传递参数来创建三角
### 回答1:
这是关于设计一个Triangle类表示三角形的题目,其中包括3个double类型变量a、b、c表示三角形边长。该类定义两个构造方法:默认构造方法设置三条边长都为0.0;另一个构造方法通过传递参数来创建三角形。题目要求通过传递参数的构造方法通"过传递参数的构造方法通过传递参数的构造方法创建三角形。"。
### 回答2:
编程设计一个Triangle类表示三角形,需要先了解什么是三角形。三角形是由三条线段组成,其中任意两条线段之和大于第三条线段,所以我们在定义Triangle类时需要包含三个double类型的属性a、b、c,分别表示三角形的三条边长。
它可以用如下代码定义:
```
public class Triangle {
private double a; //三角形边长a
private double b; //三角形边长b
private double c;//三角形边长c
// 默认构造方法,设置三条边长都为0.0
public Triangle() {
a = 0.0;
b = 0.0;
c = 0.0;
}
//带三个参数的构造方法,传递参数来创建三角
public Triangle(double a,double b,double c) {
this.a = a;
this.b = b;
this.c = c;
}
// get set 方法省略
}
```
当我们需要使用这个Triangle类时,可以创建一个Triangle对象。如果我们不提供参数,系统会调用默认构造方法来创建一个默认的Triangle对象。
```
Triangle t1 = new Triangle(); // 创建一个默认的Triangle对象
```
如果我们需要创建一个特定的三角形对象,我们可以通过传递三角形的三个边长参数来创建一个Triangle对象。
```
Triangle t2 = new Triangle(3.0,4.0,5.0);//创建一个边长为3,4,5的Triangle对象
```
总之,Triangle类是一个用来表示三角形的类,通过定义两个构造方法,我们可以根据实际情况来创建默认或特定的Triangle对象。
### 回答3:
编写一个 Triangle 类来表示一个三角形是一个很好的编程练习。 首先,需要创建一个 Triangle 类,包括私有成员变量 a, b, 和 c,分别表示三角形的三个边长。
类的构造方法是创建对象时首先调用的方法。题目需要定义两个构造方法:默认构造方法和带3个参数的构造方法。
默认构造方法将对象的三条边设置为 0.0,可以使用以下代码来实现:
```java
public Triangle() {
this.a = 0.0;
this.b = 0.0;
this.c = 0.0;
}
```
带 3 个参数的构造方法创建一个三角。可以使用以下代码实现:
```java
public Triangle(double a, double b, double c) {
this.a = a;
this.b = b;
this.c = c;
}
```
这样,就可以创建一个 Triangle 类对象并传入对应的三个边长。
编写一个计算三角形面积的方法,首先需要验证这三个边长是否能够构成一个三角形。可以使用以下代码来检查:
```java
if(a + b > c && a + c > b && b + c > a) {
// construct triangle
}
else {
// set area to 0
}
```
如果这三个边长不能构成一个三角形,面积将被设置为 0。否则,使用海伦公式计算三角形面积:
```java
double s = (a + b + c) / 2 ; // 计算半周长
double area = Math.sqrt(s * (s - a) * (s - b) * (s - c)) ;// 计算面积
```
完整的 Triangle 类代码如下:
```java
public class Triangle {
private double a, b, c;
public Triangle() {
this.a = 0.0;
this.b = 0.0;
this.c = 0.0;
}
public Triangle(double a, double b, double c) {
this.a = a;
this.b = b;
this.c = c;
}
public double getArea() {
if(a + b > c && a + c > b && b + c > a) {
double s = (a + b + c) / 2 ;
double area = Math.sqrt(s * (s - a) * (s - b) * (s - c)) ;
return area;
}
else {
return 0;
}
}
}
```
定义一个Triangle类表示三角形,其中三个double型变量a、b、c表示三条边长。为该类定义两个构造方法:默认构造方法设置三角形的三条边长都为0.0; 带三个参数的构造方法通过传递三个参数创建三角形对象。定义求三角形面积的方法area), 面积计算公式为area=Math.sqrt(s*(s- -a)(s b)(-)),其中s-(a+b+e)/2。编写另一个程序测试这个三角形类的所有方法。
好的,这里是Triangle类的代码实现:
```java
public class Triangle {
private double a;
private double b;
private double c;
public Triangle() {
this.a = 0.0;
this.b = 0.0;
this.c = 0.0;
}
public Triangle(double a, double b, double c) {
this.a = a;
this.b = b;
this.c = c;
}
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 area() {
double s = (a + b + c) / 2.0;
double area = Math.sqrt(s * (s - a) * (s - b) * (s - c));
return area;
}
}
```
这里是测试程序的代码:
```java
public class TestTriangle {
public static void main(String[] args) {
Triangle t1 = new Triangle();
System.out.println("Triangle 1: a = " + t1.getA() + ", b = " + t1.getB() + ", c = " + t1.getC() + ", area = " + t1.area());
Triangle t2 = new Triangle(3.0, 4.0, 5.0);
System.out.println("Triangle 2: a = " + t2.getA() + ", b = " + t2.getB() + ", c = " + t2.getC() + ", area = " + t2.area());
t1.setA(6.0);
t1.setB(8.0);
t1.setC(10.0);
System.out.println("Triangle 1: a = " + t1.getA() + ", b = " + t1.getB() + ", c = " + t1.getC() + ", area = " + t1.area());
}
}
```
运行结果如下:
```
Triangle 1: a = 0.0, b = 0.0, c = 0.0, area = 0.0
Triangle 2: a = 3.0, b = 4.0, c = 5.0, area = 6.0
Triangle 1: a = 6.0, b = 8.0, c = 10.0, area = 24.0
```
其中,Triangle类有两个构造方法,一个默认的无参构造方法和一个带三个参数的构造方法。area方法计算三角形面积,测试程序中创建了两个Triangle对象t1和t2,并分别调用了它们的构造方法和area方法。最后,通过set方法修改了t1的三条边长,并再次调用area方法计算面积。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)