본문 바로가기

Java

[혼자 공부하는 자바] 9-2 익명 객체 1. 익명 객체 이름이 없는 객체 어떤 클래스를 상속하거나 인터페이스클 구현해야만 만들 수 있음. 일반적으로 명시적으로 클래스 이름을 주고 선언함 선언 방법 부모클래스 변수 = new 부모클래스(){} 인터페이스 변수 = new 인터페이스(){} 부모 클래스 변수는 이름 없는 자식 객체를 참조하고 인터페이스 볏누은 이름 없는 구현 객체를 참조함 2. 익명 자식 객체 생성 자식 클래스가 재사용되지 않고 특정 위치에서 사용할 경우 익명 자식 객체를 생성해 사용하는 것이 편리 생성 방법 부모클래스 [필드/변수] = new 부모클래스(){ } 중괄호 내부에 필드나 메소드 선언하거나 오버라이딩 하는 내용을 작성 생성자를 선언할 수 없음 익명 자식 객체에서 정의된 필드와 메소드는 익명 자식 객체 내부에서만 사용됨 .. 더보기
[혼자 공부하는 자바] 9-1 중첩 클래스와 중첩 인터페이스 소개 1. 중첩클래스 클래스 내부에 선언되는 위치에 따라 분류 멤버 클래스 클래스의 멤버로서 선언되는 중첩 클래스 인스턴스 멤버 클래스와 정적 멤버 클래스로 나뉨 클래스나 객체 사용 중이라면 언제든 재사용 가능 로컬 클래스 메소드 내부에서 선언되는 중첩 클래스 메소드를 실행할 때만 사용됨 인스턴스 멤버 클래스 static 키워드 없이 중첩 선언된 클래스. 인스턴스 필드와 메소드만 선언 가능 외부에서 객체 생성하려면 외부클래스 객체 먼저 생성하고 내부클래스 객체 생성해야 함 class A{ class B{//인스턴스 멤버 클래스 B(){} int x; void do(){} } } 정적 멤버 클래스 "static" 키워드로 선언된 클래스. 모든 종류의 필드와 메소드 선언 가능 외부에서 객체 생성하기 위해 외부 객.. 더보기
[혼자 공부하는 자바] 5-1 참조 타입과 참조 변수 1. 기본 타입과 참조 타입 ▶기본타입 byte, char, short, int long, float, double, boolean변수 실제 값을 변수 안에 저장 ▶참조타입 배열, 열거, 클래스, 인터페이스 변수로 메모리의 번지를 변수 안에 저장함 번지를 통해 객체를 '참조한다' 따라서 참조타입 cf) String(문자열) 클래스도 번지를 통해 객체를 참조하기 떄문에 참조타입 변수에 해당 2. 메모리 사용영역 ▶ 메소드(Method) 영역 JVM시작 시 생성되고 모든 스레드가 공유하는 영역 사용되는 클래스들을 클래스 코더로 읽어 클래스별로 정적필드 / 상수 / 메소드 코드 / 생성자 코드 등을 분류해서 저장 ▶ 힙(Heap) 영역 객체와 배열이 생성되는 영역 생성된 객체와 배열은 JVM스택 영역의 변수나.. 더보기

728x90