❄️ 내일배움캠프 7기

2024.10.14 본 캠프 15일차

Genie_. 2024. 10. 14. 20:08
728x90
반응형

1. 오늘 해결한 에러

오늘 2가지의 에러를 해결했다

첫 번째는, 폴더가 사라지는 버그(https://geniebox.tistory.com/147)랑 

두번째는, 메소드 호출 시 매개변수 다르게 넣은 에러였다.

오류가 뜬 이미지

매개변수 부분에서 int 타입이 되어야하는데 계속 String 타입으로 인식이 되는 오류가 있었다.

우선, 빨간 줄 쳐진 쪽 마우스를 올렸을 때 인텔리제이에서 이유를 알려준다.

이유에도 역시나 int 타입을 받아야하는데 String으로 되어있다고 나왔었고, 튜터님에게도 물어봤더니 대부분의 매개변수 오류는 정의한 것과 다르게 매개변수를 넣어주는 것이 원인이라고 하셨다.

오류가 난 부분을 찾아보았더니 (아래이미지) 정말 매개변수 부분이 int값이 들어가있지 않고 String으로 되어있었던 것이다.

왼쪽이 오류가 뜬 코드, 오른쪽이 해결 후 개선한 코드

매개변수 부분이 Main에서는 int타입으로 두가지가 있었지만, AddOperation 클래스에서는 String타입이 추가되어 호출 했을 때 오류가 났던 것!! 

앞으로는 리턴 타입, 매개변수의 타입과 갯수를 잘 확인하는 습관을 들여야겠다(항상 확인 또 확인)


2. 새로 알게 된 것

우선 첫번 째 오류는 해결하면서 알게 된 것은 따로 포스팅해서 적지 않겠다!

두번 째 오류에서 알게 된 것은 내가 코드를 변경했다고, 예전에 입력했 던 코드를 보고싶어도 못 본다고 생각했는데,

[원하는 코드 드래그] - [마우스 오른쪽 클릭] - [Local History] - [Show History] 를 클릭해주면

전체 창

이렇게 창이 뜬다!! 상세히 설명해보자면,

수정된 코드들

왼쪽 패널에는 이렇게 시간대 별로 내가 입력한 코드 목록을 볼 수 있고, 해당 시간대를 클릭하면

왼쪽) 과거 코드 / 오른쪽) 현재 코드

이렇게 과거의 코드를 직접 볼 수 있다! 그리고 현재 내 코드랑 어느부분이 바뀌었는지 비교해 볼 수 있는 기능이다!!

아마 앞으로도 많이 쓸 것 같아서 정리한다


프로그래머스 기초문제 (문제링크)

두 수의 나눗셈 문제를 풀다가, 형 변환에서 오류가 계속 똑같이 떴었다.

incompatible types: possible lossy conversion from double to int return answer;

이 오류는 무슨 뜻일까 ? ? 

int는 정수를 저장할 때 사용, 소수점이 있는 값을 int로 변환하면 소수점 아래의 수를 잃게 된다.
따라서 double을 int로 저장하는 것은 lossy 할 수 있기 때문에 자바는 허용하지 않는다.

아마 실수형 변수를 Int로 형변환 하는 과정에서 나오는 소수점 아래의 수를 잃는게 자바에서는 안되는 것 같다!

쉽게 이야기해서 큰 컵에 담긴 물을 작은 컵에 옮겨 담으려고 하니, 손실이 발생할 수 있다는 것이다.

이런 문제는, 코딩 테스트에서는 크게 문제가 안될 것처럼 보이지만 은행쪽이나 금융업계에서 돈이 날라가는 걸 생각해보면 엄청 큰 버그가 된다.

그렇기에 자바에서는 소수점 아래를 날리는 형변환은 컴파일 오류를 발생시키는 것 같다!


3. 회고

12시간 중 몇시간을 몰입했나 생각을 해보면 몇 시간 못 한 기분이다

오늘 전체적으로 몸 컨디션이 계속 춥고 열나서 정신없어서 더 집중을 못했던 것 같다. 

내일은 집중 제대로 해보자! 체력 관리도 잘 하기! ( 밥 너무 배부르게 먹지않기 )

매 주 주말마다는 시간이 나질 않지만, 격 주로는 주말에 시간이 비니까 격 주마다 주말 시간 공부에 다 쏟아보기!

지금 정확히 자바 이해하지 못 한 부분 정리해서 내일 복습 + 질문해서 이해 조금이라도 하기.

생성자 this, 상속, overriding, super, 다형성, instanceof, 추상클래스 등등 

강의+책으로 복습! 예제는 직접 손으로 쳐보면서 결과 돌려보기

 

오늘 내가 잘한 일

  • 모르는 부분은 정리해서 질문하기
  • 질문 받은 내용 복습해서, 블로그에 정리하기

 

내일 해야 할 일 

  • 데일리루틴 - 알고리즘 문제 풀기
  • 개인과제 스텝 1완성 - 2시작
  • 자바 강의 4주차 완강

 

728x90
반응형