Java

1. 객체와 클래스

페이지 정보

작성자 Ryangkyung 작성일15-06-27 12:13 조회3,039회 댓글0건

본문

실제 고양이->abstraction->모델 고양이

동일 클래스에 여러 인스턴스 있는 경우, 별도 메모리 가진다

클래스 멤버: 필드, 메소드

지역변수: 메소드 내부에 선언, 초기화 X, 쓰레기값 들어 있다, parameter

field: 클래스 내부, 메소드 외부에 선언(private으로 선언)​, 기본값 설정

int: 0

double: 0.0

boolean: false

reference: null

 

Data type

primitive type

reference type

new Cat();

c에는 Cat 인스턴스의 메모리 주소 들어 있다.

c에는 Cat 인스턴스 가리키는 레퍼런스(참조)가 들어있다.

 

String class

String s;

s = new String("Kimberly");

s = "Kimberly";

 

Constructor

프로그래머가 구성자 선언 안 해주면 컴파일러가 기본 구성자 넣어줌

public 선언, 반환타입 X

클래스 이름과 같다

구성자 다중정의(parameter 개수에 따라)

 

dynamic loading: 필요할 때 코드가 메모리에 올라감

 

implicit object referencing: 혼동이 없을 때 this 생략 가능

 

public NameCat(String name){

this.name = name;//this.name: 객체 자신이 갖고 있는 name 필드

}

 

Access Modifier

private: 같은 class로부터의 접근만

public: 누구나

package: 같은 package (access modifier 안 붙이면 package 멤버)

 

Encapsulation

데이터와 그 데이터에 작용하는 메소드를 한 덩어리로 묶는 것

객체의 사용법에 해당하는 메소드만 노출시키고 나머지 메소드와 데이터는 외부에 노출 X

 

Information Hiding

사용자에게 꼭 필요한 메소드만 노출, 안정성 

encapsulation과 private 선언을 통해 information hiding 이루어진다

사용자는 객체 내부 사항 알 필요 없다. 사용법만 알면 됨

객체가 사용자로부터 보호됨

 

procedural programming

모든 학생들의 학번, 이름, 학년 등 데이터를 배열 형태로 저장

ex)재학증명서 발급 등

댓글목록

등록된 댓글이 없습니다.