Computer >> Máy Tính >  >> Lập trình >> Javascript

Làm thế nào để triển khai Đa hình trong JavaScript?

Tính đa hình

Tính đa hình là một trong những nguyên lý của Lập trình hướng đối tượng (OOP). Nó giúp thiết kế các đối tượng theo cách mà chúng có thể chia sẻ hoặc ghi đè bất kỳ hành vi nào với các đối tượng được cung cấp cụ thể. Tính đa hình tận dụng lợi thế của kế thừa để biến điều này thành hiện thực.

Trong ví dụ sau, các đối tượng con như ' cricket 'và' quần vợt 'đã ghi đè' select 'phương thức được gọi từ đối tượng mẹ' trò chơi 'và trả về một chuỗi mới tương ứng như được hiển thị trong đầu ra. Trong khi một đối tượng con khác là 'bóng đá', thay vì ghi đè select phương thức, được chia sẻ (kế thừa) phương thức và hiển thị chuỗi mẹ như được hiển thị trong đầu ra.

Ví dụ

<html>
<body>
<script>
   var game = function () {}
      game.prototype.select = function()
   {
      return " i love games and sports"
   }
   var cricket = function() {}
   cricket.prototype = Object.create(game.prototype);
   cricket.prototype.select = function()                //  overridden the select method to display      {                                                         new string.  
      return "i love cricket"
   }
   var tennis = function() {}
   tennis.prototype = Object.create(game.prototype);  // overridden the select method to display new
   tennis.prototype.select = function()                  string              
   {
      return "i love tennis"
   }
   var football = function() {}
   football.prototype = Object.create(game.prototype);  // shared parent property
   var games = [new game(), new cricket(), new tennis(), new football()];
   games.forEach(function(game){
      document.write(game.select());
    document.write("</br>");
   });
</script>
</body>
</html>

Đầu ra

i love games and sports
i love cricket
i love tennis
i love games and sports