Bonjour,
Je suis encore débutante en Java et je dois faire un exercice que je ne comprends pas trop: je vous communique l'exercice et mon travail (meme si j'ai pas fait grand chose et j'espère que vous allez m'aider pour le reste) et merci d'avance
Exercice
voici le programme source de la classe Livre:
Public class Livre
{
//données membres
private String titre, auteur;
private int nbPages;
//Constructeur
public Livre (String unAuteur, String unTitre)
{
auteur= unAuteur;
titre=unTitre;
}
//accesseur
public String getAuteur()
{return auteur;}
//modificateur
public void setNbPages (int nb)
{nbPages=nb;}}
Manipulation1
Ajouter une méthode main()pour:
*creer deux livres,
*afficher les auteurs de ces deux livres.
Maniupulation2
Modifier la classe Livre:
*Ajouter un accesseur (guetteur)pour la variable titre et la variable nbPages
*Ajouter un modificateur pour les variables auteur et titre
*changer le modificateur de nbPages: il ne doit changer le nombre de pages que si on lui passe en parametre un nombre positif,sinon il affche un message d'erreur.
Dans la methode main():
*definissez un nombre de pages pour chacun des deux livres,
*afficher ces nombres de pages
*Calculer le nombre de pages total de ces deux livres et affichez-le
Manipulation3
*ecrivez une classe TestLivre avec une seule méthode main() qui fait la meme chose que la methode main() de la classe Livre
*compiler et executer la methode main() de la classe TestLivre?
Manipulation4 methode toString()
*dans la classe Live, ajouter une methode afficheToi() qui affiche les informations concernant un livre(auteur,titre et nombre de pages).Utilisez la méthode afficheToi() dans la methode main() e testLivre.
*Ajouter l'instruction Ssytem.out.println(livre) où lel ivre désigne un des livres que vous avez crée, que se passe t'il?
*Ajouter une methode toString() qui renvoie une chaine d carateres decrivant le livre .que fait alors l'instruction Systeme .out.println(livre?).
Manipulation5:les constructeurs
Ajouter trois constructeurs dans la classe Livre:
1.sans aucun parametre donné
2.pour un auteur et un titre donne
2.pour un auteur,un titre et un nombre de pages données
utilisez ces trois constructeurs(et eventuellement d'autre methodes)pour creer trois livres de 300pages dans la methode main() de TestLivre
Manipulation6:Controle des variables private par les modificateurs
1.Ajouter un primaux livres avec 2méthodes getPrix et setPrix pour obtenir le prix et le midifier.Ajouter au moins un contructeur qui prend le prix en parametre.si le prix d'un livre n'a pas ete fixé, la description du livre(to string())devra indiquer "prix pas encore fixé".Attention, un livre peut etre gratuit.
2.On bloque completement le prix:un prix ne peut etre saisie qu'une seule fois et ne peutetre modifie ensuite(une tentative de modifier le prix ne fait quafficher un message d'erreur).
reecrivez la methde setPrix(et autres coses si besoin est).Ajoutez une methode "isPrixFixe" qui renvoie vrai si le prix a deja éte fixé.Faut'il ecrire une methode "setPrixFixe" pour modifier la variable booleenne ?
Mon travail:
class Livre
{
//données membres
private String titre, auteur;
private int nbPages;
//Constructeur
public Livre (String unAuteur, String unTitre)
{
auteur= unAuteur;
titre=unTitre;
}
//accesseur
public String getAuteur()
{return auteur;}
//modificateur
public void setNbPages (int nb)
{
if (nb>0)
nbPages=nb;
else
System.out.println("erreur");
}
//creation de deux livres et affichages de leurs auteurs
public static void main (String[]args)
{
//creation des deux livres
Livre Livre1=new Livre("auteur","titre");
Livre Livre2=new Livre("auteur","titre");
//Affichage des auteurs des deux nouveaux livres
System.out.println(Livre1.auteur);
System.out.println(Livre2.auteur);
}
//Accesseur pour la variable Livre
public String get Livre()
{
return Livre;
}
//Accesseur pour la variable NbPage
public int get NbPages()
{
return NbPages;
}
//Setteur pour la variable auteur
String set auteur (String A)
{
Auteur=A;
}
}
