Overblog Suivre ce blog
Administration Créer mon blog
8 avril 2008 2 08 /04 /avril /2008 13:33
Repost 0
Published by David Gimelle - dans SCJP
commenter cet article
22 mars 2008 6 22 /03 /mars /2008 23:19

Comment utiliser la classe NavigableMap ? NavigableMap est une des nouveautés de SCJP 6.

Cette classe est la version Map de NavigableSet que nous avons vu le 1 Mars : Billet sur NavigableSet

NaviableMap est une map dans laquel il est possible de naviguer.
 
Voici un petit programme d'exemple d'utilisation de NavigableMap.

public class TestNavigableMap {
public
static void main(String[] args) {

System. out.println("Test TutoSCJP6 NavigableMap");

NavigableMap<String, String> navigableMap =
new
TreeMap<String, String>();
navigableMap.put(
"Moose", "Elan"
);
navigableMap.put(
"Reinder", "Renne"
);
navigableMap.put(
"Beaver", "Castor"
);
navigableMap.put(
"Bear", "Ours"
);
navigableMap.put(
"Whale", "Baleine"
);

String first = navigableMap.firstKey();
String last = navigableMap.lastKey();
String floor = navigableMap.floorKey(
"R"
);

SortedMap<String, String> headMap = navigableMap.headMap(
"Bear"
);
System.
out
.println("first:" + first);
System.
out
.println("last:" + last);
System.
out
.println("floor:" + floor);

for (String key : headMap.keySet()) {
System.
out
.println("Head Set:" + key + "-" + headMap.get(key));
}
}
}


Ce programme a été testé avec Windows Vista, Java 1.6.0_04 le 22/03/2008

 Liens
La javadoc de NavigationMap : http://java.sun.com/javase/6/docs/api/java/util/NavigableMap.html

Repost 0
Published by David Gimelle - dans SCJP
commenter cet article
11 mars 2008 2 11 /03 /mars /2008 02:13
Etudions un peu la partie de SCJP 6 relative à la gestion de la memoire. 

Dans le programme de SCJP 6 il est écrit : "Given a code example, recognize the point at which an object becomes eligible for garbage collection, determine what is and is not guaranteed by the garbage collection system, and recognize the behaviors of the Object.finalize() method. "

En java, les objets en fin de vie sont geré par le garbage Collection. C'est ce processus qui va detecter les objets à supprimer automatiquement. Le comportement du garbage collection respecte ces 3 regles :

- Un objet devient eligible au garbage collector quand il n'est plus referencé par un autre objet.
- Le system ne garantie pas quand la garbage collection sera appelé pour detruire l'objet, ni meme que l'objet sera detruit.
- Le system garantie que la methode finalize sera appelé une fois et une seul fois avant de detruire l'objet.

Liens
La javadoc de object.finalize() : http://java.sun.com/javase/6/docs/api/java/lang/Object.html#finalize
Une doc en francais sur la memoire en java : http://gfx.developpez.com/tutoriel/java/gc/
Une doc de sun sur le garbage collector : http://java.sun.com/docs/books/tutorial/java/javaOO/usingobject.html
Repost 0
Published by David Gimelle - dans SCJP
commenter cet article
1 mars 2008 6 01 /03 /mars /2008 01:26

Comment utiliser la classe NavigableSet ? NavigableSet est une des nouveautés de Java 6 et de SCJP 6.

NavigableSet est un Set dans lequel il est possible de naviguer et d'extraire simplement des sous-ensembles.

Par exemple:
 - Les methodes first et last permettent d'obtenir le premier et le dernier element du Set. Le classement se fait grace à la methode CompareTo des elements ou aux methodes de Comparable.

- La methode floor(String s) retourne le premier element après la valeur de s.
 
Voici un petit programme d'exemple d'utilisation de NavigableSet.

package com.getj2ee.tutoscjp6;

import java.util.NavigableSet;
import java.util.TreeSet;

public class TestNavigableSet {

 public static void main(String[] args) {
  System.out.println("Test TutoSCJP6 NavigableSet");
  
  NavigableSet<String> navigableSet = new TreeSet<String>();
  
  navigableSet.add("Pierre");
  navigableSet.add("Paul");
  navigableSet.add("Jacque");
  navigableSet.add("Yves");
  navigableSet.add("Xavier");
  
  String first = navigableSet.first();
  String last = navigableSet.last();
  String floor = navigableSet.floor("Pa");
  NavigableSet<String> headSet = navigableSet.headSet("Paul",false);
  
  System.out.println("first:"+first);
  System.out.println("last:"+last);
  System.out.println("floor:"+floor);
  for (String string : headSet) {
   System.out.println("Head Set:"+string);
  }
 }

}

Ce programme a été testé avec Windows Vista, Java 1.6.0_04 le 02/02/2008

Liens
La javadoc de NavigationSet : http://java.sun.com/javase/6/docs/api/java/util/NavigableSet.html
Le tuto de rosindia : http://www.roseindia.net/java/jdk6/NavigableSetExample.shtml
Repost 0
Published by David Gimelle - dans SCJP
commenter cet article
19 février 2008 2 19 /02 /février /2008 23:55

Comment utiliser la classe java.io.Console ?

La classe Console permet la saisie de caracteres par l'utilisateur de la console.

Voici un petit programme de test de la classe Console. Ce programme est à lancer depuis une console ! Et non depuis eclipse ou netbeans. ;-) Car la console d'eclipse n'est pas interactive.

package com.getj2ee.tutoscjp6;
import java.io.Console;

/**
* Test java.io.Console
* @author davidgimelle - 02/02/2008

*/
public class TestConsole {

public static void main(String[] args) {
System.out.println("Test TutoSCJP6");
Console console = System.console();

// Test if console exist
if (console == null)
System.out
.println("Error - console is null! :-(. "+

"For use the Console class you need launch"+
" the java programme from a console!"+
" Not from a EDI like eclipse or netbeans. "+
"See : http://java.sun.com/javase/6/docs/api/java/io/Console.html");

// Print a message in the console
console.printf("OK - The Console is ready %n", "");

// Read a line in the console
String oneLine = console.readLine();
System.out.println("OK - read this line : " + oneLine);
}


}


Ce programme a été testé avec Windows Vista, Java 1.6.0_04 le 02/02/2008

Astuce
- Pour ceux qui ont oublié comment on lance un programme java depuis une console :
c:/projeteclipse/tutoscjp6/bin> java com.getj2ee.tutoscjp6.TestConsole
- Pour verifier que le jre courant est bien java 6
c:>java -version

Liens
La classe Console : http://java.sun.com/javase/6/docs/api/java/io/Console.html
La classe Console dans le tutorial Java de Sun : http://java.sun.com/docs/books/tutorial/essential/regex/test_harness.html

Repost 0
Published by David Gimelle - dans SCJP
commenter cet article
6 février 2008 3 06 /02 /février /2008 00:25

Fin 2007 est sortie la nouvelle certification Sun Certified Programmer for the Java Platform, Standard Edition 6 (CX-310-065) ou SCJP 6.


Quelle sont les différences entre SCJP 5 et SCJP 6 ?

Aprés avoir comparé les 2 programmes, j'ai trouvé 4 différences seulement:

1- Utilisation de la classe Console

2- L'overridden de méthode

3 -Utilisation de NavigableSet et NavigableMap

4 -Abandon de System.gc() et ajout de Object.finalize()

Liens:
- Le programme de SCJP 5 : http://www.sun.com/training/catalog/courses/CX-310-055.xml

-Le programme de SCJP 6 : http://www.sun.com/training/catalog/courses/CX-310-065.xml

- Le tutorial de Vincent Brabant sur les certifications java :http://brabant.developpez.com/guide/certification/java

Repost 0
Published by David Gimelle - dans SCJP
commenter cet article

Summary

  • : GetJ2ee -Java development
  • : Articles about Java and EE
  • Contact

Profil

  • David Gimelle
  • Java Developer for more 10 years. I worked in France, Canada and Switzerland. I am contractor in London since 2010.
  • Java Developer for more 10 years. I worked in France, Canada and Switzerland. I am contractor in London since 2010.

Contact

You can contact me here

or by Twitter

Search

Archives