2015-09-11 31 views
6

Tôi đã thấy trong Java rằng người ta có thể làm cho một lớp chung chung và một phương pháp chung chung. Tôi cũng đã nhìn thấy mã mà làm cho constructor chung cùng với Class. Tôi có thể chỉ tạo ra hàm tạo chung không? Và nếu có, làm thế nào để gọi các nhà xây dựng?Tôi có thể tạo một hàm tạo chung mà không làm cho lớp chung chung không?

+1

http://stackoverflow.com/questions/32304427/why-is-it-wrong-to-supply-type-parameter-in-the-constructor-of-a-generic-class/32304725# 32304725 – ZhongYu

+1

Trong khi có thể tôi quan tâm nhiều hơn tại sao bạn muốn tạo hàm tạo chung cho lớp không chung chung. Hay nói chung, tại sao những người xây dựng như vậy lại có thể. – Pshemo

+0

@Pshemo - constructor giống như một phương thức, vậy tại sao nó không thể là generic? :) – ZhongYu

Trả lời

4

Có thể.

class Example { 

    public <T> Example(T t) {} 

    public static void main(String[] args){ 

     // In this example the type can be inferred, so new Example("foo") 
     // works, but here is the syntax just to show you the general case. 
     Example example = new<String>Example("foo"); 
    } 
} 
+0

Cảm ơn @Paul Boddington .... kinda nghĩ như vậy nhưng không chắc chắn về cú pháp – Birendra

+0

@ Birendra Tôi cũng không chắc chắn. Tôi biết nó có thể mặc dù và sau một chút thử nghiệm tôi đã quản lý nó! Tôi chưa từng thấy lý do để làm điều này. –

+0

bạn cũng có thể viết 'Ví dụ mới ("foo") ' – wero

Các vấn đề liên quan