Rechercher : dans
Par :

Probleme de héritage en java

Dernière réponse le 11 avr 2009 à 09:47:36 jamal1986, le 11 avr 2009 à 02:28:35 
 Signaler ce message aux modérateurs

Bonjour,
j'ai un petit problème d'héritage en java : voila je vous explique;
j'ai crée un class ball.java
import java.awt.*;
import java.util.Random;

public class Ball
{
public float pos;
private BallPath ballPath;
private Color color;
public Random R;


public Ball(BallPath ballPath, float pos, Color color)
{
this.ballPath = ballPath;
this.pos = pos;
this.color = color;
}

public void paint(Graphics g)
{
Point p = ballPath.getPathPoint(pos);


g.setColor(color);
g.fillOval(p.x-DEF.BALL_RADIUS/2, p.y-DEF.BALL_RADIUS/2, DEF.BALL_RADIUS+1,DEF.BALL_RADIUS+1);
g.setColor(Color.yellow);
g.drawOval(p.x-DEF.BALL_RADIUS/2, p.y-DEF.BALL_RADIUS/2, DEF.BALL_RADIUS,DEF.BALL_RADIUS);
}
}

ensuite j'ai crée un class qui hérite de set class Ballspécial
import java.awt.Color;
import java.awt.Graphics;
import java.awt.Point;


public class Ballspecial extends Ball{
public float pos;
private BallPath ballPath;
private Color color;


public Ballspecial(BallPath ballPath,float pos,Color color)
{
super(ballPath, pos, color);
this.ballPath = ballPath;
this.pos = pos;
this.color = color;
}

public void paint(Graphics g)
{
Point p = ballPath.getPathPoint(pos);

g.setColor(color);
g.fillOval(p.x-DEF.BALL_RADIUS/2, p.y-DEF.BALL_RADIUS/2, DEF.BALL_RADIUS+1,DEF.BALL_RADIUS+1);
g.setColor(Color.red);
g.drawOval(p.x-DEF.BALL_RADIUS/2, p.y-DEF.BALL_RADIUS/2, DEF.BALL_RADIUS,DEF.BALL_RADIUS);
}




}
j'ai réussi d'afficher les ball dans une chaine de ball défini sous forme de string mai pas la ball spécial
j'ai fai des instructions de ce genre
balls = new ArrayList<Ball>();
ballspecial=new ArrayList<Ballspecial>();

Merci en avance de votre aide

Configuration: Windows Vista
Firefox 3.0.8

Meilleures réponses pour « probleme de héritage en java » dans :
Java - L'héritage Voir La notion d'héritage Le concept d'héritage est un des concepts les plus importants de la programmation orientée objet, car il conditionne irréversiblement la façon selon laquelle un code Java est écrit. L'héritage est un mécanisme permettant de...
[Firefox] plugin Java Jre de Sun VoirA) Les différentes variantes Java chez Sun B) Installation sous Mandriva Limited Edition 2005 ETAPE 1 ETAPE 2: Création du lien symbolique C) Installation sous debian lenny D) Installation sous ubuntu hardy heron A) Les différentes...
Installer Java sous Ubuntu VoirPar défaut, Firefox n'est pas fourni avec Java. Voici comment procéder pour l'installer: Ouvrez un terminal (Menu Applications > Accessoires > Terminal) et tapez: sudo aptitude install sun-java6-jre sun-java6-plugin ou sudo aptitude install ...
Supprimer les anciennes versions de Java avec JavaRa VoirJavaRa A propos de la gestion des machines virtuelles Java Présentation de JavaRa Exemple de rapport émis par JavaRa A propos de la gestion des machines virtuelles Java Pour des mises à jour ciblées de java Sun a finalement donné une...
Télécharger Java Runtime Environment VoirJava Runtime Environment (JRE) installe la machine virtuelle Java, permettant de jouer en ligne, de discuter avec des personnes dans le monde entier, de calculer les intérêts de votre prêt immobilier ou de visualiser des images en 3D. Ces...
Héritage et polymorphisme VoirHéritage et polymorphisme La notion d’héritagexe "héritage" est très facile à comprendre. En C++, on dit qu’une classe définie à partir d’une classe existante et à laquelle on ajoute une fonctionnalité dérive de la classe initiale. Cette dernière...
Java - Premier programme VoirPremière application avec Java La première chose à faire est de créer un simple fichier texte (sans mise en forme) et de taper les quelques lignes suivantes : // Votre premiere application en Java class FirstApp { public static void main...
Java - Les types de données VoirLes primitives Java est un langage orienté objet, c'est-à-dire que les éléments manipulés sont des classes, ou plus exactement des objets, c'est-à-dire des instances de classes. Toutefois ces objets contiennent des données possèdant un type (et...

1

does01, le 11 avr 2009 à 02:59:29

Regarde bien ce que ta fait ta deja declaré les variable ds la classe mére et ta la redeclaré ds la classe fils

Répondre à does01

2

 jamal1986, le 11 avr 2009 à 09:47:36

Voila j"ai changé mon code java de la class fills ballspecial et ca marche trés bien
j'ai déclaré les variables ballPath et color comme protected dans la class mere..
import java.awt.Color;
import java.awt.Graphics;
import java.awt.Point;


public class Ballspecial extends Ball{



public Ballspecial(BallPath ballPath,float pos,Color color)
{
super(ballPath, pos, color);

}

public void paint(Graphics g)
{
Point p = ballPath.getPathPoint(pos);

g.setColor(color);
g.fillOval(p.x-DEF.BALL_RADIUS/2, p.y-DEF.BALL_RADIUS/2, DEF.BALL_RADIUS+1,DEF.BALL_RADIUS+1);
g.setColor(Color.red);
g.drawOval(p.x-DEF.BALL_RADIUS/2, p.y-DEF.BALL_RADIUS/2, DEF.BALL_RADIUS,DEF.BALL_RADIUS);
}




}

mai j'ai encore un petit souci sur comment tester l'égalité de trois ball adjacents, je sai qu'il faut appeler la méthode equal mai je sai pas comment jouer sur le corps des instructions...

Merci vivement de votre aide

Répondre à jamal1986