본문 바로가기

궁금 개념정리/자바

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

클래스) 구현하고자 하는 로직들을 대표하는 단어를 클래스명으로 정한다(암묵적). 클래스는 연관되어 있는 변수와 메소드의 집합이다. 

일종의 설계도와 같은 역할을 한다. 


인스턴스) new를 이용해서 생성한다 ex) Calculator c1 = new Calculator();

-> 클래스 바탕으로 sw에서 구현된 구체적인 실체로 실체화된 인스턴스는 메모리에 할당된다.

-> 인스턴스는 객체에 포함된다. 

-> c1의 데이터 타입은 Calculator라는 의미인데 사용자 정의 데이터 타입이 만들어진것과 같다. 

-> this.left에서 this는 클래스를 통해 만들어진 인스턴스 자신을 가리킨다. 


객체) 

-> 보통 구체적 코드에서 나타나는 객체를 인스턴스라고 부르고 로직 설계시 나타나는 인스턴스를 객체라고 부른다. 

-> 클래스의 인스턴스라고 부른다. 

-> oop관점에서 클래스 타입으로 선언되었을 때 객체라고 부른다. 

* oop(객체지향 프로그래밍): 캡슐화, 추상화, 다형성, 상속성


- 클래스 타임으로 선언되었을 대 객체라고 부르며, 그 객체가 메모리에 할당되 실제로 사용될 때 인스턴스라고 부른다

ex)public class Anima(){} //클래스

 

    Animal cat, dog; //객체

    cat = new Animal(); // Animal클래스의 인스턴스(객체를 메모리에 할당)인 cat

  

'궁금 개념정리 > 자바' 카테고리의 다른 글

파일출력스트림 - FileOutputStream  (0) 2019.03.15
에러 & 예외 처리  (0) 2019.03.15
기본 입출력 방식  (0) 2019.03.14
자바 컬렉션  (0) 2019.03.13
자바 컴파일러, 인터프리터  (0) 2019.03.12