본문 바로가기
반응형

java17

enum 클래스 활용하기 예전에는 enum을 잘 사용하지 않다가 최근에서야 enum 클래스를 활용하기 시작했다. 확실히 enum 클래스를 사용하면 코드만 읽고도 의미를 확실하게 알 수 있어 좀 더 좋은 코드가 되는 것 같다. enum을 좀 더 잘 활용하기 위해서 정리하는 시간을 한번 갖으려고 한다. Enum이란? enum클래스는 JDK 1.5에 나온 기능이다. 열거체를 정의할 수 있는 기능으로 상수를 클래스처럼 보이게 해 준다. 장점 비교할 때 실제 값뿐만 아니라 타입까지도 체크한다. enum의 상숫값이 재 정의되어도 다시 컴파일할 필요가 없다. enum 정의 enum 열거체이름{ 상수1이름, 상수2이름, 상수3이름, ... } 상수를 작성할 때는 대문자를 사용하여 작성한다. ;을 붙이지 않는다. 예시 enum Rainbow{ .. 2023. 9. 6.
Java 로깅 알아보기 2 - logback 2023.08.04 - [자바(Java)] - Java 로깅 알아보기 1 - Logging이란 기본적인 내용은 이전 글을 통해 확인하는 것을 추천! Log4j 구조 Logger : 로그의 주체, 로그의 메시지 전달, 특정 패키지 안의 특정 레벨 이상만 출력 Appender: 어디에 출력할지에 대해 기술 Encoder: 어떻게 출력할지에 대해 기술 Logback 환경 설정 (logback.xml) resources 하단에 logback.xml 파일 생성 %d{yyyy-MM-dd HH:mm:ss} %highlight([%-5p]) --- [%F]%M\\(%L\\) : %m%n 속성 설정 appender 부분은 출력위치를 결정해 주고 (STDOUT), Appender로 사용할 클래스를 설정해 주는 부분이다. .. 2023. 8. 4.
Java 로깅 알아보기 1 - Logging이란 로깅 (Logging)시스템의 작동 정보인 로그(Log)를 기록하는 것시스템이 작동할 때 작동 상태의 기록과 보존, 이용자의 습성 조사 및 시스템 동작의 분석 등을 하기 위해 작동 중 각종 정보를 기록하는 것일반적인 출력인 System.out.println()은 동기이기 때문에 로그를 출력하는 동안 다음 동작을 할 수 없기 때문에 성능저하가 발생한다.Slf4j (Simple Log Facade For Java)로깅 프레임워크가 아님.다양한 로깅 프레임워크가 접근할 수 있도록 하는 추상화 계층(인터페이스)단독적으로 사용할 수 없다.브리지를 통해 자바의 다양한 로깅 프레임워크를 간편하게 사용할 수 있다.로그 종류Fatal : 아주 심각한 에러Error : 요청을 처리하던 중 문제가 발생한 상태Warn : 처.. 2023. 8. 4.
Gradle을 이용한 순수 자바 Jar 만들기 스프링 부트에서는 간단하게 bootJar 커맨드를 이용해서 Jar파일로 만드는 것이 간편했지만 자바만 사용했을 때에는 몇 가지 작업을 해주어야 한다. 1. Gradle plugin 설정 그래들에는 Java에 관련된 Task들을 작업해 둔 기본 plugin이 존재한다. 이를 이용하면 빌드와 같은 작업들을 간단하게 할 수 있다. build.gradle에 다음 구문을 추가해주면 된다. plugins { id 'java' } 이와 같이 추가해주고 gradle build gradle jar 명령어를 실행해 주거나 인텔리제이에서 가장 우측에 보면 Gradle 탭이 있는데 거기에서 Tasks - build에 들어가서 build와 jar를 순서대로 작동시켜 주면 된다. 이렇게 하면 프로젝트 최상위 디렉터리에 build.. 2023. 6. 20.
JAVA 면접 예상 질문 리스트 요즘 유행하는 chatgpt를 사용해보고 싶어 chatgpt를 사용해서 자바에서 알아둬야 할 것들을 정리해 보았습니다. Java 언어의 특징은 무엇이며, 이를 어떻게 활용할 수 있나요? 플랫폼에 독립적인 애플리케이션 개발: Java는 JVM에서 실행되므로, 플랫폼에 구애받지 않고 애플리케이션을 개발할 수 있습니다. 객체지향적인 설계: Java는 OOP를 지원하므로, 객체지향적인 설계를 통해 코드의 가독성과 재사용성을 높일 수 있습니다. 안정적인 애플리케이션 개발: Java는 예외 처리를 지원하여, 애플리케이션의 안정성을 높일 수 있습니다. 개발 생산성 향상: 다양한 라이브러리와 프레임워크를 제공하므로, 개발 생산성을 향상할 수 있습니다. Java에서 객체지향 프로그래밍(OOP)이란 무엇이며, OOP의 장.. 2023. 2. 22.
자바 코딩테스트를 위한 정리 - 입출력2 (EOF 처리) EOF란 End of File의 줄임말로 파일의 끝을 뜻합니다. 알고리즘 테스트에선 일반적으로 테스트 케이스의 수를 따로 명시해주지 않고 입력을 가변적으로 받을때 사용하게 됩니다. 예로 '4375번 문제 (문제 제목: 1)'이 있습니다. 이와 같이 문제에서 테스트케이스의 개수 혹은 끝을 명시해주지 않을때 어떻게 처리해야하는지 알아보도록 하겠습니다. 자바의 대표적인 두가지 입력 클래스인 아래 2가지 기준으로 설명하겠습니다. 1. Scanner 2. BufferedReader 1. Scanner Scanner에서 EOF를 처리하는 방법은 hasNext()메소드를 사용해서 처리하는 방법입니다. 해당 메소드는 다음 입력이 있으면 true 없으면 false를 반환합니다. 이를 사용해서 EOF여부를 확인할 수 있습.. 2022. 12. 21.
인텔리제이(IntelliJ) 설치하기 java IDE를 이클립스로 사용하고 있지만, 요즘 대세인 인텔리제이로 갈아타려고 한다! 그래서 인텔리제이의 설치방법에 대해서 알아보았습니다. 먼저 인텔리제이 홈페이지에 들어갑니다. https://www.jetbrains.com/ko-kr/idea/ IntelliJ IDEA: 우수성과 인체 공학이 담긴 JetBrains Java IDE www.jetbrains.com 다운로드 버튼을 눌러 들어가면 해당 화면이 나오는데 Utimate버전과 Community버전이 있습니다. 간단하게 비교해보자면 Ultimate버전은 기업에서 쓰는 유료버전이고 Community버전은 무료 버전입니다 상세하게 비교하고 싶으신 분들은 해당 페이지를 참고해주세요 https://www.jetbrains.com/ko-kr/produc.. 2022. 1. 20.
자바 입문하기4 - 피라미드 만들기 별로 피라미드 만들기 예시) * *** ***** ******* ********* 먼저 단순하게 *만 출력하는 코드를 만들었다. 줄 수를 나눠주고 해당 줄마다 *의 개수를 늘려야 하기 때문에 for문을 두 번 사용해주어야 한다. (별의 개수는 1, 3, 5, 7,... 홀수로 증가) 해당 내용을 토대로 자바로 구현해보자면 public class MakePyramid{ public static void main(String[] args) { for(int i=0; i * *** ***** ******* ********* 이제 왼쪽에 정렬되는걸 모양을 맞춰주면 된다. 이 부분은 공백 문자(" ")를 사용해 맞춰주면 될 것 같다. 위에서부터 5,4,3,2,1 칸으로 띄어주면 된다. 코드로 구현해보자. publ.. 2022. 1. 7.
반응형