[TIL #1] 항해99 2023.01.21

강민규·2023년 1월 20일
0
post-thumbnail

조금 늦은감이 없지 않지만 초반부터 습관을 잡아놓지 않으면 시작할 엄두가 나지 않을까 걱정되어 오늘부터 "TIL" 을 써보려한다.

현재는 주특기의 기반을 이루는 언어를 속성으로 배우기 위한
언어 주차 3일째이다. 자바 겁나어렵다.


우선 오늘 수업의 주제는 "객체지향 part.1" 이다.

자바의 대표적인 특징이라고 한다면 "객체지향적" 언어라고 들었다.

객체지향이란,
하나의 기능을 객체로 만들고, 이러한 객체들을 결합해서 하나의 프로그램을 만든다.

일단은 이 말을 계속 리마인드 하며 공부했던 하루인것 같다.
더 깊게 파보려고 했는데 뭐... 그럴 시간도 없긴했지만

이론적인건 이정도만 알고 지나가고 나중에 더 파보기로!


#선언 위치에 따른 변수 종류#

정말로 짜증났던 부분이다...
자바에서는 변수의 타입에 따라 크기가 부여되고, 그에 맞춰 형변환도 진행해주어야 한다. (Python 사랑해)

그런데 거기다 변수라는걸 어느 위치에 놓았을때도 그 성격과 구조적인 면에서도 달라지고 Error도 나고 내가 원하는 값을 구하지도 못해 정말 머리아팠다.

우선적으로,

▶▶클래스 영역(선언위치) : 클래스 변수
1. 클래스가 메모리에 올라갈 떄 생성된다.
2. 객체 생성을 하지 않아도 생성되고 언제든지 사용이 가능하다.
3. 접근 방법 : 클래명.클래스변수명

Tip(암기를 위한 키워드) :

  • 인스턴스 변수에 static을 붙여주면됨,
  • 공통적인, 공유하는 으로 생각하면 될듯,
  • 실행된 후 고정적이기에 메모리에 딱 한번 올라감 == 1. 특징
  • 모든 인스턴스가 공통된 값을 공유하게 해줌

▶▶클래스 영역(선언위치) : 인스턴스 변수

  1. 객체가 생성될 때 인스턴스 변수가 생성된다.
  2. 접근방법: 참조변수명.인스턴스변수명

Tip(암기를 위한 키워드) :

  • 인스턴스가 생성될 때 생성된다.
  • 그러니 먼저 인스턴스를 생성 후 값을 저장하거나 읽어올 수 있음
  • 변수 별로 다른 값을 가질 수 있으므로, 각각의 인스턴스 마다 고유의 값을 가져야할때는
    인스턴스 변수로 선언.

▶▶매서드 영역(선언위치) : 지역 변수

  1. 메서드가 호출 되서 실행될 떄 생성된다.
  2. 메서드가 종료되면 자동으로 제거된다.

Tip(암기를 위한 키워드) :

  • 메서드 안에서 선언되며, 그 안에서만 사용할 수 있다.
  • 해당 메서드 실행시 메모리를 할당 받으며, 실행이 종료되면 메서드가 소멸되어 사용할 수 없다.

0개의 댓글