본문 바로가기

전체 글20

CS :: 배열 Array 배열 Array란? 같은 타입의 여러 변수를 하나의 묶음으로 다루는 것을 말한다. 1000개의 값을 다루기 위해 1000개의 변수를 선언한다면 복잡하니, 이럴 경우 Array를 활용한다. int[] score = new int[5]; 배열의 특징 같은 타입의 값들이 들어가야 한다. 선언 시 배열의 길이를 정하고, 길이는 한번 생성하면 변경할 수 없다. 저장공간이 연속적으로 배치되어 있고, 그 저장공간을 가리키는 참조변수로 배열에 접근할 수 있다. 배열의 장점 인덱스를 통해 바로 접근이 가능하다. 데이터를 읽어오는데 걸리는 시간이 가장 빠르다. 연속된 메모리 공간에 존재하기 때문에 관리하기가 편하다. 배열의 단점 배열의 크기를 변경할 수 없다. 변경하려면 새로운 크기의 배열을 생성해 복사해야한다. 실행 속.. 2022. 5. 1.
Git :: git stash 임시 저장해두기 작업 도중에 잠시 브랜치를 바꿔야 할 경우 완료하지 않은 일을 commit하기 껄끄러울 때 git stash를 사용한다 git stash git stash를 명령어를 사용하면 작업한 내역이 보관되고 git staging에서도 사라진다. 다른 브랜치에서 작업을 끝내고 다시 돌아오면 stash해둔 내역을 불러오면 되는데, 불러온 작업들은 git staging에 바로 들어가지 않는다. stash 해 둔 내역을 불러올 때 -index 옵션을 붙여서 불러와야 불러옴과 동시에 git staging에도 추가할 수 있다. 새로운 stash 생성 git stash git stash save stash 목록 확인 git stash list stash 했던 작업 다시 가져오기 (git stagint 추가 없이) git st.. 2022. 4. 29.
이펙티브 자바 Item 4 :: 인스턴스화와 private 생성자 이 글은 이펙티브 자바 아이템 4를 읽고, 백기선의 '이펙티브 자바 완벽 공략 1부'의 아이템 4 강의를 듣고 정리한 글입니다. 인스턴스화를 막으려거든 private 생성자를 사용하라 기본 생성자 상속 클래스는 상위 클래스의 기본 생성자를 호출한다. AssertionError static 메서드 Class 멤버인지 Obect 멤버인지 구분하는 자바 키워드인 static ! static 메서드는 클래스를 통해 접근할 수 있다. public class UtilityClass { public static String hello() { return "hello"; } public static void main(String args[]) { UtilityClass.hello(); } } ⬇️ 이런 static 메.. 2022. 4. 24.
Builder Pattern과 lombok @Builder Builder는 주로 lombok의 @Builder 어노테이션을 이용해 쉽게 사용해서 직접 구현해본 적은 한 번뿐이었다. 이펙티브 자바를 읽다 Builder 패턴이 나온 김에 예제를 따라서 직접 구현해보기로 했다. 예제 클래스명은 Coffee로 바꿔서 구현했다. 구현 public class Coffee { private String bean; private boolean water; private boolean syrup; public Coffee(Builder builder) { bean = builder.bean; water = builder.water; syrup = builder.syrup; } public static class Builder { //필수 매개변수 private String be.. 2022. 4. 10.