听说你情人节没人陪,这不我来给你介绍对象啦

简介: 听说你情人节没人陪,这不我来给你介绍对象啦

📜个人简介

⭐️ 个人主页: 微风洋洋🙋‍♂️
🍑 博客领域:编程基础💡,后端💡,大数据,信息安全
🍅 写作风格:干货,干货,还是tmd的干货
🌸 系列专栏【JavaScript】
🚀 支持洋锅:点赞👍、收藏⭐、留言💬

好久不见,甚是想念!
大家好!我是微风洋洋 🚀
情人节到了,但有的兄弟跟我说他没对象,这怎么能行?于是,我把我压箱底的东西拿出来了,我一定给得他好好介绍对象,传授他面向对象的概要,如果他对对象不满意,没事,那就让他自定义对象,直接一步到位,大兄弟看了我的文章,留下了感动的泪水。虽然自己没有对象,但是狠狠地给他人介绍了对象,这就是赠人玫瑰手留余香吧,人生圆满了。



如果的你的好兄弟到情人节还没对象,请点赞,收藏这篇文章,然后把这篇文章转发给他,相信他一定会感谢你的善意之举

@TOC

一、面向对象概述

🍅面向过程与面向对象

以完成一件事来说明什么是面向过程与面向对象。

  • 面向过程的解决办法:注重的是具体的步骤,只有按照步骤一步一步的执行,才能够完成这件事情。
  • 面向对象的解决办法:注重的是一个个对象,这些对象各司其职,我们只要发号施令,即可指挥这些对象帮我们完成任务。

在这里插入图片描述

📌 总结

  • 对于面向过程思想,我们扮演的是执行者,凡事都要靠自己完成。
  • 对于面向对象思想,我们扮演的是指挥官,只要找到相应的对象,让它们帮我们做具体的事情即可。


  • 面向过程思想的劣势

编写的代码都是一些变量和函数,随着程序功能的不断增加,变量和函数就会越来越多,此时容易遇到命名冲突的问题,由于各种功能的代码交织在一起,导致代码结构混乱,变得难以理解、维护和复用。

  • 面向对象思想的优势

可以将同一类事物的操作代码封装成对象,将用到的变量和函数作为对象的属性和方法,然后通过对象去调用,这样可以使代码结构清晰、层次分明。


🍅面向对象的特征

在这里插入图片描述

🍑封装性

封装:指的是隐藏内部的实现细节,只对外开放操作接口。

接口:就是对象的方法,无论对象的内部多么复杂,用户只需知道这些接口怎么使用即可。

举例:电脑是非常高精密的电子设备,其实现原理也非常复杂,而用户在使用时并不需要知道这些细节,只要操作键盘和鼠标就可以使用。


优势:无论一个对象内部的代码经过了多少次修改,只要不改变接口,就不会影响到使用这个对象时编写的代码。

在这里插入图片描述



🍑继承性

继承:是指一个对象继承另一个对象的成员,从而在不改变另一个对象的前提下进行扩展。

举例1:动物与猫和狗的关系,人类的繁衍等。

在这里插入图片描述

在这里插入图片描述


举例2:String对象就是对所有字符串的抽象,所有字符串都具有toUpperCase()方法,用来将字符串转换为大写,这个方法其实就是继承自String对象。

优势

  • 可在保持接口兼容的前提下对功能进行扩展。
  • 增强了代码的复用性,为程序的修改和补充提供便利。



🍑多态性

多态:指的是同一个操作作用于不同的对象,会产生不同的执行结果。

理解:实际上JavaScript被设计成一种弱类型语言(即一个变量可以存储任意类型的数据),就是多态性的体现。

在这里插入图片描述

在这里插入图片描述

例如,数字、数组、函数都具有toString()方法,当使用不同的对象调用该方法时,执行结果不同。

在这里插入图片描述

📌 提示:在面向对象中,多态性的实现往往离不开继承,这是因为当多个对象继承了同一个对象后,就获得了相同的方法,然后根据每个对象的不同来改变同名方法的执行结果。

📌 提示:虽然面向对象有封装、继承、多态这些设计思想,但并不表示只要满足这些特征就可以设计出优秀的程序,开发人员还需要考虑如何合理的运用这些特征。

例1:在封装时,如何给外部调用者提供完整且最小的接口,使外部调用者可以顺利得到想要的功能,不需要研究其内部的细节。

例2:在进行继承和多态设计时,对于继承了同一个对象的多种不同的子对象,如何设计一套相同的方法进行操作。



二、自定义对象

🍅对象的定义

语法:对象的定义是通过“{ }”语法实现的。

组成:对象以对象成员(属性和方法)构成,多个成员之间使用逗号分隔。

成员:对象的成员以键值对的形式存放在{}中。

在这里插入图片描述

📌 注意

“{ }”语法又称为对象的字面量语法,所谓字面量是指在源代码中直接书写的一个表示数据和类型的量,如123(数值型)、'123'(字符型)、[123](数组)都是字面量。



JSON数据格式

JSON: JavaScript Object Notation,JavaScript对象符号。

用途:应用于数据存储和交互。

语法: JSON是一个字符串,使用双引号包裹对象的成员名和字符串型的值。

JSON与对象的区别:

  • JSON是一个字符串。
  • JSON不仅可以用来保存对象,还可以保存数字、字符串、数组等其他类型的数据。

在这里插入图片描述


🍅访问对象成员

语法:对象.成员。

在这里插入图片描述

可变成员名语法:对象[变量名] = 值。

在这里插入图片描述


🍅对象成员遍历

语法:for…in。

在这里插入图片描述

  • 变量k保存了每个对象成员的名称。
  • obj[k]访问成员属性的值。
  • obj[k]()调用成员方法。


判断对象成员是否存在

  • 当需要判断一个对象中的某个成员是否存在时,可以使用in运算符。
  • 当对象的成员存在时返回true,不存在时返回false。

在这里插入图片描述


如果觉得这篇文章对你有一丢丢启发的话,不妨 点赞👍、收藏⭐、留言💬支持一下,你的支持将是我继续创作的最大动力❤️❤️❤️

由于作者水平有限,如有错误和不准确之处在所难免,本人也很想知道这些错误,恳望读者批评指正!

最后,祝天下有情人终成眷属,各位xdm今年必找到意中人!(这还不赏个关注)
相关文章
|
8月前
|
存储 人工智能 Serverless
大学生们注意了,你的拜年姿势准备好了吗?
来尝试一种全新的“数字人”拜年方式吧。上传个人照片,即可一键创建数字人分身,还可以搭配春节服饰、背景、拜年模板,生成专属的数字人拜年视频,简单无门槛,有心更有新。
140 7
|
前端开发 安全 程序员
【程序员交友】祈澈姑娘:假装文艺与代码齐飞的前端妹子
【程序员交友】祈澈姑娘:假装文艺与代码齐飞的前端妹子
75 0
|
编译器 C语言 C++
重生之我要学C++第四天
重生之我要学C++第四天
101 0
|
SQL 安全 前端开发
来来来开小灶了,年后求职和跳槽的看过来,悄悄的看悄悄的收藏
面试官,您好我叫(XXX),今天来公司面试 JAVA开发工程师,之前在(XXX 公司)任职,从事这一行已经有(几)个年头了。这几年开发,主要接触的项目包括(你做过的项目!)等。在开发过程中,也用过好些框架,比如∶ springboot、springcloud、springmvc、spring、Mybatis等技术框架。熟练掌握框架之间的整合技术。有时候因为项目需求或是为了开发的高效性,自己我会研究一些技术,使用一些常用的主流 Java技术,例如∶(吹!用没用过不重要,主要是就是英文的!)。前端的技术也研究过一些。如(原生的、框架啊都往上整!)
214 0
来来来开小灶了,年后求职和跳槽的看过来,悄悄的看悄悄的收藏
|
算法 前端开发 搜索推荐
学编程的 3 个正经建议,学弟学妹们记得收藏呀,这波赚大发了!
学编程的 3 个正经建议,学弟学妹们记得收藏呀,这波赚大发了!
160 0
|
Unix 程序员 Windows
雷军回顾20年前自己的“程序人生”,还用吴奇隆的歌词文艺了一把
虎嗅注:今天,雷军在他的公众号里发了一篇他20年前写的帖子,那个时候还是1996年,是通过电话线拨号连接到西点BBS上飙帖子玩的年代。那是一个互联网混沌初开的年代,那是一个BBS和Email几乎主宰了全部互联网的年代,那是一个青春的理想和热血沸腾的年代。我是一个程序员,一个软件工程师。到今天,我也依然是一个程序员,一个软件工程师。 雷军在文章中说,本文是20年前我对程序人生的一点看法。20年后的今天,重读之后,这依然是我对程序人生的态度。 文末还引用了吴奇隆的《祝你一路顺风》中的歌词那一天知道你要走,我们一句话都没有说。真是文艺青年啊。下面是雷军20年前写的文章,虎嗅未做删减。 程序人生
536 0
|
弹性计算 程序员 区块链
这群程序员疯了!他们想成为IT界最会带货的男人!
随着网红主播越来越火,通过直播带货种草的形式也成了今年双12的热点。 不过,网红主播带货早已见怪不怪,但你们见过程序员直播带货吗!?近日,趁着阿里云双12年末采购节,阿里云邀请了一波程序员GG来为大家直播带货!
|
存储 程序员
这个颜值逆天的姑娘,居然是一枚程序员!(多图慎入,内有彩蛋)
在2016年阿里云年会上,一位清纯美丽、身材高挑、健康阳光的“维秘天使”闪亮登场,令现场的阿里云汉子们按耐不住心中的激荡,惊呼“女神”驾到! 如今随着网络的传播,这位阿里云女神已经在IT圈掀起了小小的波澜,不仅是阿里人,很多技术小伙伴都加入了她的粉丝圈,纷纷询问,这位女神到底是谁?  今天,我们就
20747 0
|
算法 搜索推荐
【技术小火车】万万没想到!原来你是这样的算法君?!
据说算法正在统治世界?吓得我瓜子都掉了......
5802 0
|
数据可视化 Java Python
9月书讯:别抱怨读书苦,那是你看世界的路
9月上新图书,小编带来7本重磅新书,文末分享你对图书的看法或者你的读书经验,有惊喜礼哦~~
2132 0