인스턴스 메소드와 클래스 메소드

JuHyung Yoon·2023년 4월 27일
0

method() table

예시messege.length()Math.max(4,5)
메소드 형식static 이 없는 인스턴스 메소드static 이 있는 클래스 메소드
---인스턴스 메소드는 객체를 만들어 실행해야 한다.예)String.lenght:----------------------:
메소드 실행message 객체로 실행한다.Math 클래스로 실행한다.
결론인스턴스 메소드는 객체를 만들어 실행해야 한다.예)String.lenght클래스 메소드는 객체를 만들지 않고 클래스에 정의된 메소드를 실행한다. 형식은 클래스이름.메소드()
장점재사용성이 좋다속도가 빠르고 메모리를 효율적으로 사용 가능하다.
단점리소스를 많이 잡아먹는다.무분별한 사용으로 static의 사용은 메모리 누수가된다. 재사용성이 떨어진다.

인스턴스의 뜻

인스턴스는 일반적으로 실행 중인 임의의 프로세스, 클래스의 현재 생성된 오브젝트를 가리킨다. 객체(오브젝트)의 인스턴스는 데이터베이스나 SGA, 백그라운드 프로세스등 광범위한 컴퓨터시스템 자원의 접근에 할당된 물리 메모리의 일부를 가리킨다.

내가 생각하기에 클래스에서 생성된 객채에 메모리의 위치를 알려준다고 생각한다.

잠깐 지나가는 메모리에 대한 고찰

Scanner sc = new Scanner(System.in);

new 연산자의 의해 Scanner클래스의 인스턴스가 메모리의 빈 공간에 생성된다.
이 메모리의 주소값을 sc가 저장하고 이 인스턴스를 가리킨다.
ex)

animal dog = new animal();
dog.buldog = "불독";

new를 통해 다음에오는 animal클래스의 ()괄호에 animal클래스의 인스턴트가 메모리의 빈공간을 만들고 이 ()괄호를 주소로 하고있는 dog가 앞쪽의 animal의 이름표가 되는것이다.

문자열 데이터

  • 객체는 메모리영역 중 heap에 저장된다. String으로 선언된 참조타입 변수는 이 객체를 찾아가기 위한 참조값 (like주소)을 저장합니다. 데이터를 바로 변수에 저장하는 원시타입과 다릅니다.

-참조형 타입에서 참조란?클래스가 선언하는 변수의 값 = 힙에 존재하는 메모리 주소(혹은 위치)를 참조한다는 개념

참조형 타입 : reference type
클래스를 사용하여 변수를 선언
이때,선언된 변수가 저장하는 것은 데이터가 아니다.
heap영역의 객체를 찾아가기위한 참조값(주소가)저장된다.

String message = "hello java!";
Scanner sc = new Scanner(System.in);

profile
ㅋㅎ딩초보

0개의 댓글