Bonjour, il y a une partie du cours que je ne comprends pas et je n'arrive pas à trouver l'explication dans le dit cours : sauf erreur de ma part tu commences à utiliser this.variable dans la partie héritage. Autant je comprends l'utilité de this.methode() à l'intérieur de la classe implémentant methode() (et encore certaine fonctionnent sans l'utilisation du this. comme http://openclassrooms.com/courses/apprenez-a-programmer-en-java/notre-premiere-fenetre#/id/r-2182704) mais pour les variables je ne comprends pas. Pourrait-on m'éclairer sur ce point ? Quand faut-il absolument utiliser this.methode() et this.variable ? Pourquoi l'utiliser quand ce n'est pas nécessaire ?
je voudrais manipuler des nombres de très larges valeurs. Mais la valeur maximum en Java est celle du type double :1.79769313486231570e308 alors quoi faire?
If you think my french is weird then you gotta hold your laughing while hearing me speaking in it :p
Le problème c'est que j'ai besoin de faire des calculs et aussi utiliser des fonctions de la classe Math. Je veux calculer 2 puissance n tel que n dépasse la limite des valeurs des types primaires.
If you think my french is weird then you gotta hold your laughing while hearing me speaking in it :p
j'ai une erreur lorsque je lance eclipse sous mon MAC OS X:
Version 1.6.0_65 of the JVM is not suitable for this product.
ALors que j'ai installé jre 8u45, je précise que lors du lancement d'eclipse, j'ai l'impression que ça réinstalle une autre version de jre.
Que dois je faire?
Merci d'avance.
Finalement j'ai installé le jdk et je n'ai plus de problème, j'imagine que c'était un problème de chemin mal renseigné mais je ne sais même pas ou était installé jre sous mon mac.
Si quelqu'un sait me répondre comme il falait faire, je suis preneur.
Bonjour, je viens seulement de finir le premier TP du cours (le convertisseur de températures) et j'ai un petit souci : je n'arrive pas à comprendre pourquoi je ne peux pas rentrer de température qui ne soit pas un entier alors que j'ai bien déclaré la variable stockant la température comme un double... Voici mon code, si ça peut aider :
import java.util.Scanner;
public class TPCelsiusFahrenheit {
public static void main(String[] args) { // TODO Auto-generated method stub Scanner sc=new Scanner(System.in); char conversion=' ',reponse=' '; double temperatureAConvertir, temperatureConvertie; do{ do{ System.out.print("Choisissez la conversion à effectuer \n"); System.out.print("1-Celsius à Fahrenheit \n"); System.out.print("2-Fahrenheit à Celsius \n"); conversion=sc.nextLine().charAt(0); if(conversion != '1' && conversion != '2') System.out.print("Choisissez une conversion proposée \n"); }while(conversion != '1' && conversion != '2'); System.out.print("Indiquez la température à convertir \n"); temperatureAConvertir=sc.nextDouble(); sc.nextLine(); if (conversion=='1'){ temperatureConvertie=((9.0/5.0)*temperatureAConvertir)+32.0; System.out.print(temperatureAConvertir + "°C correspond à " + temperatureConvertie + "°F \n"); } if (conversion=='2'){ temperatureConvertie=(temperatureAConvertir-32.0)*(5.0/9.0); System.out.print(temperatureAConvertir + "°F correspond à " + temperatureConvertie + "°C \n"); } do{ System.out.print("Voulez-vous: \n O-Recommencer \n N-Quitter \n"); reponse=sc.nextLine().charAt(0); }while(reponse!='O' && reponse!='N'); }while(reponse=='O'); System.out.print("Au revoir !"); } }
@CPython : Tu peux entrer des nombres décimaux à convertir mais, bien que ton code prenne un point à la place d'une virgule, les informations que tu rentres dans la console utilisent une virgule (je ne sais pas pourquoi, mais j'ai remarqué ça). Si tu mets un point, Java va reconnaître une String alors que tu utilises nextDouble().
EN résumé quand tu veux entrer des doubles par la console, utilise la virgule et non le point !
@MrPotatow : Pour l'instant, j'ai des difficultés avec Eclipse. Mon problème c'est que je ne suis pas bilingue.
Comment coder si je ne comprends pas toutes les fonctionnalités d'Eclipse?
En fait, je n'ai pas la console tout le temps et j'aimerais bien comprendre pourquoi ?
Si je me fixe uniquement sur les cours et que j'abandonne Eclipse cela va me poser problème ?
Et de ne pas comprendre Eclipse, cela finit par m'énerver. Je finis peut-être par prendre le problème du mauvais côté et ne plus faire les bons choix pour y arriver avec Java.
@afournier : Je pense que tout est rouge car tu n'as pas récupéré les classes que tu utilises dans ta méthode main.
Concernant la console, lorsque tu exécuteras le code, elle s'affichera, ne t'inquiète pas mais tu tiens absolument à l'avoir tout le temps c'est dans "Windows/show view/console".
Cependant, je rejoins MrPotatow, tu brules clairement des étapes et ton problème est très révélateur de cet état de fait.
Je rencontre une difficulté dans le TP de la semaine deux. Les <Option> du Vehicule sont géré par une interface.
Dans l'exemple sur les interface du cours les différentes "options" n'affiche que du texte. Dans le cas présent elle doivent ajouter une option
Or on a une méthode addOption dans la Classe véhicule, du coup je tourne en rond je ne sais pas que mettre dans mes méthode d'interface, du coup mon soft me dit qu'il ne peu pas initialisé les éléments.
voici mon code
// main.java
import fr.mooc.vehicule.*;
import fr.mooc.moteur.*;
public class main
{
public static void main(String[] args)
{
// TODO Auto-generated method stub
MoteurHybride Test = new MoteurHybride("ESSENCE/Electrique", 12345.95d);
System.out.println(Test);
Vehicule lag1 = new Lagouna();
lag1.setMoteur(new MoteurEssence("150 Chevaux", 10256d));
lag1.addOption(new GPS());
System.out.println(lag1);
}
}
Ma classe vehicule
package fr.mooc.vehicule;
import java.util.LinkedList;
import java.util.List;
import fr.mooc.moteur.*;
public abstract class Vehicule implements Option
{
protected double prix;
protected String nom;
//protected Option opti;
protected List options = new LinkedList();
protected Marque nomMarque;
protected Moteur moteur;
public Vehicule()
{
this.prix = 0;
this.nom = "Tuture";
this.nomMarque = null;
}
public String toString()
{
String str = new String();
str = nomMarque + " " + nom + " Prix : " + prix + "\n Avec un moteur " + moteur;
for(int i = 0; i < options.size(); i++)
{
str += "option : " + options.get(i);
}
return str;
}
public void addOption(String opt)
{
options.add(opt);
}
public Marque getMarque()
{
return this.nomMarque;
}
public List getOptions()
{
return this.options;
}
public double getPrix()
{
return this.prix;
}
public void setMarque(Marque marque)
{
this.nomMarque = marque;
}
public void setMoteur(Moteur moteur)
{
this.moteur = moteur;
}
public void GPS()
{
}
public void Climatisation()
{
}
public void BarreDeToit()
{
}
public void SiegeChauffant()
{
}
public void VitreElectrique()
{
}
}
Et mon interface option
package fr.mooc.vehicule;
public interface Option
{
// public Double getPrixOption();
public void GPS();
public void Climatisation();
public void BarreDeToit();
public void SiegeChauffant();
public void VitreElectrique();
}
De plus dans le diagramme fourni comme base pour le TP il est fait référence a une méthode getPrix(): Double
Je ne comprend pas trop comment l'implémenté car dans le principe des interfaces elle rentre en conflit avec getPrix de vehicule.
Voici mon erreur
Exception in thread "main" java.lang.Error: Unresolved compilation problem:
GPS cannot be resolved to a type
at main.main(main.java:17)
Bonjour, j'ai un problème avec la partie 1 sur la class Scanner, pour lire les entrée clavier. Je ne comprend pas le principe de la "tête de lecture" si quelqu'un pouvait m'éclairer ça m'aiderait beaucoup !
Juste un petit post pour te remercier de ton cours ! Je viens de terminer la partie 1, je me suis bien éclaté c'était très enrichissant. Je voulais faire une leçon par jour, je suis tellement à fond que j'en fait deux par jour
Bonjour, il y a quelque chose que je ne comprends pas dans la partie sur les interfaces.
En fait on nous dit que sans les interfaces on placerait nos méthodes dans la classe fille mais que ce ne serait pas bon, et plus loin dans le cours à la fin il implémente les méthodes contenues dans l'interface parente dans la classe fille ce qui revient exactement au même. Du coup je vois pas bien l'intérêt du concept. Autant les implémenter directement dans la classe fille sans créer d'interfaces.
Petite question surement très simple sur la partie 2, l'héritage. Est-ce que les classes héritées (par ex ici la Capitale) doit être codée dans le cadre d'une nouvelle classe ou est-ce que mettre tout le code (constructeur, méthodes...) tout en bas du code de la classe mère Ville est la bonne manière de procéder ?
j’essaie de lire le cours et de le comprendre ce qui n'est pas facile c'est la premier fois que je fait de la programmation, je doit avoué que je suis un peut perdu je suis dans le chapitre 3 "lire les entrées clavier" mais je bug au début parce que je ne comprend ce que veut dire " créez une nouvelle classe et tapez cette ligne de code dans votre méthode main " ? Que veut dire méthode main ??
Edit : je suis un boulet j'ai trouvé la réponse ici : https://openclassrooms.com/forum/sujet/besoin-d-explication-niveau-debutant
Bonjour, je débute en java et en programmation. j'ai besoin de plus amples explications concernant la création de la méthode parcourir tableau de la première partie.
Je travaille actuellement sur une IHM développé en JAVA. Je dois refactorer le code et le transformer en pattern MVC.
L'application contient plusieurs packages (actionsboutons, actionsmenu, interfacegraphique, receptiontrame ...).
Merci de m'orienter sur quelques pistes suivant les questions ci-dessous selon votre expérience:
-est-ce je dois créer 3 packages (modèle, vue et contrôleur) et repartir tous les classes la-dedans?
-le package actionsboutons contient les classes d'écoute des boutons que l'ihm contient, ces derniers sont l'extension de la classe AbstractAction. De ce fait, est-ce que ce package appartient au modèle ou bien au contrôleur car il contient les traitements enclenchés après les cliques sur les boutons. Est-ce que je dois rapporter des changements, genre MVC n'acceptent pas AbstractAction?
- J'en ai aussi un package "dessin" contenant des graphiques qui se dessinent dans le canvas de l'ihm, la même question précédente, je dois les répartir où exactement?
-Quelqu'un aurait la possibilité de publier un exemple bien évolué sur le pattern MVC en java car tous les exemples que j'ai récupérés sur Internet sont de base.
bonjour a vous je suis un apprenant java j'ai un problème. lorsque je met dans tous les programmes que fait un nombre décimal on me renvoie une erreur "java.util.InputMismatchException" comme faire sans le try catch pour le resoudre
apres m'etre noyé à chercher à pondre un code correspondant aux exigences de l' UML (meme le "main" fourni n'est pas compatible...) du P2PA (tp garage chapitre2), me voilà en correction.
quel est ce retour en console lors de l'affichage du garage ?
garage.Garage@659e0bfd garage.Garage@659e0bfd
je suppose que c'est faute d'avoir un toString() declaré pour le garage ?
du coup j'ne sais pas trop quoi mettre en note " sauvegarde & chargement ", puisqu'il y'a bien quelque chose de lu, et une sauvegarde crée...
import java.util.LinkedList;
import java.util.List;
public class Garage {
private List<Vehicule> garage = new LinkedList<Vehicule>();
public void addVoiture(Vehicule pVehicule) {
garage.add(pVehicule);
io.saveVehicule(pVehicule);
}
}
avec la classe lecture/enregestrement..
public class io {
public static void recupGarage() throws FileNotFoundException, IOException{
ObjectInputStream ois;
try {
//On récupère maintenant les données !
ois = new ObjectInputStream(
new BufferedInputStream(
new FileInputStream(
new File("garage.txt"))));
try {
System.out.println("GARAGE:");
System.out.println("*************************\n");
System.out.println(((Vehicule)ois.readObject()).toString());
System.out.println(((Vehicule)ois.readObject()).toString());
System.out.println(((Vehicule)ois.readObject()).toString());
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
ois.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} }
public static void saveVehicule(Vehicule toSave){
ObjectOutputStream oos;
try {
oos = new ObjectOutputStream(
new BufferedOutputStream(
new FileOutputStream(
new File("garage.txt"))));
oos.writeObject(toSave);
//Ne pas oublier de fermer le flux !
oos.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
donc deux question, est ce bien sauvegardé & chargé, et qu'est ce que ce retour ?
bon, ce n'est plus d'actualité puisque j'ai du retourner une note, mais la question de " à quoi correspond ce retour ? " reste valide.
Cependant, m'apercevant ne pas etre le seul avec une interrogation sans reponses, une autre question vient s' y greffer...
Est ce que personne ne lit ce forum ? ou les personne qualifié en JAVA l'on juste déserté ? ou peu etre me suis je juste trompé d'endroit où demander ?
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
ndohvich