티스토리 뷰
※개념정리
내부클래스 - 클래스 안에 클래스가 선언된 것
내부클래스는 총 4종류로 나뉜다.
1)내부클래스
중첩 클래스 or 인스턴스 클래스
클래스의 필드에 선언되는 클래스이다.
public class Inner{
class E1{
int i = 1;
public void abc( ){
syso(i);
}
}
public static void main(String[]args){
Inner in = new Inner( );
Inner.E1 e1 = in.newE1( );
e1.abc( );
}
}
// 클래스 객체선언
//클래스명.내부클래스명 변수 = 클래스참조변수.new내부클래스명( );
2)내부클래스
정적중첩 클래스 or static 클래스
클래스의 필드에 선언되는 정적클래스이다.
public class Inner{
static class E2{
int i = 2;
public void abc( ){
syso(i);
}
}
public static void main(String[]args){
lnner.E2 e2 = new E2( );
e2.abc( );
}
}
//클래스명.내부클래스 변수 = new 내부클래스명( );
3)내부클래스
지역중첩 클래스 or 지역 클래스
클래스의 메서드에 선언되는 클래스이다.
public class Inner{
public void exec( ){
class E3{
int i = 3;
public void abc( ){
syso(i); }
}
E3 e3 = new E3( );
e3.abc( );
}
public static void main(String[]args){
Inner i = new Inner( );
i.exec( );
}
}
//메서드에서 내부클래스 객체선언
//메인메서드에서 클래스 객체선언
//클래스참조변수.메서드( );
4)내부클래스
익명클래스
추상클래스에서 부모클래스 단계를 생략하고 객체선언을 통해 만들어진 내부 클래스이다.
①추상클래스
public abstract class E4{
public abstract void abc( );
}
②메인클래스와 메인메서드
public class Inner{
public static void main(String[]args){
E4 e4 = new E4( ){
public void abc( ){
int i = 4;
syso(i);
}
};
e4.abc( );
}
}
//추상클래스는 객체선언을 할수 없지만, 익명클래스에서 가능하다.
//int i = 4; 는 메서드 선언 전에 하여도 무방하다.
//추상클래스의 괄호가 끝난 후에 내부클래스참조변수.메서드( )호출한다.
'Java > 개념' 카테고리의 다른 글
JAVA throws와 throw(책임전가와 강제처리) (0) | 2020.05.07 |
---|---|
JAVA Exception(예외처리) (0) | 2020.05.07 |
JAVA 인터페이스의 default 메서드와 static메서드 (0) | 2020.05.06 |
JAVA 인터페이스 개념과 예제 (0) | 2020.05.06 |
JAVA 추상클래스와 추상메서드 (abstract) (0) | 2020.05.04 |
- Total
- Today
- Yesterday
- JAVA #CollectionFramework #Stack #Queue #LinkedList #PriorityQueue #LIFO #FIFO
- 자바 #개념 #변수 #자료형
- 정보처리기사 #2020년개정 #요구사항확인 #1과목 #SW생명주기 #폭포수 #SW설계 #나선형 #애자일 #프로포타입
- JAVA #CollectionFramework #List #ArrayList #LinkedList #for-each #foreach #iterator #Iterator #반복자
- Process #쓰레드
- 포토시그니처 #신라면 #시위 #휴가
- JAVA #CollectionFramework #Set #Treeset
- JAVA #Thread #실행제어 #상태제어 #스케줄링 #sleep #join #stop #resume #suspend #yeid #interrupt #interrupred #Deprecated
- 정보처리기사 #가용성 #2020년개정 #오픈소스 #애플리케이션 #WAS #비즈니스 #DBMS
- 백준 #JAVA #1000번 #Scanner #Buffered #입력함수
- 정보처리기사 #2020년 개정 #XP #익스트림프로그래밍 #릴리즈 #이터레이션 #방법론
- 백준 #2557 #HelloWorld! #JAVA
- JAVA #Thread #쓰레드 #싱글쓰레드 #멀티쓰레드 #자바
- JAVA #CollectionFramework #Set #HashESet #TreeSet #LinkedHashSet
- 정보처리기사 #2020년개정 #UML #다이어그램 #정적 #동적 #구조적 #행위 #실체화 #구조 #관계 #의존 #연관 #집합 #포함 #일반화
- 정보처리기사 #2020년 개정 #SW설계 #요구사항 확인 #애자일 #스크럼
- 10998 #A*B #AxB
- JAVA #Thread #쓰레드 #자바 #우선순위 #setPriority #getPriority
- JAVA #Map #HashMap #TreeMap #LinkedHashMap
- 백준 #1001번 #A-B
- NEW #BLOCKED #TERMINATED #WAITING #TIMED WAITING #RUNNABLE
- JAVA #Thread #쓰레드 #자바 #sychronized #wait #notify #notifyAll #lock #잠금 #동기화 #임계영역
- JAVA #CollectionFramework #Set #HashSet
- 정보처리기사 #2020년개정 #요구사항 분석기법 #요구사항 확인기법
- 백준 #Java #10926 #??!
- JAVA #HashMpa #Map #Hashtable #Hashing
- 육회물회 #금복주류 #소메랑곱창 #금정역 #나는솔로 #맥주
- key #value
- 정보처리기사 #2020개정 #SW설계 #현행시스템
- JAVA #Thread #Runnable
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |