개발/TIL

[TIL#10] Enum / 자바 개인 과제 / 알고리즘 연습

서해쭈꾸미 2024. 5. 1. 00:05
오늘 한 공부 키워드

 

1. Enum

2. 자바 개인 과제

3. 협업을 위한 Git & GitHub

 

 

 

 

Java 문제풀이

 

1. 삼항연산자

간단한 if else문은 삼항 연산자를 사용해서 해결하는 게 아직 익숙하지 않다. 삼항 연산자보다 if else문이 가장 먼저 떠올라 그걸로 문제를 풀고, 코드 다시보면 삼항 연산자로 구현할 수 있겠는데 ? 싶은 단계에 머물러있다. ㅋㅋㅋ

 

if else로 풀어도 크게 문제는 없지만 코드 작성할 때 생각을 유연하게 가져가고 싶어서 다음에 간단한 조건 줄 땐 잊지말고 꼭 삼항 연산자 사용해봐야겠다.

 

 

 

 

MySQL 문제풀이

2024.05.01 - [개발/MySQL] - [MySQL] 여러 기준으로 정렬하기

 

[MySQL] 여러 기준으로 정렬하기

프로그래머스 level 1 여러 기준으로 정렬하기 동물 보호소에 들어온 모든 동물의 아이디(ANIMAL_ID)와 이름(NAME), 보호 시작일(DATETIME)을 이름 순으로 조회하는 SQL문을 작성해주세요. 단, 이름이 같

ggumijju.tistory.com

2024.05.01 - [개발/MySQL] - [MySQL] like를 활용한 대소문자 구분

 

[MySQL] like를 활용한 대소문자 구분

MySQL에서는 like로 검사시 대소문자 구분을 하지 않는다. MySQL에서 대소문자 구분하는 방법BINARY(NAME) like '%el%'//BINARY(칼럼명) like '%원하는 문자열%' 이렇게 사용한다면 대소문자를 구분하게 된다.

ggumijju.tistory.com

2024.05.01 - [개발/MySQL] - [MySQL] 중복 / NULL 값 제외 count 하기

 

[MySQL] 중복 / NULL 값 제외 count 하기

SELECT count(distinct NAME) countFROM ANIMAL_INS; distinct = 중복 제거count(칼럼명) = 칼럼 중 NULL 값 있는 칼럼 제거하여 countcount(*) = NULL값 포함하여 count

ggumijju.tistory.com

2024.05.01 - [개발/MySQL] - [MySQL] Having과 Where의 차이점 (by 중복 값 세기)

 

[MySQL] Having과 Where의 차이점 (by 중복 값 세기)

Having과 Where의 차이점 Having은 그룹화 또는 집계가 발생한 후에 조건을 통한 필터링을 할 때 사용된다.Where은 그룹화 또는 집계가 발생하기 전에 조건을 통한 필터링을 할 때 사용된다.   Having

ggumijju.tistory.com

2024.05.01 - [개발/MySQL] - [MySQL] limit로 특정 행만 가져오기

 

[MySQL] limit로 특정 행만 가져오기

limit (num)= num 번째 행만 가져오기 사용 예시 코드SELECT NAME from ANIMAL_INSorder by DATETIME limit 1 DATETIME으로 정렬하고 첫번째 행 가져오게 된다. = 가장 옛날의 행을 가져오게 된다.    limit(num1,num2)= nu

ggumijju.tistory.com

 

 

 

 

자바 개인 과제

 

1.throws를 사용한 예외처리

 

과제에서 예외처리를 해야하는 상황이 있었다. 자바 공부할 때 try catch와 throws 둘 다 배웠지만, 어느 상황에 뭘 사용해야 좋을지 감을 잡고 싶어서 throws만 사용해서 코드를 작성해보았다.

 

throws를 사용하면 상속되고 있는 클래스들, 그 메서드가 호출되어 사용되고 있는 메서드들에 모두 throws를 붙여줘야한다는 점이 코드 상으로도 깔끔하지않고 새로 만드는 메서드나 클래스에서 해당 메서드나 클래스를 사용할 때마다 새로 붙여줘야한다는 점에서 번거로웠다.

 

try catch를 주로 사용하는 것에 익숙해지고, 꼭 필요할 때만 throws를 사용해주어야겠다.

 

 

2.추상 클래스 생성자

 

과제를 하다가 추상 클래스는 따로 객체로 생성할 수도 없는데 굳이 생성자가 필요할까 ? 라는 생각이 들었다. 코드로 직접 확인해보니 추상 클래스에 선언된 생성자는 하위 클래스에서도 선언되어야 에러가 나지 않는 특징이 있었다.  보통 추상 클래스의 생성자는 하위 클래스들에 제약을 줄 때 사용하는 것으로 보인다.