본문 바로가기

반응형

전체 글

(322)
Vim - 커서 이동 (이전 비주얼 모드에서 선택한 텍스트로) 이전에 비주얼 모드에서 선택한 텍스트의 첫 번째 줄에서 커서 이동키동작'이전에 선택한 텍스트의 첫 번째 줄의 첫 문자로 커서 이동`이전에 선택한 텍스트의 첫 번째 줄의 첫 번째로 선택된 문자로 커서 이동  이전에 비주얼 모드에서 선택한 텍스트의 마지막 줄에서 커서 이동키동작'>이전에 선택한 텍스트의 마지막 줄의 첫 문자로 커서 이동`>이전에 선택한 텍스트의 마지막 줄의 첫 번째로 선택된 문자로 커서 이동
컴퓨터로 아이폰 초기화 시, 다운로드가 취소되는 경우 해결법 애플 공식 페이지에 의하면, 아이폰 비밀번호를 까먹어서 초기화를 원할 시, 컴퓨터(윈도우 혹은 맥)로 초기화가 가능하다.   간략한 초기화 단계아이폰을 컴퓨터에 연결 -> 아이폰 복구 모드 진입 -> 컴퓨터에서 아이폰 복원 -> 아이폰 초기화 완료  다만 초기화 시, 문제가 되는 부분은 컴퓨터에서 아이폰 복원하는 단계이다.아이폰 복원 버튼을 누르면, 소프트웨어 업데이트를 다운로드하고 초기화 진행이 가능하다고 나온다. 필자는 소프트웨어 업데이트를 다운로드하던 중, 아이폰이 복구 모드에서 나와 전원이 켜지고 컴퓨터와 연결이 끊겨 초기화를 못했다.몇 번 반복했지만 안돼서 구글링 해보니 업데이트 다운로드가 15분을 넘기는 경우 다운로드가 중단되는 걸 알게 되었다.   애플 공식 페이지에서도 업데이트 다운로드 1..
자바 - String 값을 boolean 값으로 변환하는 법 자바에서 "true"와 같은 String 타입의 값을 boolean 값으로 변환이 가능하다.타입 변환에는 변경하는 방법은 2가지가 있다. Boolean.parseBoolean()Boolean.valueOf() parseBoolean() vs valueOf() 차이점public class Example { public static void main(String[] args) { String str = "true"; System.out.println(Boolean.parseBoolean(str)); // true (타입: 원시 boolean) System.out.println(Boolean.valueOf(str)); // true (타입: Boolean 객..
자바 - 인터페이스에 default 메소드 사용 이유 1. 구현 코드가 있는 메소드 작성 가능interface Car { void startEngine();}위와 같이 자바에서는 인터페이스 내부에 메소드 작성이 가능하지만 메소드에는 구현 코드는 존재할 수 없다.왜냐하면 인터페이스의 모든 메소드는 추상적이기 때문에 메소드를 구현하지는 못한다.  interface Car { default void startEngine() { System.out.println("시동을 건다"); }}하지만 default 키워드를 메소드 앞에 붙이면 해당 메소드를 실행할 수 있는 구현 코드를 작성할 수 있다.이제 Car를 구현하는 클래스는 startEngine() 메소드를 사용이 가능하다.  2. 인터페이스에 새로운 메소드 추가 시,  기존 코드 유지..
자바 - 클래스의 메소드 오버라이드 못하게 하는 법 (final 키워드) 설계한 클래스를 상속은 가능하지만 해당 클래스의 특정 메소드만 수정(오버라이드)를 금지하고 싶을 때, final 키워드를 사용한다. 예시: final 키워드 없는 메소드class Phone { public void charge() { System.out.println("충전"); }}Phone 클래스는 charge() 메소드를 지닌다.Phone 클래스를 상속한 클래스들은 charge() 메소드를 사용할 수 있고 charge() 메소드를 오버라이드 할 수 있다. 만약 Phone 클래스를 설계한 개발자가 Phone 클래스의 charge() 메소드 코드를 상속한 클래스에서도 동일한 charge() 메소드 코드로 유지시키고 싶으면 final 키워드를 삽입하면 된다. 예시: final 키워..
에어팟 프로 2 개봉기 및 사용기 에어팟 프로 1세대를 사용한 지 3년 반인데... 현재 겪는 문제이번 년부터인가 많이 떨어트려서 그런지 왼쪽에서 볼륨이 높으면 틱틱? 소리가 나고 특히 차를 타면 엄청 심해서 사용하기 불편했다.본체 배터리가 빨리 닳는 거 같아 자주 충전함.가끔 한쪽이 충전이 안 되어있음.문제들을 고치기 위해 수리는 아닌 거 같아서 차라리 볼륨 조절 기능도 있는 에어팟 프로 2세대를 구매를 했다.   쿠팡에서 286,620원에 구매했다 (아마 세일을 안 했으면 안 샀을 터).   뭔가 1세대와 비슷한 박스 외관.   구성품은 에어팟 프로 2세대, C to C 케이블, 이어팁이다.   생산된 지 2개월 된 물품.   외관 차이는 아랫부분에 스피커와 옆에 랜야드 루프 걸이가 추가됐다.그리고 충전 포트가 C 타입이다.   쿠팡..
자바 - 문자열에서 문자열 추출하기 (substring() 메소드) 문자열의 substring() 메소드로 원하는 문자열을 추출할 수 있다.주의할 점은 문자열 추출 시, 기존 문자열을 변경하지 않고 추출할 문자열만 반환한다. 특정 인덱스부터 끝까지 문자열 추출하기public class SubstringExample { public static void main(String[] args) { String str = "hello world"; System.out.println(str.substring(1)); // ello world System.out.println(str); // hello world }}substring() 메소드의 첫 번째 인수는 추출 시작 인덱스를 의미한..
자바 - 클래스 상속 못하게 하는 법 (final 키워드) 자바는 객체 지향 프로그래밍 언어이기 때문에 상속은 아주 중요한 특징이다.하지만 내가 설계한 클래스를 다른 코드에서 사용할 수 있게 하고 상속만 못하게 하고 싶은 경우가 있다.이럴 때, final 키워드를 활용하면 된다.  final class Apple { }// class NewApple extends Apple { } error: cannot inherit from final Apple위와 같이 Apple 클래스를 final로 정의했더니 NewApple 클래스는 Apple 클래스를 상속 할 수 없다.  그러면 상속을 못하게 하는 이유는 무엇일까?1. 설계한 클래스만 사용할 것을 강제하고 싶을 때 (상속을 하면 자식 클래스에서 부모 클래스의 코드를 수정(오버라이드) 및 새로운 코드 추가 가능).2. ..