본문 바로가기

반응형

DEVELOPER/Java

(56) PORTFOLIO GITHUB 방명록
Set 인터페이스 <HashSet> , <TreeSet> DEVELOPER/Java / 2021. 5. 2. 중복되지 않게 자료를 관리하는 Set 인터페이스 HashSet 클래스 Set 인터페이스를 구현한 클래스와 멤버의 중복 여부를 체크하기 위해 인스턴스의 동일성 파악 동일성 구현을 위해 필요에 따라 equals( ) 메서드와 hashCode( ) 메서드 재정의 HashSet은 순서대로 나오지 않음 재정의 한 equals( )와 hashCode( ) 메서드 ... @Override public int hashCode() { return memberId; } @Override public boolean equals(Object obj) { if( obj instanceof Member){ Member member = (Member)obj; if( this.memberId == member.memberId ) r..
Iterator DEVELOPER/Java / 2021. 5. 2. Collection 요소를 순회하는 Iterator 요소의 순회란? 컬렉션 프레임 워크에 저장된 요소들을 하나씩 차례로 참조 순서가 있는 List 인터페이스의 경우는 Iterator를 사용하지 않고 get(i) 메서드를 활용 가능 get(i) 메서드가 제공되지 않는 Set 인터페이스의 경우 Iterator를 활용하여 객체를 순회 Iterator method boolean hasNext( ) : 이 후에 요소가 더 있는지 체크하는 메서드, true/ false를 반환 E next( ) : 다음에 있는 요소를 반환 Iterator 사용 Iterator 변수명 = arrayList.iterator();
Generic 프로그래밍 <T expends 클래스> DEVELOPER/Java / 2021. 5. 1. 상위 클래스의 필요성 T 자료형의 범위를 제한 상위 클래스에서 선언하거나 정의하는 메서드를 공통으로 활용 상속을 받지 않는 경우 T는 Object로 변환되어 Object 클래스가 기본으로 제공하는 메서드만 사용 가능 T extends 사용 예제 전 예제에서 GenericPrinter에 material 변수의 자료형을 상속받아 구현 T에 무작위 클래스가 들어갈 수 없게 Material 클래스를 상속받은 클래스로 한정 1. 상위 클래스 Material을 abstract로 생성 public abstract class Material { public abstract void doPrinting(); } 하위 클래스에서 상속을 받을 수 있게 abstract로 지정 abstract 메서드는 하위 클래스에서 정의 후..
제네릭(Generic) 프로그래밍 <T> DEVELOPER/Java / 2021. 5. 1. 제네릭 자료형 정의 클래스에서 사용하는 변수의 자료형이 여러 개 일 수 있고, 그 기능(메서드)은 동일한 경우 클래스의 자료형을 특정하지 않고 추후 해당 클래스를 사용할 때 지정할 수 있도록 선언 실제 사용되는 자료형의 변환은 컴파일러에 의해 검증되므로 안정적인 프로그래밍 방식 컬렉션 프레임 워크에서 많이 사용 Generic 자료형을 사용하지 않을 때 여러 자료형 타입을 수용하기 위해 Object로 만들 수 있음 단, 인스턴스를 생성 후 클래스 데이터 타입을 이용하기 위해선 강제 형 변화를 줘야 할 때가 있음 코드 예제 여러 재료를 가지는 3D 프린터를 예제로 만들었을 때 1. Plasitc 재료 public class Plastic { public String toString() { return "재료..
[JAVA 파헤치기] 자바의 유용한 클래스들 DEVELOPER/Java / 2021. 4. 29. 01. Object 클래스 - 모든 클래스의 최상위 클래스 java.lang 패키지 프로그래밍 시 자동 import import.java.lang* 많이 사용하는 기본 클래스들이 속한 패키지 String, Integer, System,, 등등 모든 클래스는 Object 클래스를 상속 java.lang.Object 클래스 모든 클래스의 최상위 클래스 모든 클래스는 Object에서 상속받고, Object 클래스의 메서드 중 일부는 재정의해서 사용 가능 (final로 선언되지 않은 클래스가 재정의 가능) 컴파일러가 자동으로 extends Object를 추가 ( class Student → class Student extends Object ) toString( ) 메서드 객체의 정보를 String으로 바꾸어서..
인터페이스(interface) DEVELOPER/Java / 2021. 4. 27. 인터페이스란? 모든 메서드가 추상 메서드로 선언됨 public abstract 모든 변수는 상수로 선언됨 public static final interfacce 인터페이스 이름 { public static final float pi = 3.14F; public void makeSomething( ); } 자바 8부터 디폴트 메서드(default method)와 정적 메서드(static method) 기능의 제공으로 일부 구현 코드가 있음 인터페이스 정의와 구현 1. Interface Calc public interface Calc { double PI = 3.14; int ERROR = -999999999; int add(int num1, int num2); int substract(int num1, i..

반응형