| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 | 31 |
- Java
- docker
- 클린코드
- 주니어개발자
- 헤드퍼스트
- 직장인
- 성수직장인
- JAVA개발자
- 책너두
- Linux
- 성수핫플
- DesignPattern
- 객체지향
- 성수맛집
- 깨끗한코드
- 디자인패턴
- 개발자
- 성수
- 독서일지
- JavaScript
- 독서
- 객체지향프로그래밍
- 상속
- 직장인점심
- 책읽기
- 코딩
- 헤드퍼스트디자인패턴
- IntelliJ
- 성수볼거리
- 오브젝트
- Today
- Total
목록Java (25)
런타임노트
JDK Java Development Kit 자바 개발키트 개발자들이 자바로 개발하는 데 사용되는 SDK(Software Development Kit (소프트웨어 개발 키트)) JDK안에는 자바를 개발 시 필요한 라이브러리들과 javac, javadoc 등의 개발 도구들을 포함되어 있다. java 버전 표기방법 - 보통 JDK 또는 Java SE(Standard Edition) 버전으로 표기한다. - Java SE(Standard Edition) : 가장 기본이 되는 표준 에디션의 자바 플랫폼. 자바 언어의 핵심 기능 제공 - Java EE(Enterprise Edition) : 대규모 기업용 에디션, SE의 확장판이다. - Java ME(Java Micro Edition) : 피쳐폰, PDA폰, 셉톱박..
출처 : https://hianna.tistory.com/529 replaceAll() 과 정규식(regular expression, regex) 활용 public class ToSingleSpace { public static void main(String[] args) { String str = "Hi, Every\t\t One!"; // 연속된 공백 -> 하나의 공백으로 String newStr = str.replaceAll("\\s+", " "); // 결과 출력 System.out.println("[" + newStr + "]"); } } // 결과 // [Hi, Every One!] str.replaceAll("\\s+", " "); 정규식 "\s"는 다음과 같은 종류의 공백(white spa..
48일차. 오브젝트: 코드로 이해하는 객체지향 설계[8주차_토요일] 마지막날 604-615pg #요약 **APPENDIX C. 동적인 협력, 정적인 코드** 01. 동적 모델과 정적 모델 1) 행동이 코드를 결정한다. - 동적 모델이 정적 모델을 결정해야 한다. 2) 변경을 고려하라 -객체지향 설계 관련 다른 도서에서는 도메인 모델을 먼저 만들고 도메인 모델을 기반으로 설계와 구현을 진행하라고 했는데, 도메인 안의 개념과 관계를 담고 있는 도메인 모델은 정적 모델인데? 02. 도메인 모델과 구현 1) 도메인 모델에 관하여 - 도메인 : 사용자가 프로그램을 사용하는 대상영역 - 모델 : 지식을 선택적으로 다순화하고 의식적으로 구조화한 형태 - 도메인 모델 : 사용자가 프로그램을 사용하는 대상 영역에 대한 ..
java.lang Runtime - Runtime 클래스는 실행환경을 객체화하기 위해 사용한다. - Runtime 객체를 이용해서 현 운영체제 시스템 간의 상호작용 가능 - java 클래스가 아닌 운영체제 기반의 프로그램을 실행시키거나 운영체제에 대한 정보 제공 Runtime의 주요 메소드 메소드 설명 Process exec(String command) Command를 실행시키고, 실행시킨 프로세스의 레퍼런스를 반환 static Runtime getRuntime() Runtime 객체의 레퍼런스를 반환 void exit(int status) status를 반환하면서 jvm을 종료시킴 long freeMemory() jvm이 사용가능한 메모리 양(bytes)을 반환 long totlaMemory() jvm..
업무 중에 다른 서버 두 군데로 명령어를 동시에 보내야 하는 일이 생겼다. 폭풍 구글링,, 1. ExecutorService ? - 병렬 작업을 할 때 여러 작업을 효율적으로 처리하기 위해 제공되는 java 라이브러리 - 작업(Runnable, Callable) 등록을 위한 인터페이스. - 각기 다른 쓰레드를 생성해서 작업을 처리하고, 처리 완료 되면 해당 쓰레드 제거하고 ~ 이 작업을 손수 해야 할 것을 ExecutorService가 쉽게 처리해준다. 2. 어떤 식으로 처리하는지 ? ExecutorService에 task만 지정해주면 알아서 쓰레드풀로 task를 실행하고 관리함 >> task는 뭘로 관리하는데? Queue로 관리됨, 쓰레드풀에 있는 쓰레드 수보다 task가 많으면, 미실행된 task는 ..
1. contains() String str = "Java Programming"; System.out.println(str.contains("Java")); // true System.out.println(str.contains("java")); // false contains()는 대소문자를 구분한다. 2. indexOf() 특정 문자열이 존재하면 해당 문자열의 첫 번째 인덱스가 반환되고, 없으면 -1이 반환 됨. String str = "Java Programming"; System.out.println(str.indexOf("Programming")); // 5 System.out.println(str.indexOf("C#")); // -1 참고 : https://developer-talk.tis..
두 개의 REST API를 가지고 서로 요청을 주고받기 위해 RestTemplate을 사용하던 중 발생한 에러입니다. 원인 HTTPS를 통해 HTTP 포트에 액세스했기 때문이다. 해결 해당 부분을 http로 수정하여 요청을 보내기 참고 : https://wildeveloperetrain.tistory.com/64
원인 annotationProcessor 는 자바 컴파일러의 플러그인 중 하나인데, 내가 설치한 Dependency 를 통해 Annotation 을 사용하는 경우 해당 Annotation 에 대한 코드베이스를 검사하고, 수정, 생성한다. 즉, 자바 컴파일러가 Lombok 의 annotation 을 인식하고 동작을 수행할 수 있도록 정의해 주어야 한다. 해결 dependencies 에 아래 내용을 추가해 주니 말끔하게 해결~!! annotationProcessor 'org.projectlombok:lombok' 참고로 gradle 사용 참고 : https://simpleisit.tistory.com/189
48일차 헤드퍼스트 디자인패턴 [8주차_토요일] 636-649pg 요약 **CHAPTER 14. 다양한 패턴 빠르게 알아보기 (feat. 기타 패턴)** 앞에서 소개하지 못한 패턴들 간략하게 훑어보기. [ 책임 연쇄 패턴 (Chain of Responsivility) ] - 1개의 요청을 2개 이상의 객체에서 처리해야 한다면! - 주어진 요청을 검토하는 객체 사슬을 생성한다. 그 사슬에 속해 있는 각 객체는 자기가 받은 요청을 검사해서 직접 처리하거나 사슬에 들어있는 다른 객체에게 넘긴다. [ 플라이웨이트 패턴 ] - 어떤 클래스의 인스턴스 하나로 여러 개의 '가상 인스턴스'를 제공하고 싶다면..! - Tree 객체를 수 천 개 만드는 대신 시스템을 조금 고쳐서 Tree의 인스턴스는 하나만 만들고 모든 ..
47일차 헤드퍼스트 디자인패턴 [8주차_금요일] 622-635pg 요약 **CHAPTER 13. 패턴과 행복하게 살아가기 (feat. 실전 디자인 패턴)** 실전에서 디자인 패턴 활용하기 [ 패턴을 찾아 떠나기 : 패턴 책 추천 ] 1. 디자인 패턴의 정석 2. 패턴 교과서 [ 패턴을 찾아 떠나기 : 디자인 패턴 관련 자료 ] 1. 웹사이트 - 포틀랜드 패턴 라포지토리 - 힐사이드 그룹 - 오라일리온라인 학습 [ 안티 패턴(Anti-Pattern) ] - 어떤 문제의 나쁜 해결책에 이르는 길을 알려준다. - 안티 패턴은 어떤 이유로 나쁜 해결책에 유혹되는지를 알려준다. - 장기적인 관점에서 그 해결책이 나쁜 이유를 알려준다. - 좋은 해결책을 마늗ㄹ 때 적용할 수 있는 다른 패턴을 제안해 준다. **CH..