전체 글
-
[Wrapper, Number 클래스] int와 Integer의 차이개발/Java 2021. 1. 10. 14:37
자바에서 int와 Integer의 차이는 뭘까? 자바에서 Collection 타입을 사용할 때 항상 int 타입이 아닌, Integer 타입으로 정의한다. 다음과 같이 ArrayList가 있을 때, add()에는 int 타입을 파라미터로 준다. List answer = new ArrayList(); answer.add(1); Integer로 정의하고 그냥 int값을 넣어도 될거면, 도대체 왜 이 둘을 구분하는 것일까? 뭐가 다를까? The Numbers Classes Number 클래스는 java.lang 패키지에 있는 추상 클래스이다. 그리고 Integer는 Number를 상속받아 구현한 서브 클래스다. Integer를 비롯한 Byte, Short, Double, Float, Long 클래스들은 동명의..
-
[live-study] 8: 인터페이스개발/Java 2021. 1. 9. 10:45
목표 자바의 인터페이스에 대해 학습하세요. 학습할 것 (필수) 인터페이스 정의하는 방법 인터페이스 구현하는 방법 인터페이스 레퍼런스를 통해 구현체를 사용하는 방법 인터페이스 상속 인터페이스의 기본 메소드 (Default Method), 자바 8 인터페이스의 static 메소드, 자바 8 인터페이스의 private 메소드, 자바 9 인터페이스란 인터페이스란 객체가 할 일을 정의해놓은 타입이다. 구현 코드(객체를 사용하는 코드)와 객체 사이에 위치해서 서로 통신하도록 다리 역할을 한다. 다리 역할을 해줌으로서 교환성이 높아지고, 곧 다형성의 구현을 의미한다. 모든 기능을 추상적으로 정의하여 설계도처럼 사용한다. 자바8 부터 static 메소드나 default 메소드로 추상화가 아닌 구현도 가능해졌다. 자바8..
-
[live-study] 7: 패키지개발/Java 2021. 1. 8. 20:33
목표 자바의 패키지에 대해 학습하세요. 학습할 것 (필수) package 키워드 import 키워드 클래스패스 CLASSPATH 환경변수 -classpath 옵션 접근지시자 package 키워드 패키지란? 특징 패키지란 하나의 디렉토리와 같은 것이다. 패키지명은 파일 구조와 동일해야 한다. 서로 관련 타입들을 그룹화하고 네임스페이스를 정의한다. 패키지와 타입(class, interface, enum..)의 이름을 합쳐야 FQCN(Fully Qualified Class Name)이 된다. 예를 들어 String 클래스의 패키지는 java.lang이고, FQCN은 java.lang.String이 된다. String str = "class name"; java.lang.String fqcn = "Fully Q..