Programmation Java
Medd12
Messages postés
32
Date d'inscription
Statut
Membre
Dernière intervention
-
KX Messages postés 16761 Date d'inscription Statut Modérateur Dernière intervention -
KX Messages postés 16761 Date d'inscription Statut Modérateur Dernière intervention -
bonjour,
Je débute en java, je suis en train de faire un exercice pour apprendre un peu la notion d'héritage mais je bloque.
Je possède une classe Point, une classe Polygone, une classe Triangle, une classe Rectangle, une classe PolygoneRegulier, et une classe TestPolygone avec une méthode main pour tester tout ça.
Voici les classes et les constructeurs (j'ai réussi à faire toute les classes), mais je bloque en classe Test :
Je débute en java, je suis en train de faire un exercice pour apprendre un peu la notion d'héritage mais je bloque.
Je possède une classe Point, une classe Polygone, une classe Triangle, une classe Rectangle, une classe PolygoneRegulier, et une classe TestPolygone avec une méthode main pour tester tout ça.
Voici les classes et les constructeurs (j'ai réussi à faire toute les classes), mais je bloque en classe Test :
class point { private int x; private int y; public point() { this.x = 0; this.y = 0; } public point(int x, int y) { this.x = x; this.y = y; } public int getx() { return this.x; } public int gety() { return this.y; } public void setx(int x) { this.x = x; } public void sety(int y) { this.y = y; } public void affichage() { System.out.println("(" + getx() + "," + gety() + ")"); } public double distance(point p) { return Math.sqrt(((this.getx() - p.getx()) * (this.getx() - p.getx()) + (Math.pow(this.gety() - p.gety(), (2))))); } }
public class polygone { private point[] tab; public polygone(point[] tab) { this.tab = tab; } public void affiche() { System.out.println("is s'agit d'un polygone"); for (int i = 0; i < tab.length; i++) { tab[i].affichage(); } } public int nbsommets() { return tab.length; } public double perimetre() { double p = 0; for (int i = 0; i < tab.length - 1; i++) { p = p + tab[i].distance(tab[i + 1]); } p = p + tab[0].distance(tab[tab.length - 1]); return p; } }
public class rectangle { private point[] tab; public rectangle(point p1, point p2) { tab[0] = p1; tab[1] = new point(p2.getx(), p1.gety()); tab[2] = p2; tab[3] = new point(p2.gety(), p1.getx()); } public rectangle(point p, int l, int L) { this(p, new point(p.getx() - L, p.gety() - l)); } public void affiche() { System.out.println("is s'agit d'un rectangle "); for (int i = 0; i < tab.length; i++) { tab[i].affichage(); } } public int nbsommets() { return tab.length; } public double perimetre() { double p = 0; for (int i = 0; i < tab.length - 1; i++) { p = p + tab[i].distance(tab[i + 1]); } p = p + tab[0].distance(tab[tab.length - 1]); return p; } }
public class carre { private point[] tab; public carre(point p, int ct) { this (p,new point (p.getx()+ct,p.gety()+ct)); } public void affiche() { System.out.println("is s'agit d'un carre "); for (int i = 0; i < tab.length; i++) { tab[i].affichage(); } } public int nbsommets() { return tab.length; } public double perimetre() { double p = 0; for (int i = 0; i < tab.length - 1; i++) { p = p + tab[i].distance(tab[i + 1]); } p = p + tab[0].distance(tab[tab.length - 1]); return p; } }
A voir également:
- Programmation Java
- Waptrick java football - Télécharger - Jeux vidéo
- Jeux java itel - Télécharger - Jeux vidéo
- Eclipse java - Télécharger - Langages
- Java apk - Télécharger - Langages
- Waptrick java voiture - Télécharger - Jeux vidéo
1 réponse
Bonjour,
Tu parles d'héritage mais tu n'en fait pas...
Quant à l'utilisation de this en tant que constructeur (ce qui n'a rien à voir avec de l'héritage), cela implique que tu ais un deuxième constructeur, or dans la classe
Mais peut-être devrais-tu plutôt utiliser
Tu parles d'héritage mais tu n'en fait pas...
Quant à l'utilisation de this en tant que constructeur (ce qui n'a rien à voir avec de l'héritage), cela implique que tu ais un deuxième constructeur, or dans la classe
carretu n'en as qu'un (contrairement à la classe
rectanglequi en a bien deux)
Mais peut-être devrais-tu plutôt utiliser
supersi tu veux faire de l'héritage... sous réserve que tes classes en
extendsune autre.