Je viens de commencer à apprendre Java désolé si c'est une question noob mais j'ai traversé chaque ligne de code et je ne comprends pas ce qui ne va pas. Le code provient du livre "Java en 24 heures".Impossible de trouver la variable z (3D Points - Java 24 heures)
Le but du code est de prendre un point 2D et 3D de départ, puis de les déplacer et de les traduire. D'abord, il me demande de faire une classe de points 3D:
package com.java24hours;
import java.awt.*;
public class Point3D extends Point
{
public int z;
public Point3D(int x, int y, int z)
{
super(x,y);
this.z = z;
}
public void move(int x, int y, int z)
{
this.z = z;
super.move(x,y);
}
public void translate(int x, int y, int z)
{
this.z += z;
super.translate(x,y);
}
}
Il appelle ensuite pour une classe de testeur qui utilise le Points3D pour se déplacer et traduire les points 3D:
package com.java24hours;
import java.awt.*;
class PointTester
{
public static void main(String[] arguments)
{
Point location1 = new Point(11,22);
Point location2 = new Point3D(7,6,64);
System.out.println("The 2D point is at ("+location1.x + "," + location1.y +")");
System.out.println("It's being moved to (4,11)");
location1.move(4,11);
System.out.println("The 2D point is now at (" + location1.x + "," + location1.y + ")");
System.out.println("It's now being moved -10 in both the x and y axis");
location1.translate(-10,-10);
System.out.println("The 2D point is now at (" + location1.x +"," + location1.y + ")\n");
System.out.println("The 3D point is at (" + location2.x + "," + location2.y + "," + location.z + ")");
System.out.println("It's being moved to (10,22,71)");
location2.move(10,22,71);
System.out.println("The 3D point is now at (" + location2.x + "," + location2.y + "," + location2.z + ")");
System.out.println("It's now going to be moved -20 units in the x y and z axis");
location2.translate(-20,-20,-20);
System.out.println("It's now at (" + location2.x + "," + location2.y + "," + location2.z + ")");
}
}
Cela crée les erreurs suivantes les lignes avec location2.z:
ne peut pas trouver déplacer méthode symbole ne peut pas être appliqué à la méthode des types données ne peuvent pas être translate appliquée à des types donnés
Source est ici: https://www.informit.com/library/content.aspx?b=STY_Java2_24hours&seqNum=140
C'est à peu près ce qu'il devrait me donner (je l'ai changé une partie du libellé):
The 2D point is located at (11, 22)
It's being moved to (4, 13)
The 2D point is now at (4, 13)
It's being moved -10 units on both the x and y axes
The 2D point ends up at (-6, 3)
The 3D point is located at (7, 6, 64)
It's being moved to (10, 22, 71)
The 3D point is now at (10, 22, 71)
It's being moved -20 units on the x, y and z axes
The 3D point ends up at (-10, 2, 51)
Je pense que ma confusion est que je déclarai la variable z dans le Point3D class, j'ai créé le newPoint3D qui a accepté trois variables, et puis quand j'essaie d'utiliser la troisième variable plus tard, il ne peut pas le trouver.
Merci
déclarer la variable comme 'Point3D location2'. –