클래스란 무엇일까?
-> 클래스는 객체를 생성하기 위한 설계도, 필드, 생성자,메서드로 구성된다.
그렇다면 필드, 생성자, 메서드는 또 무엇일까?
필드 : 객체의 속성으로 데이터를 저장하는 역할을 한다.
ex > String model; String color; 같이 클래스 내부에서 선언된 변수들을 필드라고 한다.
생성자 : 객체의 생성 방식을 결정하는 역할을 한다.
ex > public Car(){} ..기본 생성자 , public Car( String model ){} ..model이라는 매개변수를 통한 생성자

Car라는 객체를 만든다고 하였을때 company, model, color, price등등의 부분이 필드에 속하는 부분이고 밑에 있는
public Car(){} 부분이 기본 생성자라고 쓰여진 것을 볼 수 있다.
하지만 public Car(){}를 작성하지 않고 public Car(String model){}만 작성하는 경우 기본 생성자를 자동으로 만들어주지 않기때문에 String 타입의 model매개변수를 입력받는 경우에만 Car객체를 생성할 수 있게 된다.
메서드 : 객체의 동작이나 행위를 정의하는 역할을 한다.

메서드를 선언하는 방법은 다음과 같다
1. 반환될 타입을 정해준다.
2. 메서드의 메서드명을 작성한다.
3. 받아올 매개변수가 있다면 타입과 사용할 변수명을 입력한다.
4. 필요코드를 작성하고 return이 필요한경우 return을 해준다.
단, return이 되는 값의 타입과 1번에서 정한 반환될 타입이 일치해야 한다.
사진을 해석하면 double타입의 gasPedal메서드가 호출이 되면 매개변수로 입력된 kmh를 speed라는 변수명을 이용하여 return해주고 있는 함수이다. 이럴거면 그냥 kmh를 바로 보여주면 되는거 아니냐 생각할 수 있지만 다 필요한 과정이니 일단 한번만 해보길 바란다.
자, 그럼 객체의 생성은 어떻게 할까?
간단하다! new객체를 이용하면 만들 수 있다.

앞서 객체를 만들때 필드에 대해서 이야기를 잠깐 나누었다.
위에서는 필드를 선언만 해주고 초기화를 시켜주지 않았는데 이렇게 초기화를 하지 않은경우 타입에 따라 초기화되는 기본값이 있다.

잘 유의하고 웬만하면 기본값을 입력해주도록 하자
이렇게 클래스를 이용하여 객체를 잘 생성하였다면 데이터에는 어떻게 접근을 하는지에 대해 알아보자
접근의 방법으로는 외부접근, 내부접근 이렇게 두가지의 형태가 있다.
외부접근 : car.color = "blue"; 이런식으로 도트(.)연산자를 이용하면 객체 내부필드에 접근할 수 있다.
내부접근 : 객체 내부에서 선언된 필드에 접근을 할 때에는 별다른 제한사항 없이 불러서 사용할 수 있다.
일단 요정도 하고 추가적으로 필요한 this, 상속, 오버라이딩 등등은 내일 정리해서 마저 쓰겠다.