Download e-booknya dimana? free engga?

 Sincerely,
Martin




________________________________
From: Samuel Franklyn <[EMAIL PROTECTED]>
To: jug-indonesia@yahoogroups.com
Sent: Wednesday, 12 November, 2008 16:08:33
Subject: Re: [JUG-Indonesia] Tanya Singleton


irfani YangBaikHati wrote:
> baru tau saya. nice input pak.

Kalau mau lebih detail bisa baca di Effective Java
Second Edition nya Joshua Bloch.

> 
> Arif Rachim wrote:
>> http://en.wikipedia .org/wiki/ Singleton_ pattern#Java
>> Di java 5 pattern diatas sudah masuk TONG SAMPAH !!!
>>
>> Untuk meng guarantee bahwa object di java di singleton adalah 
>> menggunakan ENUM !! sebab specifikasi jvm, bertanggung jawab bahwa 
>> hanya akan ada 1 instance java enum.
>>
>> Pattern singleton seperti dibawah ini :
>>
>> public class Elvis{
>> private Elvis(){}
>> private static Elvis theKing;
>> private String name = "KING ELVIS";
>> public static Elvis getInstance( ){
>>  synchronized( Elvis.class) {
>>    if(theKing ==null) theKing = new Elvis();
>>    return theKing;
>>  }
>> }
>> public void setName(String name){
>>   this.name <http://this. name> = name;
>> }
>> public String getName(){
>>   return name;
>> }
>> }
>>
>> sudah obsolate. Bisa kita replace dengan cara ini
>>
>> public enum Elvis{
>>   THE_ONE("KING ELVIS");
>>   private Stirng name;
>>   Elvis(String name){
>>     this.name <http://this. name> = name;
>>   }
>> public void setName(String name){
>>   this.name <http://this. name> = name;
>> }
>> public String getName(){
>>   return name;
>> } 
>> }
>>
>> JVM akan meng-guarantee bahwa singleton ini bener2 singleton di 
>> aplikasi kita. Nah kalau mau buat jadi lazy load tinggal ikutin 
>> patternnya on demand holder jadi seperti ini :
>>
>> public enum King {
>>     ELVIS;
>>     public enum Elvis{
>>         THE_ONE("King Elvis");
>>         private String name;
>>         Elvis(String name){
>>             this.name <http://this. name> = name;
>>             System.out.println( name);
>>         }
>>     }
>> 
>>     public static Elvis getElvis(){
>>         return Elvis.THE_ONE;
>>     }
>> }
> 
    


      

Kirim email ke