TIL 2022-09-27 (화) 8일차

이성호·2022년 9월 29일
0

TIL

목록 보기
8/21
post-thumbnail

Java 기초

아직까지는 자바 기초 부분에 대해서 수업이 진행되고있다. static과 메소드 생성 및 응용, 배열, 참조형 변수과 String 등 객체 지향 언어의 기초라고도 볼 수 있는 부분들에 대해서 배우고 있다. 헤깔리기는 하는데 아직은 어렵다는 생각은 안든다.

오늘 그룹스터디 장의 모임이 있었다. 크게 불편한 사항은 없었고 딱히 어려운 일도 없었다. 단지 일주일마다 그룹 스터디 진행 상황을 윗선에 공유해주는게 다인 것 같다. 거의 한달 주기로 이렇게 모임이 있을 예정이다. 우리 그룹은 일단은 알고리즘이랑 코딩테스트 연습? 대비? 그룹으로 정해졌다. 임시적으로. 언제 그룹이 와해될지 또는 목표가 바뀔지 모른다. 일단은 모두가 합의해서 바꾸거나 그룹원이 바뀌거나는 자유롭게 이루어져도 된다고 한다. 그룹 스터디에서 하는 내용은 따로 포스트를 작성해보려고 한다.

온라인 강의와 오프라인 강의의 진도가 조금은 다르기 때문에 TIL을 작성할 때에도 이를 반영하기로 했다. 물론 나누지 않고 적어도 상관없지만 오프라인은 이전에 온라인으로 배운 내용을 하기때문에 내용이 겹칠 수 있어서 나누는게 보기 편할 것 같다.


온라인

  • static 변수
    일반적인 멤버 변수는 인스턴스를 생성할 떄마다 입력을 해주어야 한다.
    하지만 여러 개의 인스턴스가 공유하는 기준 값, default가 필요한 경우 static 변수를 지정해서 공통적으로 사용할 부분을 미리 정해줄 수 있다.
    인스턴스가 생성될 때가 아닌 프로그램이 메모리에 로딩이 될 때 바로 메모리에 할당이 된다.
    인스턴스 생성과 상관없이 사용가능하므로 클래스이름을 통해서 변수를 불러올 수 있다.

  • static 메소드
    static 변수 처럼 메소드를 지정해서 동일하게 사용할 수 있다. 인스턴스마다 동일한 메소드를 사용한다면 static 메소드를 미리 생성해서 편하게 사용할 수 있다.

  • 배열
    배열의 길이와 요소의 개수는 동일하지않다는 것을 유의해야한다.
    배열을 선언하면 개수만큼 메모리가 할당되지만 실제로 입력된 요소는 이보다 적은 경우가 있다.
    따라서 length 속성을 사용할때는 배열의 개수를 세는 것이기 때문에 요소의 개수와는 상이하다.


오프라인

  • 참조형 변수

원시 타입 : int, float, double, -> stack에 저장(엄격하게 관리)
참조 타입 : 클래스, 배열, 문자열, 열거형 String, Scanner ... -> heap에 저장 (유연하게 관리)

메모리의 위에서 부터 쌓으면 heap, 밑에서 부터 쌓으면 stack

인스턴스는 메모리에 할당한 객체를 말함

String은 내용이 같으면 같은 주소값을 바라보도록 한다.

profile
이따금씩 올라오는 개발자 블로그

0개의 댓글