【新秀疯狂UML系列】——面向对象的技术

【新秀疯狂UML系列】——面向对象的技术

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

    从软质工作开始,我们来到与面向对象的接触,接下来的学习材料似乎已经提到了面向对象,在与她的朋友去一个。所以,我们必须知道她多一点点。


    一、何为面向对象?

    面向对象(Object Oriented)。是将现实世界映射成的一个个独立的对象,这些对象之间原本没有关系,仅仅是加上一点魔术粉,她们就会相互传递消息。从而形成一个“过程”。

举个比較生动的样例:我韩梦甜。和刘文彬原本是两个八竿子打不着的人(一个南方,一个北方)。但是在书法协会这个外力的作用下,我们相识相知相爱,传达爱意。从而形成了一个“谈恋爱”的过程。

当我们组成一个家庭的时候。就变成了更复杂,更大的对象——家庭。不再是两个独立的个体了,这就是面向对象的基本原理。

仅仅是随便举了一个样例,代表个人的逻辑,如有不恰当之处请指出 。



    二、面向对象基本概念

   
面向对象=对象+类+继承+通信

    1、对象:对象就简单了。韩梦甜和刘文彬这就是两个相互独立的对象。


    2、类:将具有同样特性的对象进行抽象,对韩梦甜和刘文彬进行抽象就是人类。然后,再将“人类”这个类详细化就是对象:“男人”和“女人”。

    3、消息:一个对象向还有一个对象发出的服务请求。比如。韩梦甜向刘文彬发出请求,去吃饭。

接受者:刘文彬。要求的服务:吃饭;输入信息:吃饭相应的脑信号;应答信息:好的。立即吃饭。


    4、接口:每一个对象都有不同的外貌,不同情况下展示不同的外貌,本质仅仅有一个,就是接口。比如。每一个人都有喜怒哀乐,高兴时。我就冲你微笑;生气时,我就对你大吼大叫。


   三、面向对象技术的主要特征:   

    1、继承性:子类继承父类的特性。韩梦甜和刘文彬继承了人类所有的特性。有生命,有思维,有……等等。

    2、封装性:把对象的属性和服务结合成一个独立的系统单位,尽可能的隐藏内部的细节。

比如,我仅仅把坚强的外表展示出来,我的内心世界是怎么样的,谁也看不到。把自己封装起来。仅仅留一个外表。


    3、多态性:多个对象长着同样的脸。而背后却是不同的对象,有不同的行为,就叫做多态。

比如,我有个双胞胎姐妹。我们都继承了妈妈的特性,尽管长相一样,可是我们爱好不同。


    4、抽象性:找出事物的共性。并把具有共性的事物划分为一类,得到一个抽象的概念。比如。找到“男人”。和“女人”的共性抽象成“人类”。概念大家都懂,可是实际上将一些对象抽象成类的时候,就要细致考虑考虑了。


   四、总结

    尽管。面向对象的一些概念和特征都比較easy理解。但是用起来就没有想象中的那么简单了,须要不断的练习。将对象抽象成类,练的比較多了,自然而然的以后就会简单。就像我们编知识网一样,刚開始认为好难啊,不会,但是当我们做更多。当然把网织好,这是一个必须不断实践的过程。

版权声明:本文博客原创文章。博客,未经同意,不得转载。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/117591.html原文链接:https://javaforall.net

(0)
上一篇 2022年1月3日 下午2:00
下一篇 2022年1月3日 下午2:00


相关推荐

  • MySQL索引的创建与使用

    MySQL索引的创建与使用索引有很多,且按不同的分类方式,又有很多种分类。不同的数据库,对索引的支持情况也不尽相同。声明:本人主要简单示例MySQL中的单列索引、组合索引的创建与使用。索引的创建:建表时创建:CREATETABLE表名(字段名数据类型[完整性约束条件],……,[UNIQUE|FULLTEXT|SPATIAL]INDEX|KEY[索引名](字…

    2022年5月30日
    45
  • linux redis安装步骤_redis安装部署centos

    linux redis安装步骤_redis安装部署centos背景Redis版本6.0.1服务器版本LinuxCentOS7.664位一、下载进入官网找到下载地址https://redis.io/download鼠标右击选择复制链接地址进入到Xshell控制台,进入usr/,输入wget,命令如下:[root@bdausr]#cdusr/[root@bdausr]#wgethttps://download.redis.io/releases/redis-6.0.10.tar.gz二、解压[root@bdausr]

    2022年10月4日
    3
  • java之父

    java之父《Java》之父——詹姆斯·高斯林和麦克·舍林丹也加入了帕特里克的工作小组。他们和其他几个工程师一起在加利福尼亚州门罗帕克市沙丘路的一个小工作室里面研究开发新技术,瞄准下一代智能家电(如微波炉)的程序设计,SUN公司预料未来科技将在家用电器领域大显身手。团队最初考虑使用C语言,但是很多成员包括SUN的首席科学家比尔·乔伊,发现C和可用的API在某些方面存在很大问题。工作小组

    2022年7月7日
    33
  • mybatis逻辑删除[通俗易懂]

    mybatis逻辑删除[通俗易懂]github地址https://github.com/heng1234/mybatis_pluspom.xml<?xmlversion=”1.0″encoding=”UTF-8″?><projectxmlns=”http://maven.apache.org/POM/4.0.0″xmlns:xsi=”http://www.w3.org/2001/XMLSche…

    2022年6月2日
    28
  • c语言输入输出格式

    c语言输入输出格式//最近被某题的输入输出卡了。。。转一波随时看。。。菜哭&lt;spanstyle="font-family:KaiTi_GB2312;font-size:18px;"&gt;本小节介绍的是向标准输出设备显示器输出数据的语句。在C语言中,所有的数据输入/输出都是由库函数完成的。因此都是函数语句。本小节先介绍printf函数和putchar函数。printf函数printf函数称为格式输出函数,其…

    2022年7月24日
    19
  • pytest parametrize fixture_参数化方法

    pytest parametrize fixture_参数化方法前言当某个接口中的一个字段,里面规定的范围为1-5,你5个数字都要单独写一条测试用例,就太麻烦了,这个时候可以使用pytest.mark.parametrize装饰器可以实现测试用例参数化。官方示

    2022年7月30日
    8

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号