Tôi biết điều này có vẻ như là một câu hỏi kỳ lạ, vì quan điểm của hai hoặc nhiều đối tượng chia sẻ cùng một lớp là hành vi của họ giống nhau, tức là phương thức của họ giống hệt nhau.
Tuy nhiên, tôi tò mò liệu có bất kỳ ngôn ngữ OOP nào cho phép bạn xác định lại các phương thức của các đối tượng theo cùng một cách mà bạn có thể gán các giá trị khác nhau cho các trường của chúng. Kết quả sẽ là các đối tượng được xây dựng từ cùng một lớp không còn biểu hiện chính xác cùng một hành vi.
Nếu tôi không nhầm, bạn có thể làm JavaScript này không? Cùng với câu hỏi này, tôi hỏi, tại sao ai đó muốn làm điều này?
setClickHandler()
phương thức và làm cho các thể hiện khác nhau của cùng một lớp làm những việc rất khác nhau. Trong các ngôn ngữ không có biểu thức lambda thuận tiện, việc tạo một lớp con ẩn danh mới chỉ dành cho trình xử lý mới sẽ dễ dàng hơn. Theo truyền thống, các phương thức ghi đè được coi là đặc trưng của một lớp mới , trong khi thiết lập các giá trị của các thuộc tính thì không, nhưng đặc biệt là với các hàm xử lý, hai phương thức này có hiệu ứng rất giống nhau, vì vậy sự khác biệt trở thành một cuộc chiến về từ ngữ.