학교에서 발표를 하는데 내부클래스라는 것을 하게 되었습니다. 교수의 특성상 자바공부는 전혀 안되고 있고, 객체지향 배운건 C++밖에 없거든요? 내부클래 스라는것이 클래스 안의 클래스라는 것은 알겠습니다. 근데 이 내부클래스가 이용될 만한 곳을 모르겠습니다. 어떤 부분을 만들때 이 내부클래스를 이용할 수 있을까요?
composition inheritance 로 검색해보세요...
보통 교재에 비교해서 용도를 설명할 것 같은데
실무에서 활용을 말씀하시는 건가요?
휴학생이라서 실무는... =3=33
(1) 귀찮을 때 -_-;
예를들어서 GUI 프로그램을 만들 때 마우스 리스너 같은 걸 일일이 별도 클래스로 하는 것은 정말 귀찮습니다. 그렇다고 무작정 메인 클래스가 해당 인터페이스를 구현해버리면 디자인상 문제가 생깁니다. 이럴 때 내부 클래스의 특수한 형태인 익명 클래스를 사용합니다.
(2) 내부 클래스가 부모 클래스를 떠나서 의미가 없을 때
대표적인 예가 간단하게 비동기적으로 처리해야 하는 작업이 있는 경우 Runnable을 구현하는 내부 클래스를 만들어 Thread로 처리할 수 있습니다. 이 때 해당 클래스는 부모 클래스 내부에서만 필요할 뿐 굳이 밖으로 끄집어낼 필요가 없습니다.
(3) 접근 제어 관련...
대표적인 예가 Memento 패턴입니다. 내부 클래스는 부모 클래스의 private 필드나 메소드에 접근할 수 있습니다. 이 점을 응용한 패턴 등에 사용됩니다.
----------------------------[서명] 그놈 한국 사용자 모임 - 그놈에 대한 모든 것! - 게시판, IRC, 위키, 갤러리 등등...
텍스트 포맷에 대한 자세한 정보
<code>
<blockcode>
<apache>
<applescript>
<autoconf>
<awk>
<bash>
<c>
<cpp>
<css>
<diff>
<drupal5>
<drupal6>
<gdb>
<html>
<html5>
<java>
<javascript>
<ldif>
<lua>
<make>
<mysql>
<perl>
<perl6>
<php>
<pgsql>
<proftpd>
<python>
<reg>
<spec>
<ruby>
<foo>
[foo]
composition inheritance 로 검색해보세요...보
composition inheritance 로 검색해보세요...
보통 교재에 비교해서 용도를 설명할 것 같은데
실무에서 활용을 말씀하시는 건가요?
휴학생이라서 실무는... =3=33
(1) 귀찮을 때 -_-;예를들어서 GUI 프로그램을 만들 때 마
(1) 귀찮을 때 -_-;
예를들어서 GUI 프로그램을 만들 때 마우스 리스너 같은 걸 일일이 별도 클래스로 하는 것은 정말 귀찮습니다. 그렇다고 무작정 메인 클래스가 해당 인터페이스를 구현해버리면 디자인상 문제가 생깁니다. 이럴 때 내부 클래스의 특수한 형태인 익명 클래스를 사용합니다.
(2) 내부 클래스가 부모 클래스를 떠나서 의미가 없을 때
대표적인 예가 간단하게 비동기적으로 처리해야 하는 작업이 있는 경우 Runnable을 구현하는 내부 클래스를 만들어 Thread로 처리할 수 있습니다. 이 때 해당 클래스는 부모 클래스 내부에서만 필요할 뿐 굳이 밖으로 끄집어낼 필요가 없습니다.
(3) 접근 제어 관련...
대표적인 예가 Memento 패턴입니다. 내부 클래스는 부모 클래스의 private 필드나 메소드에 접근할 수 있습니다. 이 점을 응용한 패턴 등에 사용됩니다.
----------------------------
[서명] 그놈 한국 사용자 모임 - 그놈에 대한 모든 것! - 게시판, IRC, 위키, 갤러리 등등...
댓글 달기