2015-10-17 2 views
-3

Je suis vraiment bloqué sur ce code car je n'arrive pas à comprendre comment accéder au membre de données dans une autre classe de Java. J'ai besoin de quelqu'un pour m'expliquer cela correctement.JAVA: Comment accéder aux membres de données dans une classe séparée?

J'ai ma classe de clients avec les membres de données suivantes:

name 
startLocation 
endLocation 

Lorsque je tente d'accéder à ces données membres dans mon fichier .java séparé Je reçois des erreurs sur cette ligne:

System.out.println("Driver #" + ID + " has dropped off " + getname + " at " + getendLocation); 

Je ne peux pas avoir ce code sans amener les membres de données dans l'autre fichier .java. Quelqu'un peut-il expliquer comment je peux prendre ce code et le rendre visible dans mon fichier séparé?

public class Customer 
    { 
    private String name; 
    private String startLocation; 
    private String endLocation; 

    public Customer (String name, String startLocation, String endLocation) 
    { 
     this.name = name; 
     this.startLocation = startLocation; 
     this.endLocation = endLocation; 
    } 

    public String getname() 
    { 
     return name; 
    } 

    public String getstartLocation() 
    { 
     return startLocation; 
    } 

    public String getendLocation() 
    { 
     return endLocation; 
    } 
    } 

Maintenant, voici où je suis coincé. Quand je suis allé au centre de tutorat de mon école, l'étudiant m'a aidé à me dire que je devais faire un constructeur principal. Alors j'ai fait et c'est tout. Il m'a dit que j'avais aussi besoin d'ajouter un nom = nouveau nom, mais quand j'ai ajouté qu'il m'a soudainement dit d'oublier tout ce qu'il me disait et de revenir avec ma façon de le faire (je n'avais pas bien travaillé encore, était juste déconner). Quelqu'un peut-il finir d'expliquer ce qu'il essayait de me montrer?

public Customer() 
    { 
     this.name = name; 
     this.StartLocation = startLocation; 
     this.endLocation = endLocation; 
    } 
+0

nom de la classe doit être « Client », pas « client ». Faites attention - ces choses sont importantes. Les méthodes getter et setter sont nommées correctement, soit. Les petites choses comptent dans la programmation. – duffymo

+0

Demandez-vous comment instancier une classe, comment appeler des méthodes une instance? –

+1

'getName' et' getendlocation' sont des méthodes non variables, vous les appelez après avoir créé l'instance de 'Customer' ex: instance.getName() – sam

Répondre

0

Il y a beaucoup de problèmes ici. Commençons par les bases:

  1. Lisez quelques tutoriels sur les bases des objets Java et des méthodes d'appel. Java est sensible à la casse - vous allez avoir beaucoup de problèmes si vous ne corrigez pas cela.
  2. Votre constructeur ne fait rien d'utile, puisque vous ne transmettez pas de variables. Tout est nul.

Votre code qui l'utilise ressemblera à quelque chose comme ceci:

Customer c = new Customer("Jaime", "start", "end"); 
System.out.println(c.getName()); 
+0

Ouais désolé à ce sujet. J'ai manqué le C quand je le re-tapais dans mon navigateur. Cette partie est correcte dans mon code. Et je reçois leurs informations d'un autre fichier. J'ai les fichiers Dispatcher.java, Driver.java et Customer.java. Le Dispatcher demande leurs informations et je voulais créer la classe Customer où elle finit. Mais merci de me pointer vers des objets. J'ai continué à googler sur le passage des membres de données et les résultats étaient tous des déchets. Au moins maintenant je sais ce qu'il faut chercher. –