js面向对象

面向对象编程
1,是把事务分解成为一个个对象,然后由对象之间分工合作完成
2,先把对象找出来,再找对象有什么功能,最后把对象的功能使用起来

举个例子:
把大象装进冰箱 面向对象做法
1.大象对象:进去功能
2.冰箱对象:打开功能,关闭功能
3.使用大象和冰箱的功能

总结:
面向对象: 是以对象的功能来划分问题,而不是步骤。
面向过程:是面向步骤,一步步按照步骤来实现

面向对象的特性:
1.封装性:就是把代码封装起来方便以后重复使用
2.继承性:2个对象,一个父对象,一个子对象,子对象就继承父对象的方法
3.多态性:同一个对象在不同的时候体现不同的状态, 例如:勺子,在吃饭的时候可以用来吃饭,在喝汤的时候用来挑汤

类和对象
类:是对象的公共部分,是指一大类
对象:是指具体的对象, 例如:一本书,一个人,js里字符串,数组,函数
对象由属性和方法组成:属性是事物的特征,方法是事物的行为。

创建一个类 添加属性和方法

class Star {
    // constructor构造函数
    constructor (name, age){
        this.name = name;
        this.age = age
    }//欢迎加入Java开发交流君样:909038429
    sing(song){
        // console.log('唱歌')
        console.log(this.name + '唱'+ song)
    }
}

// 2.利用类创建对象 new
let zbz = new Star('张柏芝', 18)
let ldh = new Star('刘德华', 20)
console.log(zbz)
console.log(ldh)

ldh.sing('冰雨')

类的继承

class Father {
    constructor(x, y, fistName){
        this.fistName = fistName;
        this.x = x;
        this.y = y;
    }//欢迎加入Java开发交流君样:909038429
    money(){
        console.log('钱',1000);
    }
    sum(){
        console.log('父类的加法', this.x + this.y)
    }
    say(){
        return '我是父类'
    }
}
// 子继承父类
class Son extends Father {
    constructor(x,y, name){
        super(x,y); // super调用父类中的构造函数,必须放在this前面
        this.x = x;
        this.y = y;
        this.name = name
    }
    say(){
        // super.say() 调用父类中的普通函数
        console.log(super.say() + '的儿子')
    }
    jianfa(){
        let jianfa = `${this.name}自己的减法,${this.x - this.y}`
        console.log(jianfa)
    }

}
var son1 = new Son(3,2)
son1.money()
son1.sum()
son1.say()
var son2 = new Son(3,2, '小明')
son2.jianfa()

image
最新2020整理收集的一些高频面试题(都整理成文档),有很多干货,包含mysql,netty,spring,线程,spring cloud、jvm、源码、算法等详细讲解,也有详细的学习规划图,面试题整理等,需要获取这些内容的朋友请加Q君样:909038429
/./*欢迎加入java交流Q君样:909038429一起吹水聊天

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值