2020년 9월 22일 화요일

(자바교육/자바동영상)JAVA의 익명클래스(Anonymous) 클래스 이론 및 실습(자바강의/JAVA교육/JAVA동영상/JAVA강의)(자바교육강의/자바교육동영상)JAVA의 익명클래스(Anonymous) 클래스 이론 및 실습(자바강의/JAVA교육/JAVA동영상/JAVA강의)

 (자바교육/자바동영상)JAVA의 익명클래스(Anonymous) 클래스 이론 및 실습(자바강의/JAVA교육/JAVA동영상/JAVA강의)(자바교육강의/자바교육동영상)JAVA의 익명클래스(Anonymous) 클래스 이론 및 실습(자바강의/JAVA교육/JAVA동영상/JAVA강의)


(자바교육/자바동영상)JAVA의 익명클래스(Anonymous) 클래스 이론 및 실습(자바강의/JAVA교육/JAVA동영상/JAVA강의)

 

1. 익명 클래스(annoymous class)

 

이름이 없이 포함된 클래스

클래스를 정의하지 않고 필요할 때 이름없이 즉시 선언하고 인스턴스화 해서 사용

이름이 없다는 점을 제외하면 로컬 클래스와 같다

형식 : new 클래스이름(or 인터페이스 이름) (…) {…}

제공된 클래스나 인터페이스를 구현한 하위 클래스를 정의한 후 객체를 생성하고 그 참조 값을 반환 한다.

new 수식이 올 수 있는 곳 어디든지 사용 가능하다.

필드, 메소드, 인스턴스 초기화 수식, 지역 클래스를 선언 할 수 있지만 생성자를 정의 할 수는 없다.

 

익명 클래스는 new 수식의 연장 이므로 반드시 세미콜론(;)을 붙여야 한다.

익명 클래스내부에서 외부의 메소드 내 변수를 참조할 때는 메소드의 지역 변수중 final로 선언된 변수만 참조 가능하다.

해당 클래스나 인터페이스를 정의하여 사용 할 때 여러 곳에서 사용되는 것이 아니라 단 한번만 정의해서 사용 하는 경우에 유용하다.

 

자바 GUI 프로그래밍에서 이벤트의 리스너 인터페이스에 대한 구현 클래스를 작성 하는데 사용된다.

자바 쓰레드에서 Runnable 인터페이스를 구현해야 하는데 외부에서 Runnable 인터페이스 구현 클래스를 만들지 않고 익명 클래스를 사용한다.

 

 

new Thread(new Runnable() {

    @Override

    public void run() {

        …..

    }

}).start();

 

 

class MyWork implements Runnable {

    @Override

    public void run() {  … }

}

 

new Thread(new MyWork()).start();

 

 

2. 실습

public class AnonymousClassTest {

 

   interface Hello {

      public void sayHello();

   }

 

   public void sayHello(String name) {

      class SayEnglish implements Hello {

            public void sayHello() {

                System.out.println("Hello " + name);

            }

      }

 

      Hello sayEnglish = new SayEnglish();

      sayEnglish.sayHello();

 

      Hello sayKorean = new Hello() {

         public void sayHello() {

           System.out.println("안녕~ " + name);

          }

      };

      sayKorean.sayHello();

   }

 

 

public static void main(String... args) {

   AnonymousClassTest myApp = new    AnonymousClassTest();

        myApp.sayHello("OracleJavaCommnunity");

    }

}

 

 

Hello OracleJavaCommnunity

안녕~ OracleJavaCommnunity


 

 

#자바익명클래스, #익명클래스란, #Anonymous클래스, #자바AnonymousClass, #자바동영상#자바강의#자바교육#자바강좌#자바#JAVA#자바동영상강의#추천자바강의#추천자바강좌#JAVA동영상#JAVA강의#JAVA강좌#JAVA교육#JAVA#추천JAVA강의#추천JAVA교육#추천JAVA강좌#자바소스#자바실습    


댓글 없음:

댓글 쓰기

(C#교육동영상)C# ADO.NET 실습 ODP.NET/ODAC 설치 오라클 함수 호출 실습, C#학원, WPF학원, 닷넷학원, 자바학원

  (C#교육동영상)C# ADO.NET 실습  ODP.NET/ODAC 설치  오라클 함수 호출 실습, C#학원, WPF학원, 닷넷학원, 자바학원 https://www.youtube.com/watch?v=qIPU85yAlzc&list=PLxU-i...