[Java] 클래스와 객체 1

C____JIN·2022년 6월 14일
0

Java

목록 보기
1/9
post-thumbnail

클래스와 객체

용어 정리

  • 객체 : 객체 지향 프로그램의 대상, 생성된 인스턴스
  • 클래스 : 객체를 프로그래밍하기 위해 코드로 만든 상태
  • 인스턴스 : 클래스가 메모리에 생성된 상태
  • 멤버 변수 : 클래스의 속성, 특성
  • 메서드 : 멤버 변수를 이요하여 클래스의 기능을 수현
  • 참조변수 : 메모리에 생성된 인스턴스를 가리키는 변수
  • 참조 값 : 생성된 인스턴스의 메모리 주소값

코드

package classpart;

public class Student{  //클래스

	int studentID;  // 멤버 변수
    String studentName;
    int grade;
    String address;
    
    public String getStudentName() {
    	return studentName;
    }	// 메서드
    
    public static void main(String[ ] args) {
    Student studentAhn = new Student();
    studnetAhn.studentName = "안연수";
    
    System.out.println(studentAhn.studentName);
    System.out.println(studentAhn.getStudentName());
    }
}

메모리 구조

Data

  • 프로그램의 전역변수정적변수가 저장되는 공간
  • 프로그램의 시작과 동시에 할당
  • 프로그램이 종료되면 소멸
  • Data 영역과 Stack 영역은 컴파일 시 할당될 메모리의 크기가 결정

Heap 메모리

  • 프로그램에서 사용하는 동적 메모리 공간
  • 객체가 생성될 때 사용하는 공간
  • 사용이 끝나면 메모리를 해제해 줘야함
    • 자바는 Garbage Collector가 자동으로 메모리 해제

Stack 메모리

  • 함수의 호출과 관계된 지역변수매개변수가 저장되는 영역
  • 스택영역에 저장되는 함수의 호출과 관련된 정보를 stack frame이라고 함
  • 함수의 호출이 종료되면 저장된 정보들은 함께 소멸
profile
개발 블로그🌐 개발일지💻

0개의 댓글