용어 정리

다형성, 상속, 생성자

haedal-uni 2021. 11. 11. 03:51
728x90

다형성

하나의 객체에 여러 가지 타입을 대입할 수 있다.

 

ex.

//숫자를 문자열로 바꾸는 경우
String age = stringFromNumber(number);

//날짜를 문자열로 바꾸는 경우
String today = stringFromDate(date);

                👇🏻

//숫자를 문자열로 바꾸는 경우
String age = stringValue(number);

//날짜를 문자열로 바꾸는 경우
String today = stringValue(date);

 

 

다형성을 구현하는 방법은 대표적으로 오버로딩, 오버라이딩, 함수형 인터페이스를 사용하는 것이 있다. 

 

 

메소드 오버로딩 

한 클래스 내에 이미 사용하는 이름의 메소드가 있더라도

특정 규칙을 지킨다면 동일한 이름의 메소드를 정의하도록 허용하는 기술

 

메소드 오버라이딩

상위 클래스의 메소드를 재정의하는 것을 의미

 

함수형 인터페이스

한 개의 추상 메소드를 가지고 있는 인터페이스

 

* 느리더라도 꾸준하게, < [OOP] 다형성(Polymorphism)이란? > , https://steady-coding.tistory.com/446

 

 

 

 

 

상속

부모의 메소드랑, 멤버변수를 상속받을 수 있고 오버라이딩을 해서 재정의 해서 쓸 수 있다.
그리고 부모형의 변수로 자식객체를 생성할 수 있다

 

public class NewCl {
    String a;
    String b;
    
    public void name(String name) {
        this.a = name;
    }
}

 

public class NewClass extends NewCl {
    public static void main(String[] args) {
    
        NewClass puppy = new NewClass();
        puppy.name("lulu");
    }
}

 

괄호 안에 값을 넣으려면 class 안에 함수를 설정해 받아올 값을 지정해야하고

함수를 생성하지 않은 경우 빈 값으로 넣어야 한다.

 

* 더 자세히 알아보기 >> https://lu-delight.tistory.com/276

 

 

 

 

생성자

클래스 이름과 같은 이름을 가진 메소드를 생성자라고 한다.

public class name {
    public name()
}

or

[클래스이름] [변수 이름] = new [클래스이름]();

 

 

 

 

728x90

'용어 정리' 카테고리의 다른 글

Layered Architecture, DI 흐름 이해하기  (0) 2021.11.13
DTO, VO, Entity  (0) 2021.11.12
REST API와 Restful API, CORS  (0) 2021.11.11
DI이란  (0) 2021.11.11
Spring이란  (0) 2021.11.11