static import :: 자바일반[SSISO Community]
 
SSISO 카페 SSISO Source SSISO 구직 SSISO 쇼핑몰 SSISO 맛집
추천검색어 : JUnit   Log4j   ajax   spring   struts   struts-config.xml   Synchronized   책정보   Ajax 마스터하기   우측부분

자바일반
[1]
등록일:2008-03-13 12:43:05 (0%)
작성자:
제목:static import
[해당  글의  원본은  자바  썬의  공식홈페이지에  있으며  잘못된  번역이  있을  수  있음을
미리  알려드리는  바입니다.]

원본  :  http://java.sun.com/j2se/1.5.0/docs/guide/language/static-import.html

static  member를  접근하기  위해  우리는  해당  member의  클래스를  앞에  언급한다.  

아래와  같은  코드가  일반적이다.  

            double  r  =  Math.cos(Math.PI  *  theta);  

때때로  인터페이스  속으로  static  member들을  넣고  해당  인터페이스부터  상속받는다.

안티패턴  중  'Constant  Interface  Antipattern'  에  속하는  경우다.    

문제는  그  클래스가  다른  클래스의  static  member의  사용하는  것이  단순히  상세구현이라는데에
있다.    하나의  클래스가  하나의  인터페이스를  구현할  때,  그것은  클래스의  Public  API의  일부분이
된다.  상세구현은  public  API에서  나오지  말아야  한다.

  static  import  구조는  static  member을  포함하는  타입으로  부터의  상속없이  static  member을
접근할  수  있다.  대신,  프로그램은  member를  import하거나

  1)      import    static      java.lang.Math.PI;            2)    import    static      java.lang.Math.*;

같이  선언한다.

  static  member가  import되어졌다면  아래와  같이  특별한  선언없이  사용할  수  있다.    

                double    r  =    cos  (  PI  *  theta  )  ;

static  import  선언은  일반  import선언과  비슷하다.    일반  import  선언의    패키지로부터  클래스들을
import  시킬  곳에  패키지  선언  없이  사용하고  ,  static  import  선언이  클래스들로  부터  static  member
들을  import  하는  곳에  클래스  선언  없이  사용하면  된다.

  그럼  언제  static  import를  사용하는가?  답은,  매우  드물다.

상수의  로컬  복사를  선언하고자  할  때  그때만  사용해라.  또는  Constant    Interface    Antipattern  에서
상속을  너무  많이  사용한다  싶을  때  사용하면  된다.    다른  말로  하면,  하나  또는  두개의  클래스로부
터  static  member를  빈번히  접근하려  할  때  사용하면  된다.

만약  static  import를  많이  사용하게  되면  프로그램의  가독성과  유지보수가  힘들어진다.    코드를  읽
는  사람은  해당  static  member가  어느  클래스로부터  왔는지  알지  못할  것이다.  한  클래스로  부터
모든  static  member들에  대한  접근은  특히  가독성을  떨어뜨린다.  만약  한  두개의  member가  필요하
다면  각각을  import  시키면  된다.  적절히  사용한다면  static  import  는  프로그램을  좀더  읽기  쉽게  만
들수  있고  클래스  이름의  반복을  피할수  있다.

[출처]  static  import|작성자  ripper7504
[본문링크] static import
[1]
코멘트(이글의 트랙백 주소:/cafe/tb_receive.php?no=2613
작성자
비밀번호

 

SSISOCommunity

[이전]

Copyright byCopyright ⓒ2005, SSISO Community All Rights Reserved.