전부터 헷갈리던 개념, Overriding, Overloading에 대해 포스팅!
특히 이 개념들은 class를 주로 다루는, python, C++, Java에서 사용하니 알아두면 좋다.
Overloading
Overloading 이란, 과적하다, 과부하라는 의미로!
"" 같은 클래스내에서 같은 이름의 메서드를 사용하는 것"" 으로
클래스 메소드의 이름 수를 줄이는 대신, 여러 기능을 넣을 때 사용!!
-> 매개변수의 타입을 다르게 하거나, 매개변수의 개수를 다르게 해 여러 기능을 가능하게 함.
따로 적어주지 않아도, 위에 2가지 중 하나만 만족을 한 상태에서 그냥 메소드 이름을 같게만 해줘도 Overloading 이 된다.
Overriding
Overridding 이란 가장 우선시되는, 최우선되는, 다른것보다 우선인 -> 이런 의미이다.
"" 부모 class에서 정의한 메소드를 상속받을 때, 자식 class에서 그 메소드를 변경하는 것.""
상속받은 부모 class에서 메소드 이름은 동일하게 하지만, 기능을 바꾸고 싶을 때 사용한다.
이는 여러 응용가능 -> 위에 예시가 답이다.
(@Override 를 안적어도 기능동작은 한다. 하지만 적어줘야 버그를 생성하지 않는다!!! 왠만하면 써둘 것)
'대학원 공부 > programming language' 카테고리의 다른 글
Python : basic : import OS (파일, 디렉토리 조작) (0) | 2019.11.11 |
---|---|
Python : basic : 정규표현식 (0) | 2019.11.07 |
Java : public, private, default, protected (0) | 2019.10.31 |
Java : wordcount 코드 정리 및 class들 정리 (0) | 2019.10.31 |
Numpy : array_made (0) | 2019.10.26 |
댓글