클래스, 객체 필드

2019. 2. 26. 20:05JAVA

=======================클래스===========================


객체지향 프로그래밍(OOP)



java라는 사람의 설계도를 -> JVM이 사용하는 class라는 설계도로 만들어 ->

heap 메모리에 동작하는 객체를 만든다.(ex - Scanner sc = new Scanner(System.in)




1. 객체

객체란 속성과 동작을 가지고 있다. 속성이란 객체간의 비교가 가능한 부분이다.

또한 같은 객체라도 속성이 다를 수 있다. 그렇지만 동작은 같은 객체라면 같다.



 ---설계도(클래스)---      ---객체(인스턴스)---

 |

 | 필드     ----->        속성(성질)

 |      new

 |       Scanner sc = new Scanner(System.in)

 |

 |

 |

 |     메소드        ----->         동작(기능)

 |

 |                 sc.nextInt();



#필드

설계도가 가지는 고유한 성질,

객체의 기능이 실행하는데 필요한 정보, 성실

예시 ) car 클래스의 성질은 모델명, 제조사, 제조년 등



VO : Value Object 또는 DTO : Data Franfer Object

값(필드)으로 설계된 객체



2. 클래스 선언 규칙

1) 하나이상의 문자로 이루어져있다.

2) 시작은 대문자이여야한다.(클래스 유일)

3) 숫자로 시작 못한다.

4) 특수문자는 _$만 사용가능하며 자바언어는 사용못함.




3. new 클래스();

이라 생성하면 바로 heap메모리에 생성된다.


Car c = new Car();

      ①  ②     ③


①. 새로 만들 객체의 타입 (설계도의 이름)

②. 만들어서 사용할 객체 명

③. Car 라는 객체를 새로 만들겠다는 표현, 생성된 객체의 주소값을 ②에 대입.





Item[] cart = new Item[3];