抽象化是一种隐藏实现细节,仅向用户展示功能的方式。换句话说,它忽略了不相关的细节,只显示所需的部分。

需要记住的要点

  • 我们不能创建抽象类的实例。
  • 它减少了代码的重复。

JavaScript抽象化示例

示例1

让我们检查是否可以创建抽象类的实例。

// 创建一个构造函数
function Vehicle() {
  this.vehicleName = vehicleName;
  throw new Error("You cannot create an instance of the Abstract class");
}

Vehicle.prototype.display = function() {
  return this.vehicleName;
};

var vehicle = new Vehicle();

示例2

让我们看一个实现抽象化的示例。

// 创建一个构造函数
function Vehicle() {
  this.vehicleName = "vehicleName";
  throw new Error("You cannot create an instance of the Abstract class");
}

Vehicle.prototype.display = function() {
  return "Vehicle is: " + this.vehicleName;
};

// 创建一个构造函数
function Bike(vehicleName) {
  this.vehicleName = vehicleName;
}

// 不使用函数构造器创建对象
Bike.prototype = Object.create(Vehicle.prototype);

var bike = new Bike("Honda");
document.writeln(bike.display());

输出:

Vehicle is: Honda

示例3

在此示例中,我们使用instanceof运算符测试对象是否引用相应的类。

// 创建一个构造函数
function Vehicle() {
  this.vehicleName = vehicleName;
  throw new Error("You cannot create an instance of the Abstract class");
}

// 创建一个构造函数
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);

输出:

true true

标签: js, JavaScript, JavaScript语言, JavaScript开发, JavaScript语法, JavaScript脚本, JavaScript教程, JavaScript入门, JavaScript入门教程, JavaScript进阶, JavaScript宝典, JavaScript学习, JavaScript指南, JavaScript大全