오버라이딩2 [Java_Summarry] 상속, 업캐스팅, instanceof, 오버라이딩, 다형성, 동적 바인딩 1. 클래스를 다른 패키지에서 사용하고 싶을 때, default, private 클래스는 다른 패키지에서 사용할 수 없다. import해서 사용할 수도 없다. final class는 다른 클래스에서 상속받아 사용할 수 없다. final method는 다른 클래스에서 오버라이딩하여 재정의할 수 없다. default 클래스를 다른 패키지에서 사용하고 싶다면, 접근 제한자를 public으로 변경하거나 코드 구조를 재조정하는 것이 가장 바람직한 해결책이다. static은 클래스 최상위 레벨에선 사용할 수 없고, 멤버 변수나 메서드에서만 사용할 수 있다.(static과 final 키워드 사용할 수 있는지 여부가 헷갈리니 주의하자!, 의미는 전혀 다름!!) 2. 업캐스팅(upcasting) 서브 클래스의 객체는 슈.. Coding 공부/Java 2024. 2. 14. [Python_summary] 클래스 예제 # abs() 함수 소괄호 안의 값을 절대값을 취해 양수를 보내준다. # 오버라이드 (Override) 정의: 상속 관계에 있는 클래스에서 부모 클래스의 멤버 함수와 동일한 이름, 반환 타입, 매개변수를 가진 함수를 자식 클래스에서 재정의하는 것을 말합니다. 목적: 자식 클래스에서 부모 클래스의 기능을 확장하거나 변경하고자 할 때 사용합니다. 만약 생성자에 self.var1이 없다면 print(m2.var1)은 클래스 변수를 불러와 출력하게된다. 이런 것을 오버라이딩이라고 한다.(메소드 오버라이딩 뿐만 아니라 변수 오버라이딩도 있다) 실무에선 헷갈리게 var1으로 사용해서 혼동되는 경우를 피하겠지만 개념 공부를 위한 예제이다. # 오버로딩(Overloading) 오버로딩은 메서드 오버로딩과 생성자 오버로.. Coding 공부/Python 2024. 1. 19. 이전 1 다음 728x90 반응형