레이블이 template method인 게시물을 표시합니다. 모든 게시물 표시
레이블이 template method인 게시물을 표시합니다. 모든 게시물 표시

2016년 8월 5일 금요일

13day / SE / Static, Abstract


  • static :  class loading시 메모리 적재된다 
  참고) 자바 프로그램 실행
         :   class loading -> 코드검증 -> 실행(runtime)
             static 적재                           객체 생성
           
http://www.whatprogramming.com

static 멤버 ( 변수 및 메서드 )는 별도의 객체 생성 필요없다 
   ex)
1
2
3
4
class Person{
       static void test(){}
}   
Person.test(); <- 사용가능
cs

  • final 
  1. final  상수 : 재할당 불가  
  2. final  메서드 : 오버라이딩 불가 
  3. final  클래스 : 상속 불가      

     
http://www.itrelease.com

  • Abstract
  :  메서드와 클래스에 선언되는 자바 키워드
   

  • abstract method (추상 메서드 ) 
     -> 구현부가 없다
     -> 자식 클래스에서는 반드시 상속받는 부모 클래스의 추상메서드를 구현해야 한다
     -> 추상메서드는 하위 클래스에게 기능 구현을 강제하며 이는 시스템 표준화에 기여
     ex)

public abstract void study();
cs
   
/staticnon-static( object or instance )
메모리영역method area (or class area)heap
멤버클래스멤버객체멤버
적재시점class loading시 단 한번 적재객체 생성시 별도 적재
  • abstract class (추상 클래스)
  1. 직접 객체화 될 수 없다 
  2. 자식클래스의 생성자 내 super() 를 통해 객체 생성
  3. abstract class는 자식에게 멤버를 제공할 수 있다 
https://sites.google.com/site/sureshdevang/design-pattern-example

  • Template Method Design Pattern 
    : 부모 클래스에서 알고리즘의 뼈대를 구성하고
     자식 클래스에서 알고리즘의 일부만 구현케 하는 설계패턴