Programer/Android (Java)

JAVA 참고 사항

아즈샤 2014. 3. 7. 16:17
반응형

* 객체를 사용할 때에는 Ctrl + Space  를 사용할 것

-> 필요한 클래스를 자동으로 import 해주고 틀리는 것을 예방해줌


* boolean 은 기본 값이 false

-> 초기화 할 때 바보같이 선언하지 마시길..


- 자바의 특징

1. 객체지향 (재사용) : 상속, 인터페이스, pojo, 다형성

2. JVM (플렛폼에 상관 없이) - stack, heap, 상수풀(상수, static, 클래스 영역)

3. 가비지 컬렉션 (heap에 있는 참조 되지 않는 객체를 청소)


클래스 - 설계도면 / 객체 - 만들어진 건축물


클레스 설계 기본 (구조를 이해)

 클레스 해더 (대문자로)

 멤버 필드(변수) - static / non-static -> 아는 것 : 속성

 멤버 메서드 -> 하는 것 : 동작

 생성자 -> 생성 시켜야 힙에 들어감

 

 ...


EX> 클레스 설계

1. 선풍기

 Fan

 model (String) : 모델번호

 color (String) : 색

 power_type (string) : 전원 타입 (220V)

 size (int) : 크기

 height (int) : 높이

 wing_num (int) : 날개 숫자

 timer_time (int) : 타이머

 power (boolean) : 전원 여부

 spin (boolean) : 회전 여부

 windpower (int) : 바람 세기

 set_power() : 파워

 set_wind_power() : 바람세기

 set_timer() : 타이머 설정

 set_spin_on() : 회전 설정

 

 


- 클래스의 맴버에 set get 으로 약속/흐름이 있음 - pojo - 캡슐화

* POJO

Plain Old Java Object 혹은 POJO는 처음에 javax.ejb 인터페이스를 상속받지 않은, 무거운 EJB와는 반대로 경량의 자바 객체를 지칭하는 말로 소개되었다. 즉, POJO라는 이름은 특별하지도 않고, 특히 Enterprise JavaBean이 아닌 자바 객체를 강조한다. 이 이름은 Martin Fowler, Rebecca Parsons와 Josh MacKenzie에 의해 2000년 9월에 만들어졌다. 프레임워크에 종속된 복잡한 객체에 반대되는 간단한 객체를 설명하기 위한 용어의 필요성이 많아짐에 따라 POJO라는 이름은 점점 널리 쓰이게 되었다.


POJO 대표적인 예로, JavaBean을 들 수 있는데, JavaBean은 기본 생성자와 멤버 필드에 접근할 수 있는 getter/setter 메소드를 가진 serializable(직렬화가 가능한)한 객체를 의미한다. POJO를 이용한 디자인이 널리 쓰임에 따라 POJO를 기본으로 하는 스프링이나 하이버네이트와 같은 프레임워크에서도 생겼다. 요즘에는 POJO는 (EJB 뿐만 아니라) 별도로 종속되지 않는 자바 객체를 통칭하여 의미한다.


- 접근제한자 : public > protected > default > private

private : 현재 클래스내에서만 접근이 가능

default : 같은 패키지 안에 있는 모든 클래스

protected : defualt 포함, 다른 패키지의 상속 관계만

public : 모든 패키지


생성자 중  -> new 클래스 이름() (한번만 쓰고 버릴 때)


캡슐화와 정보은닉

캡슐화 : 정보 은닉된 자원을 사용자가 접근 및 사용하기 위해서 제공해주는 사용 방법 set / get

정보은닉 : 자바에서는 자원을 직접 접근하는 것을 상당히 주의해야 하고, 자원을 모두 은닉시켜야 한다.


그럼 그 자원은 어떻게 넣고/빼냐?


특별한 경우를 빼고 멤버변수는 모두 private로 설정 그리고 seter geter를 제공


 0307.zip



반응형