-
10. oop6 - (1) JobDemo (추상 메서드)java/코드 리뷰 2020. 4. 2. 20:20123456789101112131415161718192021222324252627282930313233343536package oop6;public abstract class AbstractJobTemplate {String host;int port;String userid;String password;void setup() {System.out.println("### 전처리 작업 시작 ###");System.out.println("데이터베이스 서버에 연결 요청");System.out.println("데이터베이스 연결 완료");System.out.println("### 전처리 작업 완료 ###");}void destroy() {System.out.println("### 후처리 작업 시작 ###");System.out.println("데이터베이스 서버에 연결해제 요청");System.out.println("데이터베이스 연결해제 완료");System.out.println("### 후처리 작업 완료 ###");}// 추상 메서드// 자식 클래스에 실제 구현 위임을 위해 메서드를 설계(정의, 선언)abstract void work();// 작업을 처리하기 위해서 순서에 맞게 메서드를 실행하는 메서드void run() {setup();work();destroy();}}1234567891011package oop6;public class InsertJob extends AbstractJobTemplate{@Overridevoid work() {System.out.println("데이터베이스에 새로운 정보를 추가합니다.");}}12345678910package oop6;public class RetrieveJob extends AbstractJobTemplate {@Overridevoid work() {System.out.println("데이터베이스에서 정보를 검색합니다.");}}1234567891011121314package oop6;public class JobDemo {public static void main(String[] args) {InsertJob job1 = new InsertJob();job1.run();RetrieveJob job2 = new RetrieveJob();job2.run();}}
'java > 코드 리뷰' 카테고리의 다른 글
10. oop7 - (2) ModifierDemo (다른 패키지, 접근 제한) (0) 2020.04.02 10. oop7 - (1) LottoDemo (내부 사용 메서드) (0) 2020.04.02 10. oop5 - (1) Starcraft Demo (추상클래스) (0) 2020.04.02 10. oop4 - (1) ReporterDemo (객체의 형변환) ★ (0) 2020.04.02 10. oop3 - (1) PhoneDemo (형변환) (0) 2020.04.02