본문 바로가기

Back-End34

TIL 230525 : @오버라이드 super. this. 지난 시간에 위와 같이 Car 클래스와 Tire, Handle, Door 클래스를 각 객체로 생성해서 포함하는 걸 만들었었다. 그리고 각 클래스에는 생성자에 sout으로 생성자가 실행됐음을 표시해두었고 결과로도 확인할 수 있었다. Car car = new Car(); Car 객체를 생성해서 포함된 객체들도 생성되는지 확인해보자. 추가적으로, 내부 객체들이 먼저 윗줄부터 생성되고, 마지막으로 Car객체가 생성되는 걸 확인할 수 있었다. 상속. 부모로부터 모든 걸 물려받을 수 있는 금수저 클래스같달까. 이번엔 Car 클래스로부터 상속받아 SuperCar클래스를 생성해보았다. 마찬가지로 SuperCar에도 생성시 sout되게 해두었다. 실행해보자. Car 객체까지 생성되는 걸 확인했다. 살짝 예상못한 친구였는.. 2023. 5. 25.
TIL 230524 : 캡슐화..? (접근제어자, getter, setter, 유지보수..) 지난시간 다중상속이 잘 못 이해한거같다.. 객체안에 객체 이해해보려는 흐름. public class Car { //Door생성자. Car객체를 만들 때 Door클래스 객체도 자동으로 만들어짐. Door door = new Door(); } public class Door { String color; } Car 클래스와 color 필드를 갖는 Door 클래스를 만들었고, Car 객체를 만들 때 Door 객체를 만들도록 했다. 자동으로 Door 객체의 변수이름은 door인데 이건 문제없으려나? 다른 Car 객체 ex. car2의 Door 객체도 door일텐데 겹칠텐데..?? 상관없나보다 같은 효자동이어도 전주시 효자동도 있고 경주시 효자동도 있는 그런건지. car1.door.color="red"; Syste.. 2023. 5. 24.
TIL 230523 : 클래스 안에 클래스 안에 필드는?? (feat. 다중상속) Car라는 클래스의 필드영역에 price를 선언했다. 외부에서 도트연산자로 Car 클래스로 생성된 car1객체내의 필드에 접근한 것을 알 수 있었다. Car클래스 안에 Door클래스의 생성자를 포함했고 Door클래스안에 color라는 String을 선언했을 때, car1.door.color="red";와 같은 방식으로 접근할 수 있을까? 실패했다. intelliJ에서 추천하는 솔루션은 public Object color가 Door클래스에 선언하는 것이었다. 적용했더니, Door 클래스안에서 color 변수를 public으 로 선언했고, 그렇게 적용하고 나니 접근이 가능해졌다. 왜 Object지? String으로 바꿔봤음에도 동작했다. 자바공식문서보면 String이 Object 하위에 있는것처럼 보였다. .. 2023. 5. 23.
TIL 230522 : toString()은 대괄호를 포함한 배열인 척하는 문자열이었다. 24.09.04 추가지금 다시보니 참 아무것도 모르던 시절의 것으로 가득한 포스팅입니다.이후에 또 지금 모르던 것을 발견할지도 모르겠습니다만, 우선 다시 읽어보며 내용을 추가해봅니다. https://thiswooin.tistory.com/152 List객체를 toString()하게 되면 일어나는 일https://thiswooin.tistory.com/9 TIL 230522 : toString()은 대괄호를 포함한 배열인 척하는 문자열이었다.향상된 for문으로 전체 출력을 해보려 했다. 오류 발생. for-each문에서는 배열이나 Iterable이 필요하다는thiswooin.tistory.com     기존글향상된 for문으로 전체 출력을 해보려 했다. 오류 발생. for-each문에서는 배열이나 Iter.. 2023. 5. 22.