2015-12-20 1 views
0

Je suis vraiment bloqué sur la façon de simplement tracer un point dans un programme appelé WinPlotter. Apparemment, les points sont censés apparaître après l'avoir appelé dans la super classe, mais je ne peux même pas obtenir un point sur la grille. Voici mon code jusqu'ici:Tracer un point dans un programme

public class Point extends Shape { 

public void draw(WinPlotter plotter) { 
    // TODO Auto-generated method stub 
    plotter.drawPoint(xo, yo); 


} 
public Point(double xo, double yo, Color c) { 
    // TODO Auto-generated constructor stub 
    super(xo, yo, c); 
} 

Et voici la superclasse lui-même:

public Color c; 
protected double xo; 
protected double yo; 

public abstract void draw(WinPlotter plotter); 

public void setColor(Color c) { 
    c = Color.RED; 
} 
public void setPenColor(WinPlotter plotter){ 
    plotter.setPenColor(0, 0, 0); 

} 
public Shape(double xo, double yo, Color c) { 
    // TODO Auto-generated constructor stub 

} 

me semble être confus sur ce que je dois placer dans la méthode Shape(). Je devrais modifier la méthode à la "forme" des points. J'ai essayé des variables aléatoires. Mais rien ne montre. Tous les conseils/aide seraient appréciés.

Répondre

1
  1. Il n'existe pas de "forme des points". Un point est un point. La fonction stocke Color.RED dans son paramètre et procède à l'oublier définitivement. Qu'est-ce que vous vouliez dire est this.c = c;

  2. Techniquement, Shape() n'est pas une méthode, il est un constructeur . La terminologie est importante. Il devrait initialiser chacune des variables membres de votre objet en utilisant chacun des paramètres qui lui sont passés.

Presque chaque un de vos erreurs aurait été signalé par votre compilateur par des avertissements, donc vous ne devriez pas poser de questions, parce que ces avertissements seraient à peu près vous dire ce que vous avez besoin faire. Ce qui signifie que vous essayez d'écrire du code sans avoir tous les avertissements activés. N'essayez pas ça, ça ne marchera pas. Déposez tout ce que vous faites, et trouvez comment activer tous les avertissements dans votre IDE. (Vous devrez alors désactiver quelques uns qui ne vous aident pas vraiment.) N'écrivez pas une seule ligne de code et ne touchez à rien avant d'activer tous les avertissements. Par exemple, avec le constructeur setPenColor, les valeurs que l'EDI a définies automatiquement pour moi étaient rouge, bleu et vert. Par exemple, avec

+0

Mais ils apparaissent comme des erreurs. Il demande alors des entiers. Donc, donner à chacun un nombre compris entre 0 et 255 devrait être acceptable? Et les constructeurs de formes devraient être modifiés aussi bien pour donner une sortie? – user130110

+0

@ user130110 a) Je ne comprends pas ce que vous demandez. b) vous pourriez trouver utile de lire sur [la différence entre les constructeurs et les méthodes.] (http://stackoverflow.com/questions/19061599/methods-vs-constructors-in-java) c) avez-vous activé tous les avertissements dans vous roulez? –

+0

Je ne suis même pas sûr de ce que je demande de plus. lol! Je vais lire sur les constructeurs et les méthodes, et les avertissements sont activés (mais toujours pas d'aide.) Merci de m'avoir aidé, mais je vais juste devoir le faire disparaître. : -/ – user130110