본문 바로가기

객체지향4

코드스테이츠 백엔드 부트캠프 43기 (13일차-버거퀸 프로젝트 회고) 버거퀸 프로젝트 버거퀸 프로젝트를 진행하면서 패키지를 나누고 그 안에 적절한 class를 넣으면서 모든 기능을 분리하는 역할을 프로젝트를 하면서 배우게 되었다. 하나의 클래스를 만들면서도 그 클래스는 자신의 역할만 수행해야하는 개념을 배우게 되었고 그렇게 되기 위해서는 추상화와 다형성은 필수였다. 추상화를 통하여 클래스간 인터페이스 역할을 해주었고 다형성을 통하여 추상화된 객체들을 하나의 변수에 받을 수 있게되므로 외부에서 객체를 주입할 수 있게되었다. -생성자를 통하여 객체를 외부로부터 주입받아 사용하자. 어떤 클래스를 자신의 역할만 수행해야 한다. 자신의 역할안에서 다른 인스턴스를 생성하고 그의 기능을 수행하는 거는 객체지향 역할에서 벗어나는 행위이다. 그렇기에 다른 객체를 받을때는 생성자를 통해 외.. 2023. 1. 2.
코드스테이츠 백엔드 부트캠프 43기 (11,12일차-객체지향심화 회고) 객체지향심화 객체지향심화를 배우면서 많은 것을 배우고 느끼게 되었다. 객체지향심화에는 상속, 다형성, 추상화, 캡슐화가 대표적인 주제였다. 대학시절 자바응용을 배우면서 배운 내용이긴 하지만 중요하게 생각하지 않아 대충 보고 넘기게 되었었다. 하지만 이번 객제치향심화를 배우면서 내가 잘 못된 객체지향코딩을 하고 있었구나 하고 깨닫게 되었다. 객체지향에 있어 위의 4가지 키워드는 매우 중요했으며 객체지향적 프로그램 관리를 하기위해서 꼭 필요한 키워드이다. 상속 쉽게 말해 물려 받는다. class Person { String name; int age; void learn(){ System.out.println("숨을 쉰다"); }; void walk(){ System.out.println("공부한다."); }.. 2022. 12. 31.
코드스테이츠 백엔드 부트캠프 43기 (10일차-객체지향 회고) 생성자 클래스에는 적어도 하나 이상의 생성자가 존재한다. 생성자를 통하여 객체 인스턴스의 변수들을 초기화 할 수 있다. - 생성자 명은 클래스 이름 - 리턴 타입은 없다. - 오버로딩 가능 - this() -> 생성자 내부에서만 생성이 가능, 다른 생성자를 호출할 때 사용 - this는 객체자신의 변수 tip // 클래스는 와 그리고 (생성자)와 (이너 클래스)로 구성 될 수 있다. // 클래스 메서드(스태틱) 안에서는 this를 사용할 수 없다. this 키워드는 인스턴스가 자기 자신을 가리킬 때 사용 객체지향 프로그래밍 기초를 배우면서 확실히 개념을 알고있는 상태에서 공부를 하니 이해가 더욱 잘 되며 모르는 부분에 집중을 할 수 있어 공부가 계획대로 잘 되가고 있다. 내일 부터는 객체지향 프로그래밍 .. 2022. 12. 29.
코드스테이츠 백엔드 부트캠프 43기 (9일차-객체지향 회고) 객체지향 프로그램을 객체로 나누어 결합도는 낮추고 응집도는 높이기 위한 프로그래밍. 자바는 클래스를 통하여 객체를 생성한다. 먼저 자바의 작동원리 (운영체제의 종류에 상관없이 JVM을 통해 실행) .java 파일은 컴파일을 통해 .class 파일로 바뀌어 JVM에 입력된다. JVM 내부에서 Class Loader를 통하여 Runtime Data Area에 로딩된다. Runtime Data Area 내부에는 대표적으로 (스택, 힙)이 있다. 1. 일반 변수를 선언시 변수와 변수의 값은 스택에 저장이 된다. //코드에서 int age = 29; 을 선언했을 때 2. new를 통해 참조변수를 생성하면 주소값은 스택에 저장이 되고 주소값의 내용은 힙에 저장이 된다. //코드에서 String name = new .. 2022. 12. 27.