본문 바로가기
Java/이것이 자바다

이자바 8장(인터페이스) 확인문제

by k-mozzi 2023. 3. 14.
반응형

 

- 3번

package ch8;

interface Soundable {
	String sound();
}

class Cat implements Soundable {
	@Override
	public String sound() {
		return "야옹";
	}
}

class Dog implements Soundable {
	@Override
	public String sound() {
		return "멍멍";
	}
}

public class Exercise3 {

	private static void printSound(Soundable soundable) {
		System.out.println(soundable.sound());
	}

	public static void main(String[] args) {
		printSound(new Cat());
		printSound(new Dog());
	}

}

 

 

- 4번

package ch8;

interface DataAccessObject {
	void select();

	void insert();

	void update();

	void delete();
}

class OracleDao implements DataAccessObject {
	@Override
	public void select() {
		System.out.println("Oracle DB에서 검색");
	}

	@Override
	public void insert() {
		System.out.println("Oracle DB에 삽입");
	}

	@Override
	public void update() {
		System.out.println("Oracle DB를 수정");
	}

	@Override
	public void delete() {
		System.out.println("Oracle DB에서 삭제");
	}
}

class MySQLDao implements DataAccessObject {
	@Override
	public void select() {
		System.out.println("MySQL DB에서 검색");
	}

	@Override
	public void insert() {
		System.out.println("MySQL DB에 삽입");
	}

	@Override
	public void update() {
		System.out.println("MySQL DB를 수정");
	}

	@Override
	public void delete() {
		System.out.println("MySQL DB에서 삭제");
	}
}

public class Exercise4 {

	public static void dbWork(DataAccessObject dao) {
		dao.select();
		dao.insert();
		dao.update();
		dao.delete();
	}

	public static void main(String[] args) {
		dbWork(new OracleDao());
		dbWork(new MySQLDao());
	}

}

 

 

- 5번

package ch8;

interface Action {
	void work();
}

public class Exercise5 {

	public static void main(String[] args) {
		Action action = new Action() {
			@Override
			public void work() {
				System.out.println("복사를 시작합니다.");
			}
		};
		action.work();
	}

}

 

728x90
반응형

댓글