티스토리 뷰

객체 초기화, 소멸 메서드

안드로이드 운영체제이든, 리액트(라이브러리이기는 하지만...)이든 어떠한 프레임워크에서든지 라이프사이클이 존재합니다.
라이프사이클이란? 메서드나 객체가 생성되고 종료될 때까지의 일련의 과정이라고 볼 수 있는데요, 이러한 프로그램의 흐름을 타면서 초기화 메서드나 소멸 전 메서드를 수행시킬 수 있습니다.

초기화, 소멸 메서드 코드 작성하기

이전 프로젝트에 이어서 Student클래스에 다음의 코드를 추가해 보겠습니다.
아래의 코드는 기존 코드에 enroll(초기화 메서드)와 graduate(소멸 메서드)을 추가한 것입니다.

public class Student {
    private Pencil pencil;

    public Student() {
        System.out.println("학생이 태어납니다...");
    }

    public void enroll() {
        System.out.println("학생이 입학하였습니다.");
    }

    public void graduate() {
        System.out.println("학생이 졸업하였습니다.");
    }

    public void doStudy(String subject) {
        System.out.println(subject + "을 공부하다.");
    }
}

init-method

초기화 메서드는 생성자가 실행된 직후 스프링에서 호출해 주는 초기화 메서드입니다.
ApplicationContext의 정보를 담은 xml파일에서 bean객체의 init-method속성에 초기화메서드 이름을 지정하면 해당 메서드를 호출합니다.

<bean id="student" class="com.di.school1.xml.Student" init-method="enroll" />

destroy-method

소멸 전 메서드는 학교.java클래스에서 context를 닫을 때 객체가 소멸되기 직전에 호출되는 메서드입니다.
ApplicationContext의 정보를 담은 xml파일에서 destroy-method 속성에 소멸 전 호출할 메서드 이름을 지정하면 됩니다.

<bean id="student" class="com.di.school1.xml.Student" init-method="enroll" destroy-method="graduate"/>

그렇다면 프로그램을 실행해 볼까요?

  • 생성자가 호출된 직후 init-method로 지정한 메서드가 호출되었고
  • 객체가 소멸하기 직전에 destroy-method에 지정한 메서드가 호출되었습니다.

초기화 작업을 수행할 때 유용합니다.

 

digest1.zip
0.01MB

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
글 보관함