일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 펌방지해제
- java 객체
- 체크박스
- bruno mars marry you
- Split
- Marry You
- dom vs sax
- java파일복사
- 갈릴레오 svn
- java 인스턴스
- 자바 객체
- 자바정의
- sax vs dom
- lol 서포터
- jason marz im yours
- 불독맨션 좋아요
- marry you 프로포즈
- This Android SDK requires An...e ADT to the latest version
- java파일삭제
- MySQL
- 타루 예뻐할께
- 이클립스 단축키
- jason maraz
- 문자열자르기
- 자바스크립트강의
- 스크린세이버
- eclipse svn
- eclipse 단축키
- javascript강의
- Mysql명령어
- Today
- Total
쿰뱅이
Java에서 인스턴스(객체)를 만드는 다양항 방법 본문
Java에서 인스턴스(객체)를 만드는 다양항 방법
Java에서는 다음과 같이 인스턴스(객체)를 만드는 방법이 있다.
new
일반적으로 인스턴스는 Java의 예약어 new를 사용해서 만든다. 다음과 같이 하면 Something 클래스의 인스턴스를 만들고 변수 obj에 대입할 수 있다.
--> obj라는 이름을 가지는 Something 클래스 타입의 객체를 가진다 라고 말할 수 있겠다.
- Something obj = new Something();
이 경우 클래스 이름(여기에서는 Something)을 소스 안에 기술할 필요가 있다.
clone
Prototype 패턴에서 등장했던 clone 메소드를 사용하면 이미 존재하는 인스턴스를 기초로 새로운 인스턴스를 만들 수 있다. 다음과 같이 하면 자신(this)을 기초로 새로운 인스턴스(객체)를 만들 수 있다(단, 생성자는 호출되지 않는다).
java.lang
|
- class Something {
...
public Something createClone() {
Something obj = null;
try {
obj = (Something)clone();
} catch ( CloneNotSupportedException e ) {
e.printStackTrace();
}
return obj;
}
}
newinstance
java.lang.Class 클래스의 newInstance 메소드를 사용하면 Class의 인스턴스(객체)를 기초로 그 Class가 표시하고 있는 클래스의 인스턴스(객체)를 만들 수 있다(인수 없는 생성자가 호출된다).
newInstancepublic T newInstance()
|
다음은 newInstance의 예입니다. Something 클래스의 인스턴스 someobj가 있다면 다음 식에서 Something 클래스의 인스턴스를 새롭게 만들 수 있다.
- someobj.getClass().newInstance();
실제로 newInstance 메소드는 InstantiationException이나 IllegalAccessException을 예외로 제공하기 때문에 try{ } catch() {}로 묶든지 메소드에 throws을 선언해야 한다.
'자바 > JAVA 입문' 카테고리의 다른 글
StringTokenizer // HashMap // HashTable (0) | 2011.11.10 |
---|---|
java split // 문자열 자르기 (0) | 2011.10.11 |
Jad를 이용한 Class파일 java로 만들기 (0) | 2011.10.11 |
자바 사용자에게 입력받아 파일 입출력 (0) | 2011.10.11 |
자바 Enumeration 인터페이스 정말 궁금합니다... (0) | 2011.10.11 |