상세 컨텐츠

본문 제목

자바 clone() , 마커 인터페이스 란?

관리X 과거글

by 까먹기전에 2015. 1. 22. 14:05

본문

반응형






class A {

int a;


A(int b) {

a = b;

}


A geta() throws CloneNotSupportedException {

return (A) this.clone();

}

}


public class zzzzz {

public static void main(String[] args) {


A a = new A(100);

try {

A b = a.geta();

} catch (CloneNotSupportedException e) {

System.out.println(e.getMessage());

}


}

}



CloneNotSupportedException


implements Cloneable // 마커 인터페이스 , 복사할수있다는 체크표시

이게 없으면 복제가 안됨, api 사전에서 interface Cloneable 를 보면 인터페이스안에

안에 추상메서드 상수등 아무것도 없다.




-----------------------------------------------------------------------



B o = new B();

System.out.println(o.a);

B o2=o;

o = null; 

o2=null;

new B()를 가리키는 모든변수를 null 해줘야 쓰레기가됨

-------------------------------------------------------------------

class A {

public void finalize() throws Throwable {

System.out.println("객체소멸됨~");

}

}


class B {

public static void main(String args[]) {

A o1 = new A();

o1 = null;

System.gc();

}

}






관련글 더보기