[pinpinpinpin !] y a des accros de Java dans le coin ?


Messages recommandés

Posté(e)

[citation=8554,1][nom]Bomber-Marc a écrit[/nom]je sais qu'y en a plusieurs ici qui bricolent des sites internet, je me demandais si quelqu'un avait un peu touché à Java ? Je cherche à faire un truc et je bloque un peu... :hello:

[/citation]java ou js ?

Posté(e)

[citation=8592,1][nom]razorbill a écrit[/nom]java ou js ?

[/citation]

java, le genre que tu compile avant d'utiliser...

[cpp]class Coor {}

class Coor1D extends Coor {

public double x;

public Coor1D (double X) {

x = X;

}

}

class Coor2D extends Coor1D {

public double y;

public Coor2D (double X, double Y) {

x = X;

y = Y;

}

}

class Coor3D extends Coor2D {

public double z;

public Coor3D (double X, double Y, double Z) {

x = X;

y = Y;

z = Z;

}

}[/cpp]

ça passe pas, ça me fait

[cpp]WireFrame3D.java [26] Coor1D(double) in Coor1D cannot be applied to ()

public Coor2D (double X, double Y) {

^

WireFrame3D.java [34] cannot resolve symbol

symbol : constructor Coor2D ()

location: class Coor2D

public Coor3D (double X, double Y, double Z) {

^

2 errors

Errors compiling WireFrame3D.[/cpp]

à mon avis je me broute quant j'essaye de dériver des classes, j'ai pas bien l'habitude :/.

Pis je cherches aussi à contraindre un tableau, genre

[cpp]class Cube {

public double [3] coor;

public double size;

}[/cpp]

mais ça a pas l'air d'être ça... des idées ? :sweat:

Posté(e)

tu cherche trop à faire de l'héritage alors que y'en a pas spécialement besoin (surtout pour des coordonnées...)

tu peux simplement mettre 3 constructeurs différents avec pour chacun 1,2 ou 3 attributs (les coordonnées)

du style

[cpp]

public class coor {

private double X,Y,Z;

public coor (double x) {

X = x;

}

public coor (double x, double y) {

X = x;

Y = y;

}

public coor (double x, double y, double z) {

X = x;

Y = y;

Z = z;

}

}[/cpp]

mais bon, si tu veux vraiment faire de l'héritage :-

Posté(e)

en fait ça m'entraine un peu à l'héritage, mais je vais y penser, ça peut le faire aussi... On m'a montré comment il fallait que je fasse:

class Coor {}

class Coor1D extends Coor {
   private double x;
   public Coor1D (double X) {
       x = X;
   }
}

class Coor2D extends Coor1D {
   private double y;
   public Coor2D (double X, double Y) {
       super(X);
       y = Y;
   }
}

class Coor3D extends Coor2D {
   private double z;
   public Coor3D (double X, double Y, double Z) {
       super(X, Y);
       z = Z;
   }
}

par contre j'ai encore besoin de toi pour autre chose: deux trois petits blèmes avec les tableaux. Je cherche à étendre de 1 la taille d'un tableau et à remplir le dernier morceau, mais j'ai pas trouvé comment manipuler des range (je sais pas si on utilise aussi ce mot en java...) de tableaux, du coup je me retrouve obligé de faire

class Scene {
   private Primitive[] _primitives;
   public void AddPrimitive (Primitive p){
       Primitive[] temp = _primitives;
       _primitives = new Primitive [_primitives.length + 1];
       for(int i = 0; i < temp.length; ++i)
           _primitives[i] = temp[i];
       _primitives[_primitives.length] = p;
   }
}

et je trouve ça très moche... y a moyen de faire autrement ?

je sais, faudrait que je me paye un bouquin de java, mais j'en ai encore pas trouvé de convenables...

Posté(e)

en général on augmente pas la taille d'un tableau :-

ca doit pas prendre plus de 4 octet dans la pile système.. donc tu crèes direct un tableau assez grand :| désolé mais j'ai jamais fait autrement.. je pensais même pas que c'était possible..

sinon fait des listes chainées.. c'est aussi sympa.. :-

Posté(e)

y a des structures de listes déjà implémentées ou faut que j'en code une à la main ?

au pire j'en code une, mais j'essaye de voir ce que j'ai le droit de faire ou pas...

Edith: le problème si je veus en coder une c'est que j'ai pas encore pensé à regarder si on pouvait manipuler des pointeurs en Java ou si j'avais pas besoin :/.

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

Chargement