Classe personne erreur comprend pas merci de m aider
djterrence
Messages postés19Date d'inscriptionsamedi 8 avril 2006StatutMembreDernière intervention16 avril 2006
-
12 avril 2006 à 23:05
djterrence
Messages postés19Date d'inscriptionsamedi 8 avril 2006StatutMembreDernière intervention16 avril 2006
-
13 avril 2006 à 20:54
Bon je vais y aller classe par classe alors dans la classe personne avec pour descriptif celui-ci
La classe Personne
Description
Cette classe gère les informations de la personne. Cette classe est publique, les constantes, si elles existent, doivent avoir une portée de type package (aucun modificateur), les attributs d'instance sont privés et toutes les méthodes sont publiques.
Attributs d'instance
String nom // nom de la personne
String prenom // prénom de la personne
int age // âge de la personne
String numeroPermisConduire // numéro de permis de conduire de la personne
Date dateExpirationPermis // date d'expiration du permis de la personne
Constructeur
Personne() // sans arguments
Personne(String pNom, String pPrenom, int pAge, String pNumeroPermisConduire,
Date pDateExpirationPermis) // avec arguments
Méthodes d'instance
Toutes les méthodes accesseurs et mutateurs (getters et setters) pour tous les attributs d'instance.
void afficher()
Permet d'afficher toutes les informations de la classe Personne
Code:
/**
* Write a description of class Billet here.
*
* @author (your name)
* @version (a version number or a date)
*/
public class Personne
{
// les variables d'instance sont générées pour chaque
// chaque objet de la classe
//attributs d'instrance
private String nom; // nom de la personne
private String prenom; // prenom de la personne
private int age; // age de la personne
private String numeroPermisConduire; // numero de permis de conduire de la personne
private Date dateExpirationPermis; // date d'expiration du permis de la personne
/**
* chaque constante de classe est partagée entre toutes les instances
* chaque constante est invariable (final pas modifiable)
* */
private final static String NOM = "\n Nom\t\t: " ;
private final static String PRENOM = "\n Penom\t\t: " ;
private final static int AGE = "\n Age\t\t: " ;
private final static String NUMEROPERMISCONDUIRE = "\n NumeroPermisConduire\t\t: " ;
private final static Date DATEEXPIRATIONPERMIS = "\n DateExpirationPermis\t\t: " ;
// constructeur de classe sans paramètre
public Personne()
{
nom = "";
prenom = "";
age = "";
numeroPermisConduire="";
dateExpirationPermis="";
}
// constructeur de classe avec arguments
/*********************************************************************
* But : Permet d'initialiser le nom du client
* * @param p_nom le nom du client
*********************************************************************/
public void setNom (String p_nom)
{
nom = p_nom ;
}
/*********************************************************************
* But : Permet d'initialiser le Prenom du client
* * @param p_nom le nom du client
*********************************************************************/
public void setPrenom (String p_prenom)
{
prenom = p_prenom ;
}
/*********************************************************************
* But : Permet d'initialiser le Prenom du client
* * @param p_nom le nom du client
*********************************************************************/
public void setAge (int p_age)
{
age = p_age ;
}
/*********************************************************************
* But : Permet d'initialiser le Prenom du client
* * @param p_nom le nom du client
*********************************************************************/
public void setNumeroPermisConduire (String p_numeroPermisConduire)
{
numeroPermisConduire = p_numeroPermisConduire;
}
/*********************************************************************
* But : Permet d'initialiser le Prenom du client
* * @param p_nom le nom du client
*********************************************************************/
public void setDateExpirationPermis (Date p_dateExpirationPermis)
{
dateExpirationPermis = p_dateExpirationPermis ;
}
/*********************************************************************
* But : Permet de consulter ou obtenir le Nom du client
* @return nom nom du client
*********************************************************************/
public String getNom()
{
return nom ;
}
/*********************************************************************
* But : Permet de consulter ou obtenir le Prenom du client
* @return prenom prenom du client
*********************************************************************/
public String getPrenom()
{
return prenom ;
}
/*********************************************************************
* But : Permet de consulter ou obtenir l'age du client
* @return age age du client
*********************************************************************/
public int getAge()
{
return Age ;
}
/*********************************************************************
* But : Permet de consulter ou obtenir le numero de Permis de Conduire du client
* @return numeroPermisConduire numeroPermisConduire du client
*********************************************************************/
public String getNumeroPermisConduire()
{
return numeroPermisConduire ;
}
/*********************************************************************
* But : Permet de consulter ou obtenir la date d' expiration du Permis du client
* @return dateExpirationPermis dateExpirationPermis du client
*********************************************************************/
public String getDateExpirationPermis()
{
return dateExpirationPermis;
}
/*********************************************************************
* But : Permet d'afficher les informations concernant une instance
* de la Classe Personne
*********************************************************************/
public void afficher ()
{
System.out.println(" Voici les informations du client ");
System.out.println(NOM + nom + PRENOM + prenom + AGE + age + NUMEROPERMISCONDUIRE + numeroPermisConduire + DATEEXPIRATIONPERMIS + dateExpirationPermis);
}
/*********************************************************************
* But : Instanciation et Invocation des méthodes
*********************************************************************/
public static void main(String[] args) {
// Déclaration des variables
String nom; // nom de la personne
String prenom; // prenom de la personne
int age; // age de la personne
String numeroPermisConduire; // numero de permis de conduire de la personne
Date dateExpirationPermis; // date d'expiration du permis de la personne
// Bloc de saisie
System.out.print(" Entrez le Nom du client : ");
nom = Console.saisirString();
System.out.println();
System.out.print(" Entrez le Prenom du client : ");
prenom = Console.saisirString();
System.out.println();
System.out.print(" Entrez l'age du client : ");
age = Console.saisirInt();
System.out.println();
System.out.print(" Entrez le numero de permis de conduire du client : ");
numeroPermisConduire = Console.saisirString();
System.out.println();
System.out.print(" Entrez la date d'expiraion du permis de conduire du client : ");
numeroPermisConduire = Console.saisirDate();
System.out.println();
// Création d'une instance
Personne unePersonne = new Personne(nom,prenom,age,numeroPermisConduire,dateExpirationPermis);
// Affichage des informations du livre
unePersonne.afficher();
}
}
il y a des erreux qui sont dans ce cas
premiere erreur type "incompatible types -found java.lang.sting but expected int"
private final static int AGE = "\n Age\t\t: " ;
private final static Date DATEEXPIRATIONPERMIS = "\n DateExpirationPermis\t\t: " ;
mais est ce que mon code est bon selon le desciptif aussi vous pensez ??? c'est ca aussi que j ai peur et que je me retrouve hors sujet ???
A voir également:
Classe personne erreur comprend pas merci de m aider
hlimaiem
Messages postés106Date d'inscriptiondimanche 19 mars 2006StatutMembreDernière intervention17 janvier 2007 13 avril 2006 à 01:53
Limaiem heykel,
La premiere chose dans ton code et de creer un constructeur
public Personne(String nom, String prenom,String age, int numeroPermisConduire,Date dateExpirationPermis )//bon pour la date tu choisi ton type
{
this.nom = nom ;
this.prenom =prenom;
this.age = age;
this.numeroPermisConduire=numeroPermisConduire;
this.dateExpirationPermis= dateExpirationPermis;
}
apres tu initialise tes get. comme ca t'est sur que tes paramtere son passer a ta classe personne
Dans void afficher
System.out.println("NOM" + nom +" PRENOM "+ prenom +" AGE" + age +
"NUMEROPERMISCONDUIRE "+ numeroPermisConduire + "DATEEXPIRATIONPERMIS "+
dateExpirationPermis);// tu ajoute les " "pour les textes
private final static String NOM = "\n Nom\t\t: " ;
private final static String PRENOM = "\n Penom\t\t: " ;
private final static int AGE = "\n Age\t\t: " ;
private final static String NUMEROPERMISCONDUIRE = "\n NumeroPermisConduire\t\t: " ;
private final static Date DATEEXPIRATIONPERMIS = "\n DateExpirationPermis\t\t: " ;
Ces attribut statique a koi vous servent dont ton projet je ne vois pas l'utiliter.
Sinon dans la ligne d'erreur:
private final static int AGE = "\n Age\t\t: " ;
private final static Date DATEEXPIRATIONPERMIS = "\n DateExpirationPermis\t\t: " ;
tu declare un entier age ??? et tu lui ajoute \n un entier avec retour a la ligne??????????? type incompatible {erreur} de meme pour la dateexpiration...
Les attributs static final ne peuvent pas etre modifier d'apres leur declaration mais ce que je vois dont ton programme tu n'on a pas besoin. utilise les comme des instance d'un objet.
pour la lecture depuis un clavier voici un bout de code que tu inserre pour recupperer l'entree clavier:
import java.io.*;// tu importe le io
...
public static void main (String [] args){
BufferedReader clavier = new BufferedReader(new InputStreamReader(System.in)))
System.out.print(" Entrez le Nom du client : ");
nom = clavier.readLine();
System.out.println();
System.out.print(" Entrez le Prenom du client : ");
nom = clavier.readLine();
}
Si vous n'arriverai pas a resoudre d'autre problemes copier moi le code de la classe indexer par des numero pour chaque ligne(c'est plus rapide pour moi) et copier l'erreur exacte que vous aurrez.
Bonne chance
ObiWanKennedy
Messages postés60Date d'inscriptionlundi 17 février 2003StatutMembreDernière intervention29 octobre 20101 13 avril 2006 à 13:50
je dirais même plus
System.out.println("NOM " + nom +" PRENOM "+ prenom +" AGE = " + age +
"Numero de permis de conduire "+ numeroPermisConduire + "DATE d'EXPIRATION de son permis "+ dateExpirationPermis);
ça sera déja plus lisible.
sinon pour faire un code propre au niveau algo je pense que ton
constructeur sans paramètre il vaudrais mieux mettre tes valeurs a null
pour les chaines et les dates et 0 pour les entiers. au même
encore tu peux le laisser vide mais apres il te fodra faire des tests
car si tu affiche tes champs de ta classe il ne faut pas qu'il soit
vide sinon "java.lang.NullPointerException" .