데이터를 추상화한게 클래스
더 자세한게 인스턴스.. 이런 개념인가본데 아직 이해가 안된다
new 예약어를 이용하여 클래스를 생성한다.
클래스형 변수 이름 = new 생성자;
참조형 데이터 타입 참조변수
ex) Student studentA = new Student(); //함수처럼 생겼지만 하나의 클래스를 만든 것
jvm은 운영체제에서 할당받은 메모리 영역을 메소드 영역, 힙 영역, jvm스택 영역으로 구분해서 사용한다.
메소드 영역: 클래스 별로 정적 필드와 상수, 메소드 코드, 생성자 코드 등을 저장
힙 영역: 객체와 배열이 생성 즉 인스턴스..?
jvm스택 영역: 메소드를 호출할 때마다 프레임 추가하고 끝나면 제거
ex) 클래스 만들기

Q. 근데 이러면 클래스 안에 클래스를 만든거?
클래스는 main문 안에서만 만들 수 있음?

추가) 앞의 예시보다 이렇게 쓰는 경우가 더 많음! 결과는 같다
실습에서 나온 studentLee 와 studentKim은 지역변수이다.
앞의 예시들로 인해 studentㅣ-Lee, Kim라는 객체가 힙의 어딘가에 생성됐을텐데
스택에 있는 studentLee 와 studentKim은 그 주소를 가르킨다

참고로 힙에 있는 데이터들은 필요없어지면 GC(Garbage Collector)라는
자바에서 제공하는 쓰레기 수집기가 없애준다.

new키워드에 의해서만 생성된다.
생성자는 클레스 이름과 같아야 한다.
기본 생성자는 public Student(){} 이렇게 생겼는데 자바 컴파일러가 자동으로 추가해줌
다른 생성자가 하나라도 있으면 추가하지 않음
이번 강의 듣는게 2시간이나 걸렸다ㅋㅋ;