Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- linux시간으로 변경
- 정규식 문자열 출력
- 1697
- CentOS7
- grafana dashboard
- 백준
- InfluxDB
- subporcess path
- g++ 업데이트
- c3 축 가리기
- centos pyhon 설치
- gcc 업데이트
- regex_search
- influxdb 설치
- python subprocess
- snmp
- python popen
- telegraf
- c3 second
- c3 초
- python os
- semanage
- gcc regex
- c++ 정규식
- snmp test
- selinux port 등록
- 정규식 컴파일
- c3 축 없애기
- c3 step graph
- 정규식 활용
Archives
- Today
- Total
리셋 되지 말자
코드 작성 본문
스프링을 적용하지 않은 방식의 기존 자바 코드
- 클래스 다이어그램
- 시퀀스 다이어그램
소스 코드
- Tire.java
package expert001_01;
public interface Tire {
String getBrand();
}
- KoreaTire.java
package expert001_01;
public class KoreaTire implements Tire {
public String getBrand() {
return "코리아 타이어";
}
}
- AmericaTire.java
package expert001_01;
public class AmericaTire implements Tire{
public String getBrand() {
return "미국 타이어";
}
}
- Car.java
package expert001_01;
public class Car {
Tire tire;
public Car() {
tire = new KoreaTire();
// tire = new AmeriacTire();
}
public String getTireBrand() {
return "장착된 타이어: " + tire.getBrand();
}
}
- Driver.java (main)
package expert001_01;
public class Driver {
public static void main(String[] args) {
Car car = new Car();
System.out.println(car.getTireBrand());
}
}
- 실행 결과
장착된 타이어: 코리아 타이어
JUnit test 코드
- /src/test/java/expert001_01/CarTest.java
package expert001_01;
import static org.junit.jupiter.api.Assertions.*;
import org.junit.jupiter.api.Test;
class CarTest {
@Test
void 자동차_장착_타이어브랜드_테스트() {
//fail("Not yet implemented");
Car car = new Car();
assertEquals("장착된 타이어: 코리아 타이어", car.getTireBrand());
}
}
- 실행 결과
정리
- 자동차는 타이어에 의존한다.
- 운전자는 자동차를 사용한다.
- 운전자가 자동차에 의존한다고 봐도 된다.
- 자동차의 생성자 코드에서 tire 속성에 새로운 타이어를 생성해서 참조할 수 있게 했다.
'Java(폐지) > spring 책' 카테고리의 다른 글
스프링을 통한 의존성 주입-스프링 설정 파일(XML)에서 속성 주입 (0) | 2020.08.12 |
---|---|
스프링을 통한 의존성 주입-XML 파일 사용 (0) | 2020.08.10 |
스프링 없이 의존성 주입하기 2 - 속성을 통한 의존성 주입 (0) | 2020.08.06 |
스프링 없이 의존성 주입하기 1 - 생성자를 통한 의존성 주입 (0) | 2020.08.06 |
IoC/DI - 제어의 역전/의존성 주입 (0) | 2020.08.06 |
Comments