Logo: Marc Harnist

Index des pages de la catégorie "Java"

Time en Java
Le 20/07/2018
Auteur: Marc L. Harnist

Extrait:

Source: https://openclassrooms.com/fr/courses/26832-apprenez-a-programmer-en-java/5013706-la-nouvelle-api-de-gestion-des-dates-de-java-8
La classe j" (Pour ouvrir l'article dans une nouvelle fenêtre, cliquez sur le titre)

Texte entier

Source: https://openclassrooms.com/fr/courses/26832-apprenez-a-programmer-en-java/5013706-la-nouvelle-api-de-gestion-des-dates-de-java-8
La classe java.time.Instant représente un point relatif au premier Janvier 1970. Elle dispose de plusieurs énumération comme Instant.EPOCH qui représente le point de départ de ce référentiel de temps, à savoir 1970-01-01T00:00:00Z. Mais aussi des méthodes comme Instant.now() qui nous donne la date exacte et d'autres méthodes comme isAfter() , isBefore, parse() ,etc...

Stream avec Java: manipulation des données
Le 19/07/2018
Auteur: Marc L. Harnist

Extrait:

Depuis Java 8
Dans package java.util.stream;
Ressemble aux requêtes sql;
Ne peux être utilisé qu'une fois après sa création;
Peux rester ouvert indéfiniment;
Intermédiaire: opérations supplémentaires simultanées avec map() et filter();
Terminale: o" (Pour ouvrir l'article dans une nouvelle fenêtre, cliquez sur le titre)

Texte entier

Depuis Java 8
Dans package java.util.stream;
Ressemble aux requêtes sql;
Ne peux être utilisé qu'une fois après sa création;
Peux rester ouvert indéfiniment;
Intermédiaire: opérations supplémentaires simultanées avec map() et filter();
Terminale: opération finale. Exemple: méthode reduce().

Exemple de code avec une "collection" que l'on peut parcourir avec "stream":
public enum Couleur {
MARRON("marron"),
BLEU("bleu"),
VERT("vert"),
VERRON("verron"),
INCONNU("non déterminé"),
ROUGE("rouge mais j'avais piscine...");

private String name = "";

Couleur(String n){name = n;}
public String toString() {return name;}
}

public class Personne {

public Double taille = 0.0d, poids = 0.0d;
public String nom = "", prenom = "";
public Couleur yeux = Couleur.INCONNU;
public Personne() { }
public Personne(double taille, double poids, String nom, String prenom, Couleur yeux) {
super();
this.taille = taille;
this.poids = poids;
this.nom = nom;
this.prenom = prenom;
this.yeux = yeux;
}

public String toString() {
String s = "Je m'appelle " + nom + " " + prenom;
s += ", je pèse " + poids + " Kg";
s += ", et je mesure " + taille + " cm.";
return s;
}
public Double getTaille() {return taille;}
public void setTaille(Double taille) {this.taille = taille;}
public Double getPoids() {return poids;}
public void setPoids(Double poids) {this.poids = poids;}
public String getNom() {return nom;}
public void setNom(String nom) {this.nom = nom;}
public String getPrenom() {return prenom;}
public void setPrenom(String prenom) {this.prenom = prenom;}
public Couleur getYeux() {return yeux;}
public void setYeux(Couleur yeux) {this.yeux = yeux;}
}


//Et une classe de test :
import java.util.Arrays;
import java.util.List;

public class TestStream {
public static void main(String[] args) {
List listP = Arrays.asList(
new Personne(1.80, 70, "A", "Nicolas", Couleur.BLEU),
new Personne(1.56, 50, "B", "Nicole", Couleur.VERRON),
new Personne(1.75, 65, "C", "Germain", Couleur.VERT),
new Personne(1.68, 50, "D", "Michel", Couleur.ROUGE),
new Personne(1.96, 65, "E", "Cyrille", Couleur.BLEU),
new Personne(2.10, 120, "F", "Denis", Couleur.ROUGE),
new Personne(1.90, 90, "G", "Olivier", Couleur.VERRON)
);
}
}

Methode Java de modification de la première lettre d'une chaîne de caractères en majuscule (ucfirst en PHP)
Le 16/07/2018
Auteur: Marc L. Harnist

Extrait:

import java.util.Scanner;

public class Test {

private static Scanner sc;

public static void main(String[] args) {

String prenom, prenom_majuscule;
char reponse = 'O';
sc = new Scanner(System.in);
while (repon" (Pour ouvrir l'article dans une nouvelle fenêtre, cliquez sur le titre)

Texte entier

import java.util.Scanner;

public class Test {

private static Scanner sc;

public static void main(String[] args) {

String prenom, prenom_majuscule;
char reponse = 'O';
sc = new Scanner(System.in);
while (reponse == 'O' || reponse == 'o')
{
System.out.println("\n\tDonnez un prénom: ");
prenom = sc.nextLine();
prenom_majuscule = ucfirst(prenom);
System.out.println("\n\tBonjour " + prenom_majuscule + ", comment vas-tu?");
reponse = ' ';

while(reponse != 'O' && reponse != 'o' && reponse != 'N' && reponse != 'n')
{
System.out.println("\n\tVoulez-vous réessayer ? (O/N)");
reponse = sc.nextLine().charAt(0);

}
}
System.out.println("\n\tAu revoir...");
}

private static String ucfirst(String chaine) {
// TODO Auto-generated method stub

return chaine.substring(0, 1).toUpperCase() + chaine.substring(1);
}

}

Lire et écriture dans des fichiers
Le 10/07/2018
Auteur: Marc L. Harnist

Avec Java comme avec PHP, on peut lire et écrire dans des fichiers. Comme avec l'ancienne version de PHP, il faut refermer le fichier à la fin du code. On dit qu'on travaille sur des "flux". On utilise beaucoup "try et catch" pour lever les erreurs.
" (Pour ouvrir l'article dans une nouvelle fenêtre, cliquez sur le titre)

Généricité en Java
Le 09/07/2018
Auteur: Marc L. Harnist

Extrait:

Permet de définir le type d'un objet: nombre ou chaîne de manière dynamique.
On ne voit pas trop l'intérêt. Mais bon, il fallait le savoir.

On utilise les caractères: < et > pour le code: ci-dessous:

Exemple
public static void main(String[] " (Pour ouvrir l'article dans une nouvelle fenêtre, cliquez sur le titre)

Texte entier

Permet de définir le type d'un objet: nombre ou chaîne de manière dynamique.
On ne voit pas trop l'intérêt. Mais bon, il fallait le savoir.

On utilise les caractères: < et > pour le code: ci-dessous:

Exemple
public static void main(String[] args) {

System.out.println("Liste de String");
System.out.println("------------------------------");
List listeString= new ArrayList();
listeString.add("Une chaîne");
listeString.add("Une autre");
listeString.add("Encore une autre");
listeString.add("Allez, une dernière");

for(String str : listeString)
System.out.println(str);

System.out.println("\nListe de float");
System.out.println("------------------------------");

List listeFloat = new ArrayList();
listeFloat.add(12.25f);
listeFloat.add(15.25f);
listeFloat.add(2.25f);
listeFloat.add(128764.25f);

for(float f : listeFloat)
System.out.println(f);
}

Collection en Java
Le 09/07/2018
Auteur: Marc L. Harnist

Extrait:

Java (et donc Eclipse) contient des classes qui permettent de lister et lire des données plus simplement qu'en tableaux (array)
Source
Une collection permet de stocker un nombre variable d'objets.
Il y a principalement trois types de collection : les List, les Set et les Map." (Pour ouvrir l'article dans une nouvelle fenêtre, cliquez sur le titre)

Texte entier

Java (et donc Eclipse) contient des classes qui permettent de lister et lire des données plus simplement qu'en tableaux (array)
Source
Une collection permet de stocker un nombre variable d'objets.
Il y a principalement trois types de collection : les List, les Set et les Map.
Chaque type a ses avantages et ses inconvénients.
Les Collection stockent des objets alors que les Map stockent un couple clé - valeur.
Pour insérez fréquemment des données en milieu de liste, utilisez une LinkedList.
Pour rechercher ou accéder à une valeur via une clé de recherche, optez pour une collection de type Map.
Pour une grande quantité de données à traiter, tournez-vous vers une liste de type Set.

Enumérations: utiliser les énumérations en Java
Le 09/07/2018
Auteur: Marc L. Harnist

Enumération est une liste de constantes.
Exemple: une liste de marque: Peugeot, Renaud, Citroen" (Pour ouvrir l'article dans une nouvelle fenêtre, cliquez sur le titre)

Utiliser les classes abstraites et les interfaces en Java
Le 09/07/2018
Auteur: Marc L. Harnist

Une classe abstraite et les interfaces ne sont pas instanciées.
Une interface est une classe abstraite qui depuis Java 8 peut contenir des methodes non abstraite" (Pour ouvrir l'article dans une nouvelle fenêtre, cliquez sur le titre)

Les packages sous java
Le 06/07/2018
Auteur: Marc L. Harnist

Extrait:

Un package est un dossier contenant tous les programmes (classes) utiles pour une application.
Il correspond à un repertoire qui contient les classes PHP qu'on appelle avec l'uploader de classes.
Avec java, on utilise le simple mot: import suivi du nom du package!
Exemple:
" (Pour ouvrir l'article dans une nouvelle fenêtre, cliquez sur le titre)

Texte entier

Un package est un dossier contenant tous les programmes (classes) utiles pour une application.
Il correspond à un repertoire qui contient les classes PHP qu'on appelle avec l'uploader de classes.
Avec java, on utilise le simple mot: import suivi du nom du package!
Exemple:
import com.animaux.comportement.*; // l'asterisque: tous les fichiers du package com.animaux.comportement.* sont importés

public class Civil extends Personnage{
public Civil() {}

public Civil(EspritCombatif esprit, Soin soin, Deplacement dep) {
super(esprit, soin, dep);
}
}

Eclipse, logiciel de codage en Java, permet la création de packages: dossiers contenants les classes dont vous aurez besoin plusieurs fois.
J'ai donc créé, pour test, un package com.classes.fonctions qui contiendra les classes "outils" ou "tools" comme celle qui pourrait afficher toutes les variables globales d'une page.
Convention de nommage:
- ils doivent être écrits entièrement en minuscules ;-
- les caractères sont alphanumériques (de a à z, de 0 à 9) et peuvent contenir des points (.) ;
- doivent commencer par com, edu, gov, mil, net, org ou les deux lettres identifiant un pays (ISO Standard 3166, 1981) ; « fr » correspond à la France, « en » correspond à l'Angleterre (pour England)etc.
- aucun mot clé Java dans le nom, sauf avec un underscore (« _ »), comme ceci : com.marc.package_.

Encapsulation sous Java
Le 06/07/2018
Auteur: Marc L. Harnist

Extrait:

En Java, comme dans beaucoup de langages orientés objet, les classes, les attributs et les méthodes bénéficient de niveaux d'accessibilité, qui indiquent dans quelles circonstances on peut accéder à ces éléments.

Ces niveaux sont au nombre de 4, correspondant à 3 mots-clés " (Pour ouvrir l'article dans une nouvelle fenêtre, cliquez sur le titre)

Texte entier

En Java, comme dans beaucoup de langages orientés objet, les classes, les attributs et les méthodes bénéficient de niveaux d'accessibilité, qui indiquent dans quelles circonstances on peut accéder à ces éléments.

Ces niveaux sont au nombre de 4, correspondant à 3 mots-clés utilisés comme modificateurs : private, protected et public. La quatrième possibilité est de ne pas spécifier de modificateur (comportement par défaut).
encapsulation.jpgencapsulation.jpg

Enum mot clef pour énumération en Java
Le 06/07/2018
Auteur: Marc L. Harnist

Extrait:

Source sur Openclassroom
L'énumération est un type de classe qui liste des objets.
public enum Langage {
//Voici la liste d'objets: c'est to" (Pour ouvrir l'article dans une nouvelle fenêtre, cliquez sur le titre)

Texte entier

Source sur Openclassroom
L'énumération est un type de classe qui liste des objets.
public enum Langage {
//Voici la liste d'objets: c'est tout simple
JAVA("Langage JAVA", "Eclipse"),
C ("Lanage C", "Code Block"),
CPlus ("Langage C++", "Visual studio"),
PHP ("Langage PHP", "PS Pad");

private String name = "";
private String editor = "";

//Constructeur
Langage(String name, String editor){
this.name = name;
this.editor = editor;
}

public void getEditor(){
System.out.println("Editeur : " + editor);
}

public String toString(){
return name;
}

public static void main(String args[]){
Langage l1 = Langage.JAVA;
Langage l2 = Langage.PHP;

l1.getEditor();
l2.getEditor();
}
}

Collections d'objets: plus fort que les arrays
Le 06/07/2018
Auteur: Marc L. Harnist

Extrait:

Java (et donc Eclipse) contient des classes qui permettent de lister et lire des données plus simplement qu'en tableaux (array)
Source
Une collection permet de stocker un" (Pour ouvrir l'article dans une nouvelle fenêtre, cliquez sur le titre)

Texte entier

Java (et donc Eclipse) contient des classes qui permettent de lister et lire des données plus simplement qu'en tableaux (array)
Source
Une collection permet de stocker un nombre variable d'objets.
Il y a principalement trois types de collection : les List, les Set et les Map.
Chaque type a ses avantages et ses inconvénients.
Les Collection stockent des objets alors que les Map stockent un couple clé - valeur.
Pour insérez fréquemment des données en milieu de liste, utilisez une LinkedList.
Pour rechercher ou accéder à une valeur via une clé de recherche, optez pour une collection de type Map.
Pour une grande quantité de données à traiter, tournez-vous vers une liste de type Set.


Il existe tout un panel de méthodes fournies avec cet objet :

add() permet d'ajouter un élément ;

get(int index) retourne l'élément à l'indice demandé ;

remove(int index) efface l'entrée à l'indice demandé ;

isEmpty() renvoie « vrai » si l'objet est vide ;

removeAll() efface tout le contenu de l'objet ;

contains(Object element) retourne « vrai » si l'élément passé en paramètre est dans l'ArrayList.

Exemple


import java.util.LinkedList;
import java.util.List;
import java.util.ListIterator;

public class Test {

public static void main(String[] args) {
List l = new LinkedList();
l.add(12);
l.add("toto ! !");
l.add(12.20f);

for(int i = 0; i < l.size(); i++)
System.out.println("Élément à l'index " + i + " = " + l.get(i));

System.out.println("\n \tParcours avec un itérateur ");
System.out.println("-----------------------------------");
ListIterator li = l.listIterator();

while(li.hasNext())
System.out.println(li.next());
}
}

Résultat:


Élément à l'index 0 = 12
Élément à l'index 1 = toto ! !
Élément à l'index 2 = 12.2

Parcours avec un itérateur
-----------------------------------
12
toto ! !
12.2

Créer un constructeur par défaut
Le 05/07/2018
Auteur: Marc L. Harnist

Extrait:

Le constructeur par défaut s'écrit simplement du nom de la classe:

Exemple:

public class Ville{

//Stocke le nom de notre ville
String nomVille;

//Stocke le nom du pays de notre ville" (Pour ouvrir l'article dans une nouvelle fenêtre, cliquez sur le titre)

Texte entier

Le constructeur par défaut s'écrit simplement du nom de la classe:

Exemple:

public class Ville{
//Stocke le nom de notre ville
String nomVille;

//Stocke le nom du pays de notre ville
String nomPays;

//Stocke le nombre d'habitants de notre ville
int nbreHabitants;

//Constructeur par défaut
public Ville(){
System.out.println("Création d'une ville !");
nomVille = "Inconnu";
nomPays = "Inconnu";
nbreHabitants = 0;

}

}

Instances de classes, encapsulation...
Le 05/07/2018
Auteur: Marc L. Harnist

Extrait:

Source: OpenClassRoom
Les classes permettent de définir des objets qui ont des attributs (variables d'instance) et des méthodes (méthodes d’instance + accesseurs).
Les objets permettent d'encapsuler (private) du code et des données.
Les constructeurs d'une classe doivent p" (Pour ouvrir l'article dans une nouvelle fenêtre, cliquez sur le titre)

Texte entier

Source: OpenClassRoom
Les classes permettent de définir des objets qui ont des attributs (variables d'instance) et des méthodes (méthodes d’instance + accesseurs).
Les objets permettent d'encapsuler (private) du code et des données.
Les constructeurs d'une classe doivent porter le même nom que la classe et n'ont pas de type de retour.
L'ordre des paramètres passés dans les constructeurs doivent être respectés.
Il est recommandé de déclarer ses variables d'instance en mode privé ("private"), pour les protéger d'une mauvaise utilisation par le programmeur ou plutôt l'utilisateur.
On crée des accesseurs et mutateurs (getters et setters, nom de ces deux méthodes en anglais) pour des modifications plus sûres des variables d'instance.
On accède aux variables d'un classe depuis l'intérieur grâce au mot clef "this".
Une variable de classe doit être déclarée "static".
Les méthodes utilisant uniquement des variables de classe doivent elles aussi être déclarées "static".
L'instanciation d'un objet se fait grâce au mot clé "new".

Console CMD: comment renseigner le chemin dans les variables d'environnement de Window
Le 27/06/2018
Auteur: Marc L. Harnist

Extrait:

variable-environnement-et-path.jpg

Chemin d'accès: Propriétés système (tapez variables d'environnement dans la recherche window)/Variables d'environnement/Path (en bas de la fenê" (Pour ouvrir l'article dans une nouvelle fenêtre, cliquez sur le titre)

Texte entier

variable-environnement-et-path.jpg

Chemin d'accès: Propriétés système (tapez variables d'environnement dans la recherche window)/Variables d'environnement/Path (en bas de la fenêtre)

Trouver le chemin %SystemRoot%\system32 et ajouter le chemin de C:\Program Files\Java\jre1.8.0_171\bin à la suite, après un point virgule. (Si le chemin de Java\jre\bin est différent, modifier)

Java fonctionne sous Linux, Windows et Mac!
Le 14/06/2018
Auteur: Marc L. Harnist

C'est tout l'avantage de Java: votre code fonctionnera sur beaucoup d'OS et de supports. Source: Openclassroom" (Pour ouvrir l'article dans une nouvelle fenêtre, cliquez sur le titre)

La puissance du logiciel "Eclipse" pour coder en Java
Le 11/06/2018
Auteur: Marc L. Harnist

Eclipse corrige automatiquement les erreurs. Au minimum, elle propose un choix de corrections.
Eclipse propose de créer elle-même les mutateurs (setters en an.) et les accesseurs (getters).
" (Pour ouvrir l'article dans une nouvelle fenêtre, cliquez sur le titre)