面向对象编程
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()

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

1555

被折叠的 条评论
为什么被折叠?



