Giả sử, chúng ta có:Làm thế nào để `isInstanceOf` hoạt động?
class B
class A extends B
trait T
Sau đó, nó giữ:
val a: A with T = new A with T
a.isInstanceOf[B] // result is true !
Có quyền nói, isInstanceOf
phương pháp kiểm tra, nếu có ít nhất một loại (không phải tất cả các loại) mà phù hợp phía bên tay phải trong mối quan hệ loại phụ?
Tại cái nhìn đầu tiên, tôi nghĩ rằng một giá trị với loại A with T
không thể là một subtype của B
, vì A
vàT
là không phải cả hai phân nhóm của B
. Nhưng đó là A
hoặcT
là loại phụ của B
- có đúng không?
Vâng, đúng vậy. – Nicolas
Dưới đây là tổng quan nhanh về bình đẳng đối tượng http://joelabrahamsson.com/learning-scala-part-eight-scalas-type-hierarchy-and-object-equality/ – Jaider