Chapitre 11 La première question (classe Triangle) (classe Triangle)

Chapitre 11 La première question (classe Triangle) (classe Triangle)

  • 11.1 (Classe Triangle) Concevez une classe nommée Triangle pour hériter de la classe GeometricObject. Cette catégorie comprend:

    • Trois champs de données de type double nommés side1, side2 et side3 représentent les trois côtés de ce triangle et leur valeur par défaut est 1.0.
    • Une méthode de construction sans argument crée un triangle par défaut.
    • Une méthode de construction pour créer des triangles avec des valeurs side1, side2 et side3 spécifiées.
    • Méthodes d'accesseur pour les trois champs de données.
    • Une méthode appelée getArea () renvoie l'aire du triangle.
    • Une méthode appelée getPerimeter () renvoie le périmètre du triangle.
    • Une méthode appelée toString () renvoie une chaîne de description du triangle.

    Reportez-vous à l'exercice de programmation 2.19 pour la formule de calcul de l'aire d'un triangle. L'implémentation de la méthode toString () est la suivante:
    return "Create on" + super.getDateCreated () + "\ ncolor:" + super.getColor () + "\ nArea:" + this.getArea () + "\ nPerimeter: "+ this.getPerimeter ();
    Dessinez les diagrammes UML de la classe Triangle et de la classe GeometricObject, et implémentez ces classes. Écrivez un programme de test qui invite l'utilisateur à entrer les trois côtés du triangle, la couleur et une valeur booléenne pour indiquer si le triangle est rempli. Le programme doit créer un triangle avec des côtés spécifiés en fonction de l'entrée et définir l'attribut rempli de couleur Laker. Le programme doit afficher la zone, le périmètre, la couleur et les valeurs vraies ou fausses indiquant s'il faut remplir.
    11.1 (Classe Triangle) Concevez une classe nommée triangle pour hériter de la classe Geometricobject. Cette catégorie comprend:

    • Trois champs de données doubles nommés side1, side2 et side3 représentent les trois côtés du triangle et leur valeur par défaut est 1,0.
    • Une méthode de construction non paramétrique qui crée un triangle par défaut.
    • Une méthode de construction pour créer des triangles avec des valeurs side1, side2 et side3 spécifiées.
    • Méthodes d'accesseur pour les trois domaines de données.
    • Une méthode appelée getarea () renvoie l'aire du triangle.
    • Une méthode appelée getperimeter () renvoie le périmètre du triangle.
    • Une méthode appelée tostring () renvoie la description sous forme de chaîne du triangle.

    La formule de calcul de l'aire du triangle est renvoyée à l'exercice de programmation 2.19. La méthode tostring () est implémentée comme suit:
    return "Create on" + super.getDateCreated () + "\ ncolor:" + super.getColor () + "\ nArea:" + this.getArea () + "\ nPerimeter: "+ this.getPerimeter ();
    Dessinez le diagramme UML de la classe triangle et de la classe géométriqueobject, et implémentez ces classes. Écrivez un programme de test, demandez à l'utilisateur de saisir trois côtés du triangle, la couleur et une valeur booléenne pour indiquer si le triangle est rempli ou non. Le programme doit créer un triangle avec le bord spécifié en fonction de l'entrée et définir la propriété de remplissage de couleur. Le programme doit afficher la zone, le périmètre, la couleur et les valeurs vraies ou fausses indiquant s'il faut remplir。

  • Code de référence:

package chapter11;

public class Code_01 {
    
    
    public static void main(String[] args) {
    
    
        Triangle triangle = new Triangle();
        System.out.println(triangle.toString());
    }
}
class SimpleGeometricObject {
    
    
    private String color = "white";
    private boolean filled;
    private java.util.Date dateCreated;

    /** Construct a default geometric object */
    public SimpleGeometricObject() {
    
    
        dateCreated = new java.util.Date();
    }

    /** Construct a geometric object with the specified color
     *  and filled value */
    public SimpleGeometricObject(String color, boolean filled) {
    
    
        dateCreated = new java.util.Date();
        this.color = color;
        this.filled = filled;
    }

    /** Return color */
    public String getColor() {
    
    
        return color;
    }

    /** Set a new color */
    public void setColor(String color) {
    
    
        this.color = color;
    }

    /** Return filled. Since filled is boolean,
     its get method is named isFilled */
    public boolean isFilled() {
    
    
        return filled;
    }

    /** Set a new filled */
    public void setFilled(boolean filled) {
    
    
        this.filled = filled;
    }

    /** Get dateCreated */
    public java.util.Date getDateCreated() {
    
    
        return dateCreated;
    }

    /** Return a string representation of this object */
    public String toString() {
    
    
        return "created on " + dateCreated + "\ncolor: " + color + " and filled: " + filled;
    }
}

class Triangle extends SimpleGeometricObject{
    
    
    private double side1 = 1.0;
    private double side2 = 1.0;
    private double side3 = 1.0;

    public Triangle(){
    
    
        super();
        side1 = side2 = side3 = 1.0;
    }
    public Triangle(double side1,double side2,double side3){
    
    
        super();
        this.side1 = side1;
        this.side2 = side2;
        this.side3 = side3;
    }
    public double getSide1(){
    
    
        return side1;
    }
    public double getSide2(){
    
    
        return side2;
    }
    public double getSide3(){
    
    
        return side3;
    }
    public double getArea(){
    
    
        double p = (side1 + side2 + side3) / 2;
        return Math.sqrt(p * (p - side1) * (p - side2) * (p - side3));
    }
    public double getPerimeter(){
    
    
        return side1 + side2 + side3;
    }

    @Override
    public String toString(){
    
    
        return "Create on " + super.getDateCreated() + "\ncolor: " + super.getColor() + "\nArea: " + this.getArea() + "\nPerimeter: " + this.getPerimeter();
    }
}

  • Les résultats montrent que:
Create on Tue Oct 27 08:46:41 CST 2020
color: white
Area: 0.4330127018922193
Perimeter: 3.0

Process finished with exit code 0

Insérez la description de l'image ici
Insérez la description de l'image ici

Je suppose que tu aimes

Origine blog.csdn.net/jxh1025_/article/details/109303354
conseillé
Classement