>  기사  >  Java  >  Java에서 객체를 생성하는 여러 가지 방법은 무엇입니까?

Java에서 객체를 생성하는 여러 가지 방법은 무엇입니까?

王林
王林원래의
2020-05-26 14:23:306006검색

Java에서 객체를 생성하는 여러 가지 방법은 무엇입니까?

Java에서는 다음과 같은 다섯 가지 방법으로 객체를 생성할 수 있습니다.

1. 새 키워드를 사용하세요.

이것은 객체를 생성하는 가장 일반적이고 간단한 방법입니다. 이런 방식으로 우리는 어떤 생성자(매개변수가 없거나 매개변수화된)를 호출할 수 있습니다.

Employee emp1 = new Employee();

2. Class 클래스의 newInstance 메소드를 사용하세요

이 newInstance 메소드는 매개변수가 없는 생성자를 호출하여 객체를 생성합니다.

다음과 같은 방법으로 newInstance 메소드를 호출하여 객체를 생성할 수 있습니다.

Employee emp2 = Employee.class.newInstance();

(동영상 튜토리얼 권장 사항: java video)

3 생성자 클래스의 newInstance 메소드를 사용합니다.

는 newInstance 메소드와 매우 유사합니다. Class 클래스의 java.lang .reflect.Constructor 클래스에는 객체를 생성하는 newInstance 메소드도 있습니다. 이 newInstance 메소드를 통해 매개변수화된 생성자와 전용 생성자를 호출할 수 있습니다.

Constructor<Employee> constructor = Employee.class.getConstructor();
Employee emp3 = constructor.newInstance();

4. 복제 메소드 사용

객체의 복제 메소드를 호출할 때마다 jvm은 새 객체를 생성하고 이전 객체의 모든 내용을 복사합니다. clone 메소드를 사용하여 객체를 생성해도 생성자는 호출되지 않습니다.

clone 메소드를 사용하려면 먼저 Cloneable 인터페이스를 구현하고 정의된 clone 메소드를 구현해야 합니다.

Employee emp4 = (Employee) emp3.clone();

5. 역직렬화 사용

객체를 직렬화 및 역직렬화하면 jvm이 별도의 객체를 생성합니다. 역직렬화 중에 jvm은 객체를 생성하고 생성자를 호출하지 않습니다. 객체를 역직렬화하려면 클래스가 직렬화 가능 인터페이스를 구현하도록 해야 합니다.

ObjectInputStream in = new ObjectInputStream(new FileInputStream("data.obj"));
Employee emp5 = (Employee) in.readObject();

추천 튜토리얼: Java 개발 시작하기

위 내용은 Java에서 객체를 생성하는 여러 가지 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.