Java/Day25

    [Java] Wrapper 클래스

    Wrapper 클래스 'Wrapper 클래스'라는 이름에는 '감싸는 클래스'라는 의미가 담겨있다. Wrapper 클래스는 기본 자료형의 데이터를 감싸는 클래스라고 생각하면 된다. Wrapper 클래스의 종류기본 생성자 BooleanBoolean(boolean value) CharacterCharacter(char value) ByteByte(byte value) ShortShort(short value) IntegerInteger(int value) LongLong(long value) FloatFloat(float value), Float(double value) DoubleDouble(double value) 위에서 보이듯이 모든 기본 자료형에 해당하는 Wrapper 클래스가 정의되어 있다. 그리고 ..

    [Java] Clone 문제 (깊은 복사, 얕은 복사, 공변반환)

    1. 깊은복사 & 공변반환 문제 class Point implements Cloneable { private int xPos; private int yPos; public Point(int x, int y) { xPos=x; yPos=y; } public void showPosition() { System.out.printf("[%d, %d]", xPos, yPos); } public void changePos(int x, int y) { xPos=x; yPos=y; } public Object clone() throws CloneNotSupportedException { return super.clone(); } } class Rectangle implements Cloneable { Point upp..

    [Java] 인스턴스 복사 clone 메소드

    인스턴스 복사(복제) - clone 메소드 - Object 클래스에는 인스턴스의 복사를 위한 다음 메소드가 정의되어 있다. protected Object clone() throws CloneNotSupportedException 그리고 이 메소드가 호출되면, 이 메소드가 호출된 인스턴스의 복사본이 생성되고, 이 복사본의 참조 값이 반환된다. 단 다음의 조건을 만족해야 이 메소드를 호출할 수 있다. "Cloneable 인터페이스를 구현해야 합니다." 즉 Cloneable 인터페이스를 구현하고 있는 클래스의 인스턴스만이 clone 메소드의 호출이 가능하다. 만약에 Cloneable 인터페이스를 구현하지 않은 클래스의 인스턴스에서 clone 메소드를 호출하면 CloneNotSupportedException 예..

    [Java] isEquals

    1. isEquals 문제 연산자는 참조변수의 참조 값을 비교한다. 따라서 인스턴스에 저장되어 있는 값 자체를 비교하려면 별도의 방법을 사용해야 한다. 값 자체를 비교할 수 있도록 public boolean isEquals(IntNumber numObj) 메소드를 정의하시오. class IntNumber { int num; public IntNumber(int num) { this.num=num; } public boolean isEquals(IntNumber numObj) { return this.num == numObj.num; } } class ObjectEquality { public static void main(String[] args) { IntNumber num1=new IntNumber(..