JavaScript抽象

JavaScript抽象

抽象是一种隐藏实现细节并仅向用户显示功能的方法。换句话说,它忽略了无关的细节,只显示了所需的细节。

要记住的要点

我们无法创建Abstract Class的实例。
它减少了代码的重复。

JavaScript抽象示例

示例1

让我们检查是否可以创建Abstract类的实例。
 <script>
//Creating a constructor function
function Vehicle()
{
    this.vehicleName= vehicleName;
    throw new Error("You cannot create an instance of Abstract class");
}
Vehicle.prototype.display=function()
{
    return this.vehicleName;
}
var vehicle=new Vehicle();
 </script>

JavaScript抽象_https://bianchenghao6.com_【JavaScript 基础】_第1张

示例2

让我们看一个实现抽象的例子。
 <script>
//Creating a constructor function
 function Vehicle()
{
    this.vehicleName="vehicleName";
    throw new Error("You cannot create an instance of Abstract Class");
}
Vehicle.prototype.display=function()
{
    return "Vehicle is: "+this.vehicleName;
}
//Creating a constructor function
function Bike(vehicleName)
{
    this.vehicleName=vehicleName;
}
//Creating object without using the function constructor
Bike.prototype=Object.create(Vehicle.prototype);
var bike=new Bike("Honda");
document.writeln(bike.display());
 </script>
输出:
Vehicle is: Honda

示例3

在此示例中,我们使用instanceof运算符测试对象是否引用了相应的类。
 <script>
//Creating a constructor function
 function Vehicle()
{
    this.vehicleName=vehicleName;
    throw new Error("You cannot create an instance of Abstract class");
}
//Creating a constructor function
function Bike(vehicleName)
{
    this.vehicleName=vehicleName;
}
Bike.prototype=Object.create(Vehicle.prototype);
var bike=new Bike("Honda");
document.writeln(bike instanceof Vehicle);
document.writeln(bike instanceof Bike);
 </script>
输出:
true true