2013-08-19 16 views
5

Cách tốt nhất để tạo một đứa trẻ được cấp cho cha mẹ dữ liệu là gì? Nó sẽ được ok để có một phương pháp với tất cả các bậc phụ huynh đánh giá cao trên lớp trẻ như:Cách tốt nhất để tạo đối tượng con từ cha mẹ của nó

public class Child extends Person { 
    public Child(Parent p) { 
    this.setParentField1(p.getParentField1()); 
    this.setParentField2(p.getParentField2()); 
    this.setParentField3(p.getParentField3()); 
    // other parent fields. 
    } 
} 

để sao chép đối tượng con dữ liệu ti mẹ?

Child child = new Child(p); 
+1

mở rộng Person() {Không cần ngoặc vuông. – initramfs

+0

Tại sao 'Child' của bạn cần phải được thông qua một' Parent' được tạo ra? –

+0

@tieTYT có lẽ, chỉ có thể, người đó muốn một bản sao con chính xác bao gồm tất cả các lợi ích và thói quen xấu của mình = \ –

Trả lời

9

Tôi khuyên bạn nên tạo một hàm tạo trong lớp cha mẹ chấp nhận một đối tượng kiểu Parent.

public class Child extends Parent { 
    public Child(Parent p) { 
    super(p); 
    } 
} 

public class Parent { 
    public Parent(Parent p){ 
     //set fields here 
    } 
} 
+0

+1 Đó là thông minh! –

+9

tạo đối tượng 'Person' từ đối tượng' Person' có vẻ hơi vô nghĩa .. – christopher

+0

Đó là toàn bộ điểm của câu hỏi mà tôi cho là. –

0

đơn giản hơn nhiều là

 public class Child extends Parent { 
      public Child(Parent p) { 
      //Set fields with parent 
      } 
     } 

đối tượng con của bạn luôn luôn có quyền truy cập vào các lĩnh vực mẹ của trao bổ truy cập thích hợp được đưa ra.