공부/기본 개념 공부 2

절차 지향, 객체 지향 차이

객체 지향 개발 언어 책(JAVA, Kotlin 등등)을 보면, 흔히들 절차 지향(procedural programming), 객체 지향(Object-Oriented Programming, OOP) 두 개를 많이 비교, 대조를 한다 일단 결론부터 얘기를 하자면, 절차 지향 프로그래밍과 객체 지향 프로그래밍의 의미는 반대 의미가 아니다 절차 지향이란 데이터 중심 기반 프로그래밍, 객체 지향은 객체 중심 기반 프로그래밍이라는 차이가 있다 절차 지향 프로그래밍이란 말 그대로, 프로그램을 절차에 맞게 순차적으로 진행하는 언어 개발 형태를 말한다 (대표적인 언어로는 C언어 등이 있다.) 즉, 프로그램을 유기적으로 또 순차적으로 하나 하나 순서대로 진행하는 방식을 일컫는다 자동차를 만드는 경우를 예시로 많이 들던데..

Overriding과 Overloading 차이점

Overriding은 부모 클래스에서 사용되고 있는 메서드를 자식 클래스에서 재사용하는 방법을 일컫는다 (상속의 개념) Class Animal { void say() { } } Class Dog extends Animal { @Override void say() { bark(); } } Class Human extends Animal { @Override void say() { talk(); } } 표 1. Overriding 예시 위의 예시와 같이 동물이라는 부모 안에는 사람, 개, 고양이 등 다양한 자식이 존재 할 수 있다 이 때 부모에서 사용과 달리 각 자식에서 override 하여 필요에 맞게 재사용할 수 있다. Java 언어의 경우 위와 같이 Override를 할 경우 anotation으로 표시..