Hyemi Lee

Hyemi Lee

주니어 개발자의 삽질과 기록

JAVA, 변수와 메서드/생성자

변수와 메서드

1. 선언위치에 따른 변수의 종류

  • [인스턴스변수]
    • 클래스 영역에 선언되며, 클래스의 인스턴스를 생성할 때 만들어진다.
    • 인스턴스마다 고유한 상태를 유지해야 하는 속성의 경우, 인스턴스변수로 선언한다.
    • new할때 생성
  • [클래스변수]
    • 인스턴스변수 앞에 static 붙이면 된다.
    • 한 클래스의 모든 인스턴스들이 공통적인 값을 유지해야 하는 속성의 경우
    • 인스턴스를 생성하지 않고도 언제라도 바로 사용 할 수 있다.
    • new할때 생성x 처음 메모리에 로드될때 생성
    • 클래스이름.변수 이런식으로 사용한다
  • [지역변수]
    • 메서드 내에 선언되어 메서드 내에서만 사용 가능

2. 기본형 매개변수 & 참조형 매개변수

  • [기본형 매개변수]
    변수의 값을 읽기만 할 수 있다 (read only)
    기본형의 값이 복사 되어 넘겨주기 때문에 원본에는 영향 x
  • [참조형 매개변수] : 변수의 값을 읽고 변경할 수 있다 (read & write)
    인스턴스의 주소를 넘겨주기 때문에 원본에 영향 o

3. 클래스 메서드(static메서드)와 인스턴스 메서드

  • [인스턴스 메서드]
    메서드의 작업을 수행하는데 인스턴스 변수를 필요로 하는 메서드
  • [클래스(static) 메서드]
    인스턴스와 관계없는 (인스턴스 변수나 인스턴스 메서드를 사용하지 않는) 메서드

  • 클래스의 멤버변수 중 모든 인스턴스에 공통된 값을 유지해야하는 것이 있는지 살펴 보고 있으면, static을 붙여준다
  • 작성한 메서드 중에서 인스턴스 변수나 인스턴스 메서드를 사용하지 않는 메서드에 static을 붙일 것을 고려한다

생성자

1. 생성자란

  • 인스턴스가 생성될 때 호출되는 ‘인스턴스 초기화 메서드’ [조건]
    • 생성자의 이름은 클래스의 이름과 같아야 한다
    • 생성자는 리턴 값이 없다

2. 기본생성자

  • 기본 생성자가 컴파일러에 의해서 추가되는 경우는 클래스에 정의된 생성자가 하나도 없을때 뿐이다.

3. 생성자에서 다른 생성자 호출하기 - this(), This

  • 생성자의 이름으로 클래스이름 대신 this를 사용한다
  • 한 생성자에서 다른 생성자를 호출할 때는 반드시 첫 줄에서만 호출이 가능하다

Reference

  • 자바의 정석 - 남궁성

Share on

Twitter Facebook LinkedIn

You may also enjoy

Redis Stream

2021年04月28日

Stream Stream은 로그 데이터를 처리하게위해 5.0에서 새로 도입된 데이터 타입입니다. 대량의 데이터가 연속적으로 발생할때 처리하기 위해 등장했습니다. 기존 데이터를 수정하지 않고 오직 추가로 발생합니다. 이런 종류의 데이터를 stream or log데이터...

Study, Object, chapter2&3 presentation

2021年04月20日

chapter03. 역할, 책임, 협력 객체지향 설계란, 올바른 객체에게 올바른 책임을 할당하면서 낮은 결합도와 높은 응집도를 가진 구조를 창조하는 활동이다.

Spring, chatting 프로그램 만들기, Reactive란?

2020年06月16日

Reactive 막힘없이 흘러다니는 data(event)를 통해 사용자에게 자연스러운 응답을 주고 규모 탄력적으로 리소스를 사용하며 실패에 있어서 유연하게 대처한다 모든 지점에서 블럭 되지 않게 하자 oop와 같은 패러다임 모든 것을 비동기적인 data의 strea...