J'essaie d'apprendre comment fonctionnent les constructeurs et j'ai essayé de déboguer ce simple programme java mais je n'arrive pas à le faire fonctionner. Eclipse simple refuse de reconnaître sa présence et exécute simplement un projet antérieur. Toutes les idées seraient très bien accueillies - j'ai du mal à voir ce que j'ai mal fait.
package timber;
public class PersonExample {
public void main(String[] args) {
Person dave = new Person("Dave", "Davidson", "12 Main St.", "DDavidson");
dave.displayPersonDetails();
}
}
J'ai alors une deuxième classe qui contient la méthode principale
package timber;
public class Person {
private String firstName;
private String lastName;
private String address;
private String username;
public Person(String personFirstName, String personLastName, String personAddress, String personUsername)
{
firstName = personFirstName;
lastName = personLastName;
address = personAddress;
username = personUsername;
}
public void displayPersonDetails()
{
System.out.println("Name: " + firstName + " " + lastName);
System.out.println("Address: " + address);
System.out.println("Username: " + username);
}
}
4 Réponses :
could you please add static in main method :-
public static void main(String[] args) {
Person dave = new Person("Dave", "Davidson", "12 Main St.", "DDavidson");
dave.displayPersonDetails();
}
Votre méthode principale doit toujours être statique.
Voir Pourquoi la méthode principale Java statique?
Remplacer ,
public static void main(String[] args)
avec
public void main(String[] args)
p >
Votre méthode principale doit être «statique». Pourquoi? Si vous souhaitez appeler une méthode en Java, il existe deux manières
La méthode 'main', si elle n'est pas statique (comme dans votre cas), vous devez créer une instance de sa classe à appeler. Mais, où créeriez-vous une instance de cette classe, où réside votre méthode principale? Créer une autre classe et appeler à partir de là? et créer encore une autre classe pour appeler cette classe? Cela ne finira jamais. Je veux dire qu'il doit y avoir un point de départ, n'est-ce pas?
En donnant à la méthode le nom «main» et en ajoutant le mot-clé «statique» dans sa signature, vous aidez la JVM à appeler cette méthode sans avoir besoin d'un créer une instance.
Il suffit de changer
public static void main(String[] args)
en
public void main(String[] args)
merci - une erreur stupide mais je salue votre réponse rapide. Bonne année!
Je suis content. Donnez à cette réponse un vote positif, afin qu'elle puisse aider d'autres apprenants!
Tout va bien, vous venez de manquer le mot-clé statique. Au lieu de
public static void main(String[] args)
Utilisez
public void main(String [] args)
Vous devez vérifier ce que vous définissez dans le bouton d'exécution vert et le changer pour votre projet actuel. assurez-vous également que vous enregistrez votre projet avant de l'exécuter
Dans ce cas rare, une capture d'écran de votre éclipse serait utile. Essayez «Exécuter> Exécuter en tant que> Application Java»