OPEN between Secret

4. 객체의 행동 본문

java/Head First Java

4. 객체의 행동

해가꿈꾸는달 2017. 8. 1. 23:48
반응형

클래스에서는 객체가 아는 거소가 객체가 하는 것을 기술한다.


메소드로 전달하는 값을 지칭할때

- 매개변수

-> 메소드에서 사용하는것

- 인자

-> 호출하는 쪽에서 전달하는 것

-> 메소드에 전달하는 것.


ex) Dog d = new Dog()

d. bark(3)

----> 여기서 3 은 인자


void bark(int numofbarks){

while(numofbarks > 0){

     xxxx

}

}

-----> 여기서 numofbarks 는 매개변수



return 유형을 지정하여 어떤값을 돌려줄수도 있음.

ex) int giveSecret() {

xxxx

}

----------> 여기서 int 가 return 유형



자바에서는 값으로 전달한다. 

 ex) int x = 7;

-----------> int 변수를 선언하고 거기에 '7'이라는 값을 저장. 이때 7에 해당하는 비트 패턴이 들어감




매개변수와 리턴 유형 활용 방법

- getter

- 매개변수로 부터 값을 가져오는것

- setter

- 매개변수로 값을 넣어주는것

- accessor, mutator?



캡슐화

-> 즉 매개변수는 pirvate 로 설정하고 이 값을 쓰기위한 getter, setter 들은 public 으로 설정.

-> 외부에서는 정해진 규칙의 setter만 사용하여 매개변수에 값을 넣을수가 있음.



!!! 어떤 값이 들어가는 자리에는 그 유형의 값을 리턴하는 메소드를 사용할수 있다.

ex) int x = 3 + 24;     -------------> int x = 3 + one.getSize();   로 된다는것.



변수를 선언한 후 초기화를 하지 않고 getter로 불렀을땐 어떤 값이 나올까?? 

-> 인스턴스 변수에는 항상 기본값이 들어가 있다.

-> 숫자 원시변수(char)는 0

    부동소수점수     0.0

    부울형은 false

    객체 레퍼런스는 null 을 반환해줌



인스턴스 변수와 지역 변수의 차이점

- 인스턴스 변수는 클래스 내에서 선언


- 지역 변수는 메소드 내에서 선언

-> 지역변수에는 기본값이 들어가 있지 않아서 초기화를 해주지 않으면 error가 발생.

반응형

'java > Head First Java' 카테고리의 다른 글

3. 네 변수를 알라: 원시 변수와 레퍼런스  (0) 2017.07.31