You are using an outdated browser. Please upgrade your browser to improve your experience.

class.newInstance는 기본적으로, 해당 클래스의 디폴트 생성자를 호출하게 됩니다..

object 타입으로 반환을 해주고요.. newInstance의 파라메터로 object의 배열을 넘겨줄 수도 있습니다.

이러한 형식의 장점은.. 런타임에서 Class Type을 인자로 받아서,

어떤 객체든 생성할 수 있다는 것이 장점이겠네요.. 유연한 프로그래밍이 가능하다는 것인데요..


// ArrayList vs LinkedList // 1) 메모리 // ArrayList // => 고정 크기를 갖는다. // => 크기를 초과하면 새로 배열을 만들어야 하기 때문에 메모리 낭비가 심하다. // => 기존 배열은 가비지가 되기 때문에 가비지가 과다 생산된다. // LinkedList // => 값을 넣을 때마다 새 메모리가 추가되는 가변 크기를 가진다. // => ArrayList 보다 메모리 낭비가 적고 가비지를 덜 생산한다. // 2) 속도 // ArrayList // => 배열의 특징 상 인덱스를 이용하여 특정 항목을 찾을 때 속도 빠르다. // => 삭제할 때 이전 항목을 당겨와야 하기 때문에 속도가 느리다. // => 삽입할 때 현재 항목을 다음 항목으로 이동해야 하기 때문에 속도가 느리다. // LinkedList // => 인덱스를 이용하여 특정 항목을 찾을 때 리스트의 처음부터 찾아야 하기 때문에 속도가 느리다. // => 삭제할 때 이전 항목과 다음 항목을 바로 연결하면 되기 때문에 속도가 빠르다. // => 삽입할 때 현재항목과 다음 항목을 새 항목과 연결하면 되기 때문에 속도가 빠르다.