首页 > web前端 > js教程 > 我的 React 之旅:第 15 天

我的 React 之旅:第 15 天

DDD
发布: 2024-12-16 00:47:09
原创
561 人浏览过

My React Journey: Day 15

面向对象编程(OOP)
面向对象编程是一种基于对象概念的编程范式。

面向对象编程的关键原则
1.封装:

  • 将相关变量和函数分组到一个对象中。
  • 鼓励减少函数中的参数,降低复杂性。 例子:
function Circle(radius) {
    this.radius = radius;
    this.draw = function() {
        console.log('draw');
    };
}
const circle = new Circle(5);
console.log(circle.radius); // Access encapsulated property
circle.draw(); // Call encapsulated method
登录后复制

2.摘要:

隐藏细节和复杂性,仅暴露对象的必要部分。
简化界面并减少底层代码更改的影响。
示例:抽象方法,同时隐藏内部逻辑。

3.继承:

允许一个类(子类)继承另一个类(父类)的属性和方法。
减少冗余代码。
示例:

class Animal {
    eat() {
        console.log("This animal is eating.");
    }
}
class Dog extends Animal {
    bark() {
        console.log("The dog is barking.");
    }
}
const dog = new Dog();
dog.eat(); // Inherited from Animal
dog.bark();
登录后复制

4.多态性:

指具有多种形式的物体。
允许为不同的对象类型提供统一的接口,从而实现代码重用和灵活性。
示例:

class Animal {
    sound() {
        console.log("This animal makes a sound.");
    }
}
class Dog extends Animal {
    sound() {
        console.log("The dog barks.");
    }
}
const animal = new Animal();
const dog = new Dog();
animal.sound(); // Output: This animal makes a sound.
dog.sound();    // Output: The dog barks.
登录后复制

OOP 的重要性

  • 封装:降低复杂性并增强可重用性。
  • 抽象:隐藏实现细节,简化交互。
  • 继承:消除代码重复并促进重用。
  • 多态性:实现灵活性和简化的代码结构。

实际例子
类和构造函数

  • 以结构化、简洁的方式创建对象。
  • 示例:
class Product {
    constructor(name, price) {
        this.name = name;
        this.price = price;
    }

    displayProduct() {
        console.log(`Product: ${this.name}`);
        console.log(`Price: $${this.price.toFixed(2)}`);
    }

    calculateTotal(salesTax) {
        return this.price + this.price * salesTax;
    }
}

const product1 = new Product("Laptop", 1200);
product1.displayProduct();
console.log(`Total Price: $${product1.calculateTotal(0.1).toFixed(2)}`);
登录后复制

与动物的传承

  • 展示可重用性和方法重写。
  • 示例:
class Animal {
    eat() {
        console.log("This animal eats food.");
    }
}

class Bird extends Animal {
    fly() {
        console.log("This bird can fly.");
    }
}

const bird = new Bird();
bird.eat();
bird.fly();
登录后复制

反思
我学到了什么:

  • 核心 OOP 原则:封装、抽象、继承、多态性。
  • 降低代码复杂性和增强可重用性的实际用例。
  • 应用构造函数、方法和继承来解决现实世界的问题。

OOP 是另一个层次。

明天我们再去!

以上是我的 React 之旅:第 15 天的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:dev.to
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板