분류 전체보기94 [자바] 두잇 자바 프로그래밍 * 내부 클래스 innerClass(2) * 내부 클래스 innerClass(2) 익명 클래스 - 익명 클래스는 클래스의 선언과 객체의 생성을 동시에 하므로 - 단 한 번만 사용 될 수 있고, 오직 하나의 객체만을 생성할 수 있는 일회용 클래스 - 이름이 없어 생성자도 없고, - 부모 클래스의 이름이나 구현하고자 하는 인터페이스의 이름을 사용해서 정의하기 때문에 - 오로지 단 하나의 클래스를 상속 받거나 단 하나의 인터 페이스 구현 내부 클래스 요약 ①인스턴스 내부 클래스 외부 클래스 먼저 만든후 내부 클래스 생성 ②정적 내부 클래스 외부 클래스와 무관하게 생성 ③ 지역 내부 클래스 메서드 호출시 생성됨 ④ 익명 내부 클래스 메서드 호출시 생성되거나 인터페이스 타입 변수에 대입할때 new 예약어 통해 생성 2022. 7. 2. [자바] 두잇 자바 프로그래밍 * 익명 내부 클래스Anonymous Class * 익명 내부 클래스Anonymous Class ④익명 클래스 anonymous class -클래스의 선언과 객체의 생성을 동시에 하는 이름 없는 클래스 package innerclass; class Outerclass{ int outNum =100; static int sNum = 200; //익명 클래스는 로컬 클래스에서 클래스 이름을 삭제한 것 //Runnable 객체를 생성하고 싶을때 익명 클래스 이용 //객체 바로 생성됨 //단 하나의 클래스나 인터페이스 구현 할 수 있음 Runnable runnable = new Runnable() { int inNum = 100; @Override public void run() { System.out.println(outNum); System.out.pri.. 2022. 7. 2. [자바] 두잇 자바 프로그래밍 * 지역 내부 클래스 Local Inner Class * 지역 내부 클래스 Local Inner Class ③지역 클래스 local class - 외부 클래스의 메서드나 생성자 안에 선언 - 선언된 영역 내부에서만 사용 가능 package innerclass; class Outer{ int outNum =100;//인스턴스 변수 static int sNum =200;//정적 변수 public Runnable getRunnable() { int localNum = 300; //메서드 함수 안에서 //지역 클래스 class Myrunnable 선언 class Myrunnable implements Runnable{ @Override public void run() { System.out.println(outNum); System.out.println(sNum).. 2022. 7. 2. [자바] 두잇 자바 프로그래밍 * 인스턴스 내부 클래스 && 정적 내부 클래스 * 내부 클래스 innerClass - 내부 클래스는 클래스 내에 선언 된다는 점을 제외하고 일반 적인 클래스와 다르지 않음 - AWT 나 Swing과 같은 GUI 어플리케이션 의 이벤트 처리 외에는 잘 사용되지 않음 내부 클래스란? - 내부 클래스는 클래스 내에 선언된 클래스 -두 클래스가 긴밀한 관계가 있을 때 내부 클래스 사용( private 클래스가 일반적 ) 내부 클래스의 장점 - 내부 클래스에서 외부 클래스의 멤버들을 쉽게 접근 가능 - 불필요한 클래스를 감춰 코드의 복합성을 줄일 수 있음 내부 클래스의 종류와 특징 ⓛ 인스턴스 클래스 instance class - 외부 클래스의 멤버 변수 선언 위치에서 선언 주로 외부 클래스의 인스턴스 멤버들과 관련된 작업에 쓰일 목적 ②정적 클래스 stat.. 2022. 7. 2. 이전 1 ··· 12 13 14 15 16 17 18 ··· 24 다음