Writing /volume1/Web/Public/dokuwiki/data/log/deprecated/2024-11-15.log failed

差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

両方とも前のリビジョン前のリビジョン
次のリビジョン
前のリビジョン
study:java:design_pattern:template_method [2008/08/16 10:23] bananastudy:java:design_pattern:template_method [2008/09/03 14:27] (現在) banana
行 17: 行 17:
 {{:study:java:design_pattern:template_method.jpg|Template Method}} {{:study:java:design_pattern:template_method.jpg|Template Method}}
  
 +{{keywords>Template Method Pattern}}
  
 ===== snippet of AbstractClass ===== ===== snippet of AbstractClass =====
行 134: 行 134:
 } }
 </code> </code>
 +
 ===== sorting using template-method pattern ===== ===== sorting using template-method pattern =====
 배열을 가지고 자주 하는 일 가운데 뭐가 있을까요? 정렬(sort)많이들 하시죠? 배열을 가지고 자주 하는 일 가운데 뭐가 있을까요? 정렬(sort)많이들 하시죠?
行 162: 行 163:
 정렬이 실제로 어떤 식으로 진행되는지 알고 싶다면 썬에서 만든 소스 코드를 확인해 보세요.\\ 정렬이 실제로 어떤 식으로 진행되는지 알고 싶다면 썬에서 만든 소스 코드를 확인해 보세요.\\
 %%swap%%메소드는 %%Arrays%% 클래스에 이미 정의되어 있는 구상 메소드입니다. %%swap%%메소드는 %%Arrays%% 클래스에 이미 정의되어 있는 구상 메소드입니다.
 +
 +===== implementation of Comparable interface =====
 +이제 정렬 알고리즘을 완성하기 위해 **compareTo()**메소드를 구현해보겠습니다.
 +
 +<code java>
 +public class Duck implements Comparable{
 +     String name;
 +     int weight;
 +
 +     public Duck(String name, int weight){
 +         this.name = name;
 +         this.weight = weight;
 +     }
 +
 +     public String toString(){
 +         return name + ", weight: " + weight;
 +     }
 +
 +     public int compareTo(Object object){
 +         
 +         Duck otherDuck = (Duck) object;
 +
 +         if(this.weight < otherDuck.weight){
 +              return -1;
 +         }else if(this.weight == otherDuck.weight){
 +              return 0;
 +         }else{
 +              return 1;
 +         }
 +     }
 +}
 +</code>
 +

QR Code
QR Code study:java:design_pattern:template_method (generated for current page)