20240729 개발공부
오늘의 공부 내용!
1) 선언, 생성을 할 때, 조심할 점!
do - while 문에서 반복문 안에
String textString = sc.nextLine();
이라고 선언과 동시에 값을 입력받게 했는데
오류가 났다.
선언,생성을 if, while 문 처럼 구분이 된 공간에서 하게 된다면 그 공간에서만 선언이 되기 때문에
반복문이 시작되기 전에 선언해주는 방법으로 사용하면 된다.
String textString;
String removeString;
위쪽에 이런 식으로 미리 선언해주는 방식으로 수정해주니 문제가 해결됐다.
2) 상속관계와 포함관계 및 자바 작동하는 원리 이해한대로 정리하기
상속관계는 물려받아 사용하는것.
public class 자식클래스 extends 부모클래스 { } 형태로 쓰인다.
public class 불고기버거 extends 햄버거 {} 이런 느낌이고,
기본적인 틀을 제공 받아 세부 내용을 수정하기 참 좋다.
햄버거에 공통적으로 들어가는 재료를 부모클래스 값으로 지정하고
자식클래스에서 조금씩 수정해서 각각 다른 버거를 만드는 느낌
포함관계는
객체에 구성요소를 정리해 놓은 느낌이다.
햄버거의 빵을 예로 들면
public class 빵 {
String company; // 회사이름
double price; // 빵 가격
// 빵의 생성자가 요구하는 값이 2개다. 회사명, 가격을 입력해야한다.
public 빵(String company, double price) {
this.company = company; // this 로 이름이 중복되지 않게 지정해준다. 이 빵의 회사는 여기다!
this.price = price; // this 로 가격이 중복되지 않게 지정해준다. 이 빵의 가격이 여기다!
}
}
배우면서 드는 생각은 햄버거라는 클래스 자바 클래스에 다 넣어도 될 내용이지만 따로 관리하기 위해
쪼개놓은 느낌도 있다. ( 포함관계 )
3) 내가 입력하는 값은 어디에 적용되는 것인지!
Main 에서 입력하는 값들이 어디에 적용되는 건지 확인해봤다.
3주차 강의 참고.
public Car(String model, String color, double price) {
this.model = model;
this.color = color;
this.price = price;
}
Car.java 에 정리되어있는 Car 생성자다.
Car를 생성할 때, 3개의 값을 받는다고 써있다.
Car car = new Car("GV80", "Black", 50000000);
맨 앞에 Car 는 타입
Car 타입의 car 라는 객체를 만들었다. (관련된 정보는 Car.java의 public class Car 에서 가져온다!)
객체에 입력된 값은 ("GV80", "Black" , 50000000) 이다.
Tire[] tires = new Tire[]{
new Tire("KIA", 150000), new Tire("금호", 150000),
new Tire("Samsung", 150000), new Tire("LG", 150000)
};
배열 성성.
public Tire(String company, double price) {
this.company = company;
this.price = price;
4개의 Tire를 Tire.java의 생성자를 이용해서 만들었다.
이렇게 만들면서 넣는 정보들은 Car.java , Tire.java에 추가 되는것이 아니라!!
위에서 생성한 새로운 자동차 객체에 적용된다. (오늘 복습하며 느낀점 핵심!!!!!!)
car.setTire(tires);
car.setDoor(doors);
car.setHandle(handle);
이런 메서드도 마찬가지.
Car.java의 메서드를 사용해서 새로운 객체에 값을 적용하는것!!! (이런게 너무 헷갈렸다)