고뇌

JAVA 여러 개념 복습

사재원 교수 2022. 6. 20. 18:29

<복습 : 다시 기억하기>

- 오버로딩 : 오버로딩은 메소드명이 같아도 매개변수의 개수 매개변수의 자료형 종류 등에 따라서 구분될수있어 각자의 기능을 작동시킬수 있다.

- 오버라이딩 : 부모의 메소드를 자식의 메소드가 재정의하는 것 단, 메소드명이 같아야만 한다. 여기서 부모 메소드가 전혀 필요치 않다면 위에서 말한 추상화개념을 적용시키면 된다.

- 업캐스팅 : 자료형은 부모지만 객체는 자식인 경우 , 이 경우 자식의 메소드를 이용할수있다. 하지만 자식의 클래스변수는 사용할수 없다.

- 다운캐스팅 : 자료형은 부모지만 객체는 자식인 것을 다시 자료형을 자식으로 바꾸어주는 작업, 이렇게 될 경우 자식 본인의 클래스 변수까지 이용이 가능해진다. 

 

++

call by value : 리턴을 해주지 않으면 값이 사라져버린다. 일반 int a = 0; 이런 경우

call by reference : 리턴을 해주지 않아도 값이 기록된다. int[] a = new int[3] 이런 경우 그냥 new가 붙어있으면 이것이 적용된다고 생각하면 편하다. 마치 내가 등산을 가서 산 꼭대기 돌에 내 이름을 새기면 다음에 산에 올라왔을때 그것이 기록에 남아져있는 것처럼 말이다.

 

++

this.?? : 메소드에서 클래스변수를 불러올수있는 것.

super.?? : 자식 클래스에서 부모클래스의 변수를 불러올수 있는 것.