20210702 TIL

김진태·2021년 7월 2일
0

TIL

목록 보기
18/28

클래스와 객체와 인스턴스.

클래스(Class)

  • 객체를 만들어 내기 위한 설계도
  • 연관되어 있는 변수와 메서드의 집합

객체(Object)

  • 모든 인스턴스를 대표하는 일반적 용어
  • oop의 관점에서 클래스의 타입으로 선언되었을 때 객체라고 부른다.

인스턴스(Instance)

  • 특정 클래스로부터 생성된 객체 (오브젝트)
  • 객체를 소프트웨어에 실체화 하면 그것을 인스턴스라고 부른다
  • 메모리에 할당되어 실제 사용될 때
  • 인스턴스는 어떤 원본(추상적인 개념)으로부터 생성된 복제본을 의미한다.

코드로 확인하기.

  • 클래스

    class Person{
    	String name;
        String age;
    
        public Person() {
        }
    
        public void setName(String name){
            this.name = name;
        }
    
        public void setAge(String age) {
            this.age = age;
        }
    
        public String getName() {
            return name;
        }
    
        public String getAge() {
            return age;
        }
    
        public void talk (){
            System.out.println("안녕 나는"+name+"이야");
        }
    	
    }
  • 객체

    public class TestInstance{
    	public static void main(String[] args) {	
    				Person p = new Person(); 
            p.setName("김진태");
            p.talk();
    	}
    }
    >>> 안녕 나는 김진태이야

생성원리

  1. p라고 하는 참조변수가 stack메모리에 생성
  2. new를 통해 실제값들이 들어갈 공간의 주소값을 가진채 heap메모리에 생긴다.
  3. 대입연산자를 통해 p가 heap공간의 주소를 가르킨다.(참조한다)
profile
안녕!

0개의 댓글

관련 채용 정보