본문 바로가기

IT Programmer/Java (자바 과정)

객체지향

// 추상화
프로그램에서 필요한 공통적인 기능 및 속성들을 추출하고 불필요한 것들을 제거하는 과정

구현하고자 하는 프로그램이 어떤 프로그램이고, 어떤 목적을 가지고 만드는지 잘 생각해야 한다. 기능이 먼저있고, 속성이 있다


// 캡슐화
클래스 내부의 멤버변수(필드)에 있는 클래스 밖에서 접근하지 못하게 하는 것.

멤버변수에 private을 선언하는 것이 원칙이다.

멤버변수의 값이 우리가 정한 의미를 벗어나는 것을 getter/setter 메서드로 제어 한다.
 

// 메서드 안쪽에서 실행 되는 모든 변수 : 지역변수

// 인스턴스 안에서만 사용 : 인스턴스 변수

// static 을 사용하면 kookBabPrice의 가격이 고정 -> class변수 : class 내에서 공유

 

 

// 오버로딩 

이름이 같은 메서드를 여러개 만드는 것 -> 하나의 이름에 여러 매서드를 과적했다.

조건 : 매개변수가 달라야 한다. -> 매개변수의 타입(자료형) 또는 개수 또는 순서가 달라야한다.

접근제한자, 예약어, 반환형은, 영향을 미치지않는다.

 

//생성자

// 필드변수 초기화 순서 
// 인스턴스변수 : jvm 기본값 -> 필드변수에 직접 대입한 값 -> 초기화블록 -> 생성자 
// 클래스 변수 : jvm 기본값 -> 필드변수에 직접 대입한 값 -> static 초기화 블록