목록Java (6)
빰_s
개요 1/3 = 0.3333333333333... 이 숫자를 소숫점 2번째 자릿수까지만 출력하고 싶다.(1/3 => 0.33) 어떻게 해야 할까? 방법의 종류 . System.out.printf(); 가장 간단한 방법이지만, 리턴 값으로써 사용할 수가 없다. // a = 1, b = 2, c = 3 System.out.printf(".2f",a/b); // 출력 : 0.33 System.out.printf(".2f",b/c); // 출력 : 0.67 (반올림 처리됨) Math.ceil(), floor(), round() Ceil() : 올림 Floor() : 버림 Round() : 반올림 위 3가지 Math 함수를 활용하여도 소수를 자를 수 있다. 다만, 위 함수는 소수 첫째 자릿수에서 올리는 위 함수만..
요약 단일 책임의 원칙(Single Responsibility Principle) 개방 폐쇄 원칙(Open Close Principle) 리스코프 치환 원칙(Liskov Substitution Principle) 인터페이스 분리의 원칙(Interface Segregation Principle) 의존성 역전의 원칙(Dependency Inversion Principle) 1. 단일 책임의 원칙 (Single Responsibility Principle) - 하나의 클래스는 하나의 목적을 위해 생성됨. - 클래스가 제공하는 모든 서비스는 하나의 책임을 수행하는 데 집중되어 있어야 함. ( A라는 캐릭터를 조작하기 위해 만들어진 클래스는 다른 캐릭터를 사용하면 안됨) 2. 개방 폐쇄 원칙 (Open Close..
공통점 : 용도 문자열을 저장하고 관리하는 클래스 차이점 : 불변성 String은 불변 / StringBuilder와 StringBuffer은 가변 ex) String str = “hello“; // String str = new String(“hello“); str = str +”world“; // [hello world] 겉으로 보기엔 hello 값을 가지고 있던 String 클래스의 참조변수 str이 가리키는 곳에 저장된 “hello”에 world 문자열을 더해 “Hello world”로 변한 것이라고 생각 가능 실제론 기존에 “hello”라는 값을 가진 String 클래스의 참조변수 str이 “hello world”라는 값을 가지고 있는 새로운 메모리 영역을 가리키게 됨. (기존 “hello”값을..
JDK 1.5부터 추가된 기능. import 문을 사용하면 클래스의 패키지명을 생략할 수 있는 것과 같이 (ex. import java.lang.Math; => Math.max(a,b) // java.lang 을 생략할 수 있음.) static import를 사용하면 static 멤버를 호출할 때 클래스명을 생략할 수 있음. 아래는 그 예시를 보자. import static java.lang.Integer.*;// Integer 클래스의 모든 static 멤버 import static java.lang.Math.random;// Math.random()만 import. 괄호는 붙이지 않는다. import static java.lang.System.out;// 이렇게 하면 System.out을 out만으로..
AssertJ : Junit 기반 테스트 코드를 작성하는데 사용되는 라이브러리 장점 - 메서드 체이닝을 지원하기 위해 좀 더 깔끔하고 읽기 쉬운 테스트 코드 작성 가능 (Junit에서 기본적으로 제공하는 assertEquals에 비해 가독성이 좋다는 것이 장점) assertEquals(a,b); // a == b ? 같은지 : 다른지 assertThat(b).isEqualTo(a); // a == b ? 같은지 : 다른지 - 개발자가 테스트를 하면서 필요하다고 상상할 수 있는 거의 모든 메서드를 제공 라이브러리 의존성 설정 Java 8 이상 기반 프로젝트는 3.x 버전을, java 7 이하 기반 프로젝트는 2.x 버전을 사용해야함 Gradle - Java 8 이상 testCompile 'org.asser..
JPA 실습을 하려고 김영한 강사님의 JPA 기본기 다지기 강의를 들으려다가 에러가 발생했다 이게 뭔소린가 하여 찾아보니, 대충 서버 호환 버전이 달라서 생긴 오류라고 한다. - 해결) 에러창에 나와있는 최신 버전을 지우고, https://www.inflearn.com/questions/357257 h2 커넥션이 안됩니다. - 인프런 | 질문 & 답변 h2다운받고 서버 시작 하려는데 아래 같은 애러가 나옵니다... 인터넷에 쳐도 답이 잘 나오지 않네요.. 두번째 강의에서 벌써 막혀 속상합니다... General error: 'The write format 1 is smaller than the support www.inflearn.com 해당 인프런 사이트에 김영한님께서 말씀해주신대로 1.4.2버전으로 ..