본문 바로가기

상속

(2)
객체 지향 프로그래밍이 뭔가요? (꼬리에 꼬리를 무는 질문 1순위, 그놈의 OOP) 객체 지향 프로그래밍(Object Oriented Programming) 여러 소프트웨어 관련 IT기업 신입사원 기술면접에서 면접자들 긴장을 풀어줄 겸 워밍업으로 자주 나오는 질문이다. "객체 지향 프로그래밍에 대해 설명 한번 해주세요" 가장 기본인 질문이지만, 이것마저 대답을 못하면 첫인상이 나빠지는 결과를 만들 수 있기에 중요한 질문이다. 앞서 워밍업이라 표현했지만 답변에 따라 꼬리에 꼬리를 무는 모든 질문의 시작점이기도 하다. 객체 지향 프로그래밍(OOP)이 뭐에요? 객체 지향 프로그래밍은 컴퓨터 프로그래밍 패러다임 중 하나로, 프로그래밍에서 필요한 데이터를 추상화시켜 상태와 행위를 가진 객체를 만들고 그 객체들 간의 유기적인 상호작용을 통해 로직을 구성하는 프로그래밍 방법이다. 이러면 이제 아까 ..
C# 캡슐화, 상속(접근제한자, 프로퍼티, as, is, Object, this, base) 캡슐화 (Encapsulation) 객체안의 변수나 함수에 아무나 함부로 접근해서 변경하면 프로그램에 지장을 주는 경우가 많아지므로 그렇게 하지 못하게 하기 위해 내부 멤버를 숨겨야 함. 이렇게 하는 것이 캡슐화.접근제한자private : 클래스 내부에서만 접근 가능protected : 내부에서 접근 및 파생 클래스에서만 접근 가능public : 내부, 파생클래스, 외부에서도 접근 가능internal : 동일 어셈블리 내에서는 public에 준한 접근 가능, 다른 어셈블리에서는 접근 불가internal protected : 동일 어셈블리 내에서 정의된 파생클래스까지만 접근 가능* 어셈블리는 아직 모르니 패스. (보통 private, public 으로 대부분 구현)12345678910111213141516..