더 많이 실패하기

코딩공부 49일차: 자바의 정석 / 자바의 정석 51~55강 본문

자바/자바의정석

코딩공부 49일차: 자바의 정석 / 자바의 정석 51~55강

김발자~ 2022. 9. 18. 21:48
반응형

개발 공부 49일차

자바의 정석 기초편 강의

https://www.youtube.com/watch?v=oJlCC1DutbA&list=PLW2UjW795-f6xWA2_MUhEVgPauhGl3xIp 

 

 

총 171개의 강의로 구성되어 있다

총 강의 시간은 80시간 정도

 

 

강의는 기초편을 기준으로 제작되어 있지만,

http://www.yes24.com/Product/Goods/24259565

 

Java의 정석 - YES24

최근 7년동안 자바 분야의 베스트 셀러 1위를 지켜온 `자바의 정석`의 최신판. 저자가 카페에서 12년간 직접 독자들에게 답변을 해오면서 초보자가 어려워하는 부분을 잘 파악하고 쓴 책. 뿐만 아

www.yes24.com

링크로 첨부한 자바의 정석 3판으로도 무리가 없다는 댓글이 있어 그대로 진행

 

 

 

오늘부터 들어가는 6장, 그 다음인 7장 - 객체지향이 가장 중요!

 

 


ch 6 - 1 객체지향 언어

(3판 기준 230, 231쪽)


 

빠른 변화에 못 쫓아가던 문제에 대한 해결책으로 객체지향 언어를 도입
(절차적(정직하게 순서대로) → 객체지향)

코드의 재사용성이 높고 유지보수가 용이, 중복 코드 제거가 장점

객체지향 언어 = 프로그래밍 언어 + 객체지향 개념(규칙)

객체지향프로그래밍(oop)의 핵심 개념
1. 캡슐화
2. 상속
3. 추상화
4. 다형성 ★중요

 

 


객체지향 공부 방법
1. 자바의 정석 6장, 7장 다형성까지 반복 (객체지향 규칙을 외워야 함!)
2. 여러 번 반복하면서 외웠으면 7장의 추상화, 인터페이스 공부
3. 자기만의 요약집 만들어서 매일매일 보기
4. 자바의 정석 끝낸 후 공부는 이론 공부를 더하기보다 실습 위주로

 

 

 


ch 6 - 2~4 클래스와 객체

(3판 기준 231~234쪽)


 

클래스란 객체를 정의해놓은 것, 객체를 생성하는데 사용한다

객체는 실제로 존재하는 것으로 사물 또는 개념. 객체가 가지고 있는 기능과 속성에 따라 용도가 다르다

클래스는 설계도, 객체는 제품(TV 설계도 - TV, 붕어빵 기계 - 붕어빵)

객체 = 속성(변수) + 기능(메서드)

1
2
3
4
5
6
7
8
9
10
11
Class TV{            //TV 설계도
    
    String color;
    boolean power;    // TV 속성 (변수)
    int channel;    
 
    void power()         {power = !power;}
    void channelUp()    {channel++;}        //TV 기능 (메서드)
    void channelDown()    {channel--;}
 
}
cs

 

 

인스턴스는 객체와 같다고 보면 된다
객체는 모든 인스턴스를 대표하는 일반적 용어
인스턴스는 특정 클래스로부터 생성된 객체(예: TV인스턴스) 

클래스(설계도)를 인스턴스(객체/제품)로 만드는 걸 인스턴스화라고 한다

클래스는 객체를 생성하기 위해서 필요하고
객체는 객체를 사용하기 위해 필요, 즉, 객체가 가진 속성과 기능을 사용하기 위해 필요하다

 

 

 


ch 6 - 5 한 파일 여러 클래스 작성하기


 

하나의 소스파일에 한 클래스를 작성하는 것이 바람직하지만
여러 클래스를 작성하는 것도 가능하다

여러 클래스를 쓸 떄는 소스파일의 이름이 반드시 public class의 이름과 일치해야 한다
public class가 없으면 소스파일은 클래스 중 하나와 이름이 똑같으면 된다

 

 

 


ch 6 - 6, 7 객체의 생성과 사용

(3판 기준 234~240쪽)

https://www.youtube.com/watch?v=p1ZZnM715ao&list=PLW2UjW795-f6xWA2_MUhEVgPauhGl3xIp&index=54 


 

객체의 생성

클래스명 변수명;
변수명 = new 클래스명();

Tv t; //참조형(기본형x) 변수 (리모콘)
t = new Tv();

위 두줄은 Tv t = new Tv(); 와 같다


객체의 사용
t.channel = 7;
t.channelDown();

 

 

참조변수와 객체의 타입은 일치해야 하고
참조변수를 통해서만 객체를 사용할 수 있다

 

 

여러 개의 참조변수가 하나의 객체를 가리키는 건 가능하지만

하나의 참조변수가 여러 개의 객체를 가리키는 건 불가능하다

 

 

 


ch 6 - 8 객체배열

(3판 기준 240~242쪽)

https://www.youtube.com/watch?v=GSVbcmVw1i0&list=PLW2UjW795-f6xWA2_MUhEVgPauhGl3xIp&index=55 


 

객체 배열 == 참조변수 배열
Tv tv1, tv2, tv3; → Tv[] tvArr = new Tv[3]; (객체배열을 만든 건지 객체를 생성한 건 아니다)

 

 

 


제일 중요하고 자바의 정석이 유명한 이유은 객체지향 파트에 들어갔다

연습문제도 여러 번 풀고 열심히 해야지

반응형
Comments