본문 바로가기

다형성

(3)
객체 지향 프로그래밍이 뭔가요? (꼬리에 꼬리를 무는 질문 1순위, 그놈의 OOP) 객체 지향 프로그래밍(Object Oriented Programming) 여러 소프트웨어 관련 IT기업 신입사원 기술면접에서 면접자들 긴장을 풀어줄 겸 워밍업으로 자주 나오는 질문이다. "객체 지향 프로그래밍에 대해 설명 한번 해주세요" 가장 기본인 질문이지만, 이것마저 대답을 못하면 첫인상이 나빠지는 결과를 만들 수 있기에 중요한 질문이다. 앞서 워밍업이라 표현했지만 답변에 따라 꼬리에 꼬리를 무는 모든 질문의 시작점이기도 하다. 객체 지향 프로그래밍(OOP)이 뭐에요? 객체 지향 프로그래밍은 컴퓨터 프로그래밍 패러다임 중 하나로, 프로그래밍에서 필요한 데이터를 추상화시켜 상태와 행위를 가진 객체를 만들고 그 객체들 간의 유기적인 상호작용을 통해 로직을 구성하는 프로그래밍 방법이다. 이러면 이제 아까 ..
함수형 프로그래밍의 장점, 다형성!(어떤 객체에만 적용가능한 메서드가 아닌 함수를 생성한다) 다형성 1234567891011121314 console.log( [1,2,3,4].map(function(val){ return val * 2; }));// 2,4,6,8 출력console.log( [1,2,3,4].filter(function(val){ return val % 2; }));// 1,3 출력 Colored by Color Scripter 다형성에 대해 얘기하기전에 기존에 만들었던 _map 함수와 _filter 함수는 이미 만들어져있다.그래서 위와같이 사용이 가능하다.명확히는 함수가 아닌 메서드로 만들어져있다.무슨말이냐면 메서드는 어떤 객체, 여기서는 배열의 메서드라서 배열객체가 생성된 후에 그 배열객체에'만' 적용가능한 함수인 것이다.12345console.log( document.qu..
C# 다형성 (override, overload, implicit, explicit) C# 다형성 메서드 오버라이드- 자식클래스에서 부모클래스로부터 상속받은 부모의 메서드를 재정의하여 사용하는 것1. 부모클래스에서는 오버라이드를 가능하게 하기 위해 'virtual' 이라는 예약어를 메서드 앞에 붙인다.2. 자식클래스에서는 재정의하여 사용하고 싶으면 'override' 라는 예약어를 메서드 앞에 붙인다.123456789101112131415161718192021222324252627282930313233343536373839using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks; namespace ConsoleApp2{ class Mammal { v..