# object oriented programing
2023.04.22
What I learned 오늘은 상속의 연장선으로 조금 더 공부를 해보았다. 상속관계 비슷해보이지만, 다른 추상 클래스 관련하여 아래와 같이 정리해보았다. 클래스가 완성된 설계도라면, 추상 클래스는 미완성된 설계도와도 같다. 즉, 부모 클래스가 되는 추상화 클래스에서 완성시키지 못한 method를 상속 받는 클래스에서 extends로 받아와서 완성을 시키다. 그렇다면 상속 클래스와 추상 클래스는 무엇이 다를까? 가장 먼저 만들어진 의도가 다르다고 할 수 있다. 상속 클래스일 경우 부모 클래스가 가지고 있는 모든 속성을 자식 클래스에서 extends 키워드를 사용하여 전부 전달을 받아 사용 할 수 있다. On the other hand, 추상 클래스일 경우 A, B, C 클래스에서 공통적
23.04.21
What I learned 어제 오늘 Java 개념 및 기본다지기에 집중하였다. 오늘은 객체지향 관련 강의를 보고 스터디를 진행했다. 그 중에서도 조금 헷갈렸던 부분이 상속관계와 포함관계였다. 아래 코드를 보면서 해당 내용을 정리해보았다. 상속관계 상속 관계는 부모 클래스에서 자식 클래스에 단방향으로 부모 클래스 내에 있는 모든 것을 자식에게 물려준다는 의미이다. 즉, 부모 클래스 안의 모든 필드, 멤버, 메소드 등을 자식 클래스에게 넘겨주며, 자식 클래스는 해당 값들을 모두 가지고 있다는 의미이다. 포함관계 포함 관계는 클래스가 다른 클래스를 포함하는 관계이다. 즉, 아래의 이미지를 보면 Car 클래스에는 Handle이라는 클래스가 '포함' 되어있다. 포함관계를 이해하기
OOP - Object Oriented Programming [ 객체 지향 프로그래밍]
Object-Oriented Programming 프로그램 설계방법론이자 ‘개념’의 일종. 명령형 프로그래밍에 속한다. ”클래스는 객체이며, 구조체는 객체가 아닌 데이터의 집합”이라는 설명은 틀렸다..! 프로그램을 단순히 데이터/처리방법 으로 나누지 않고 수많은 '객체(object)'라는 기본 단위로 쪼개고 이들간의 상호작용으로 서술하는 방식이다. 객체란 하나의 역할을 수행하는 '메소드와 변수(데이터)'의 묶음으로 봐야 한다. JS는 프로토타입 객체지향을 사용한다. [ https://namu.wiki/w/객체 지향 프로그래밍 ] **객체지향을 안쓰면? →** 단순한 알고리즘이라면 몰라도, 조금만 복잡해져도 복구 자체가
[Java] OOP 4가지
1. OOP란? >Object Oriented Programing > > : 객체를 정의하고 객체 간의 상호작용을 프로그램으로 구현하는 것 1.1. 객체란? 현실세계에 존재하는 유무형의 모든 것 하나의 클래스 안에 속성(변수), 기능(메서드)을 표현 ex) 학생 클래스, 버스 클래스, 지하철 클래스 1.2. 객체 간의 상호작용이란? takeBus(Bus) 메서드 학생(Student 클래스)이 버스비를 지불하므로 인하여 비용(money 변수)이 발생 해당 버스(Bus 클래스)의 인원수(passengerCount 변수)와 수입(money 변수)이 증가 takeSubway(Subway) 메서드 학생(Student 클래스)이 지하철 요금을 지불하므로 인하여 비용(money 변수)이 발생 -

[TIL #1] 항해99 2023.01.21
조금 늦은감이 없지 않지만 초반부터 습관을 잡아놓지 않으면 시작할 엄두가 나지 않을까 걱정되어 오늘부터 "TIL" 을 써보려한다. 현재는 주특기의 기반을 이루는 언어를 속성으로 배우기 위한 언어 주차 3일째이다. 자바 겁나어렵다. 우선 오늘 수업의 주제는 "객체지향 part.1" 이다. 자바의 대표적인 특징이라고 한다면 "객체지향적" 언어라고 들었다. > 객체지향이란, 하나의 기능을 객체로 만들고, 이러한 객체들을 결합해서 하나의 프로그램을 만든다. 일단은 이 말을 계속 리마인드 하며 공부했던 하루인것 같다. 더 깊게 파보려고 했는데 뭐... 그럴 시간도 없긴했지만 이론적인건 이정도만 알고 지나가고 나중에 더 파보기로! #선언 위치에 따른 변수 종류 정말로 짜증났던 부분이다... 자바에서는 변수의 타입에 따라 크기가 부여되고, 그에 맞춰 형변환도 진행해주어야 한다. (Python 사랑해) 그런데 거기다 변수라는걸 어느 위치
객체지향의 4대특징 (oop의 4대특징) - 이론 기억하기 위해 기록
객체지향 4대 특징 캡상추다 라고 외우기 객체지향 프로그래밍(object oriented programing)-oop 객체는 class에서 찍어낸 데이터다 이론적으로는 class를 만들어 사용한다는 뜻과는 많이 다르지 않다 개체지향의 단어는 ? class를 사용하는 4대특징이다 라고 일단 생각하자 1.추상화 (Abstraction) 모델링 이라는 말과 비슷하다 -예시로 골프연습장 회원관리 프로그램을 만들었다 하지만 그 회원의 데이터 안에는 그날 어떤 프로가 교육을 했는지 등 심화적인 여러가지 내용들이 있을것이다 하지만 이러한 것들은 골프연습장 회원관리 프로그램의 목적에서 벗어나 그리 중요하지 않다고 생각해보자 중요한건 회원의 정보다 연습장에 어떤일이 있을때 회원의 이름과 전화번호를 알아야 연습장의 특이사항을 회원한테 연락할수 있다 회원이름, 회원전화번호만 필요할수도 있다 이것들만 뽑아서 만들어 내는것을 모델링