Trong bối cảnh Generics java, một loại nguyên là một invocation không tham số của một loại chung chung. Họ cũng nói rằng bất kỳ loại không chung chung nào không phải là loại thô.Java Generics - Làm thế nào là một loại nguyên liệu khác nhau từ một loại không chung chung
Sự nhầm lẫn của tôi là, tại sao họ cho rằng loại không phải loại chung không phải là loại thô? Nó khác với lời gọi không tham số của một kiểu generic. Hãy xem xét 2 trường hợp sau đây.
Trường hợp 1:
class A<T>{
}
A a = new A(); //Raw type
Trường hợp 2:
class A{
}
A a = new A();//Non-generic type
Nếu biến "a" cư xử hệt trong cả hai trường hợp, tại sao họ nói trường hợp [1] là kiểu thô trong khi trường hợp [2 ] không phải là?
Hành vi về cơ bản giống nhau. Về mặt ngữ nghĩa nó khá khác biệt. –
Bạn có thể đọc http://stackoverflow.com/questions/2770321/what-is-a-raw-type-and-why-shouldnt-we-use-it –
@Ortomala Lokni cảm ơn vì liên kết đó. Nó nói rằng "Về cơ bản, các kiểu thô hoạt động giống như trước khi các generics được giới thiệu" có thể nói với tôi rằng biến "a" của tôi sẽ hoạt động giống hệt nhau trong cả hai trường hợp. Nếu điều đó đúng, vui lòng trả lời câu hỏi này. Tôi sẽ chấp nhận nó. Nhưng tôi vẫn tự hỏi trong trường hợp đó tại sao họ nói rằng một cái không chung chung KHÔNG PHẢI LÀ LOẠI HÌNH? Có gì sai khi nói rằng tất cả các loại không phải loại chung cũng là LOẠI RAW? –