본문 바로가기

다형성3

[Java] 인터페이스 그리고 OOP 다형성 [인터페이스]1) 객체간의 상호작용 요청 목록, "인터페이스를 구현하는 객체는 이런 책임들을 진다"는 목록2) 이런 것을 할 수 있어 그러니 요청해(인터페이스) 목록- 이름 표준화- 내부만 변경하면 됨 : 구현부만 변경- 자료구조에서 표준 타입으로 관리할 수 있음 3) 인터페이스와 implements 클래스 == 다형성- 객체 다형성 : 다양한 역할을 할 수 있음, 손님인 동시에 바리스타도 될 수 있음- 메서드 다형성 : 구현객체에 따라 메서드 동작은 다양함, 선언부는 같지만- 필드 다형성 : 표준화된 타입(interface)로 선언, 참조하는 구현객체에 따라 실행 결과 다양- 매개변수 다형성 : 표준화된 타입(interface)로 선언, 인자 구현객체에 따라 실행 결과 다양=> 자동형변환됨, 자동형변환.. 2017. 9. 26.
[Java] 객체지향과 상속#2 - 자바 다형성 구현과 상속 [다형성과 상속](1) 다형성과 상속(extends, implements, Override)- 우선 다형성이란? : 하나의 타입이 여러 형태로 동작할 수 있다는 성질, OOP의 특징, 객체는 각각 고유한 성질을 가진다- 다형성은 어떻게 프로그래밍에서 나타나나?1) 객체타입에서의 다형성 : 여러 역할을 가질 수 있음- extends, implements 사용- A 카페에서는 손님, B 카페에서는 바리스타 2) 메서드의 다형성 : 같은 타입을 구현하는 객체타입이지만 각각 다르게 동작할 수 있음- 같은 Tire를 상속하고 Tire의 roll 메서드를 오버라이딩하지만 HankookTire, KumhoTire는 각각 다른 내부동작(성능)을 가짐- 같은 객체 타입에서 파생됐지만 각각의 특성을 가짐 - 자바 synt.. 2017. 9. 24.
[Java] 레퍼런스타입 - 다형성/캐스트연산자/instanceof 지난 포스팅에서는 레퍼런스타입 특징에 대해서 알아보았다. 이번 포스팅에서는 레퍼런스타입 중 클래스와 인터페이스가 가지는 다형성에 대해서 알아볼 것이다. 우선 다형성이 대다수 사람들이 하는 정의들을 알아보았다 다형성 : 여러가지 형태를 가질 수 있는 능력 으로 다들 정의를 해놓았더라 찾아본 정의를 토대로 코드들을 살펴본 결과 내가 내린 정의는 이러하다(좀 길다.....) 다형성 : 상속받은 클래스(자식) 혹은 인터페이스 구현된 클래스가 있고, 상속을 해준(부모) 클래스 혹은 인터페이스가 있다. 부모 클래스 혹은 인터페이스를 객체 변수타입으로 두고 자식클래스, 인터페이스 구현된 클래스의 객체를 담을 수 있다. 다형성을 사용한다면 부모 클래스, 인터페이스를 인자로 두고 실제로는 자식, 인터페이스를 구현한 클래.. 2017. 1. 16.