[study]이론정리237 java 10 일차 _ 03. 익명클래스 2. 익명 클래스( annoymous class, 이름없는 클래스 ) ==> 람다표현식 1) 중첩클래스 범주에 속함. 2) 용도: 인터페이스( interface ) 사용할 때 익명클래스를 적용할 수 있다. 3) 문법: ex) public interface Flyer { public abstract void fly( ); } // 1. 일반적인 방법 ( 이름있는 클래스 이용 ) 가. 하위클래스 작성 public class Bird implements Flyer { @Override public void fly( ) { } } 나. 하위클래스 객체생성 Bird b = new Bird( ); b.fly( ); // 다형성 적용 Flyer b2 = new Bird( ); b2.fly( ); // 2. 익명 클래.. 2024. 3. 21. java 10 일차 _ 02. 중첩클래스 1. 중첩 클래스 ( nested class, inner class ) 1) 개념: 클래스내에 또 다른 클래스를 지정할 수 있고 클래스내에 있는 클래스를 중첩클래스라고 한다. 형태: public class 클래스 { // outer 클래스 static int n = 10; // 가능 private int n2 = 10; int n3 = 20; class 클래스 { // 중첩클래스( inner 클래스 ) static int n2 = 20; // 불가능 System.out.println(n2 + n3); // private으로 된 변수도 사용 가능 } static class 클래스 { static int n2 = 20; // 가능 System.out.println(n2); // outer 클래스의 인스턴스 .. 2024. 3. 21. java 10일차 _ 01. 인터페이스( loosely Coupling ) package exam16_인터페이스3_looselyCoupling; public class TestMain2 { public static void main(String[] args) { DBService2 service = new DBService2(); // oracle service.setDAO(new OracleDAO2()); service.connect(); // myslq service.setDAO(new MySQLDAO2()); service.connect(); } } package exam16_인터페이스3_looselyCoupling; public interface DBDAO2 { public abstract void connect(); // 추상메서드 } package exam16_인터페.. 2024. 3. 21. java 10일차 _ 01. 인터페이스( interface tightCoupling ) package exam16_interface2_tightCoupling; // tightCoupling : Oracle 에서 MySQL 로 변경할려고 하면 Oracle 코드를 전부다 MySQL 로 변경해야한다. public class TestMain { public static void main(String[] args) { DBService service = new DBService(); // Oracle DB 사용 //service.setDAO(new OracleDAO()); //service.connect(); // >>> OracleDAO connect_oracle() 호출 // MySQL 변경 service.setDAO(new MySQLDAO()); service.connect(); // >>>.. 2024. 3. 21. 이전 1 ··· 29 30 31 32 33 34 35 ··· 60 다음