C#面向对象简单理解

我相信对于很多刚接触编程的人来说心里都有一个疑问,面向对象到底是个什么东西,我们为什么要面向对象。

首先,我们来看下官方的解释,面向对象是一种对现实世界理解和抽象的方法,是计算机编程技术发展到一定阶段后的产物。是不是看到这句话跟没说似的,反而这种太正式的东西我们越难以理解。

接下来我给大家举个个例子,让大家感受一下什么是面向对象。

想必大家都知道面向对象三大特征:继承,封装,多态

假如你现在有一个女朋友,那么现在你就可以称呼你的女朋友为对象啦。首先,你女朋友的身高三围等我们称作为属性,你如果想要跟你好基友分享一下你女朋友的身高三围,那么我们称作为公有属性。你要是憋在肚子里打死也不说的话那么这就叫做私有属性了。你女朋友平常会给你撒娇吧,会陪你吃饭说话吧,这叫做方法。如果哪天你女朋友也陪其他人做了这些事,这就叫做公有方法。你跟你女朋友偷偷摸摸做的那些事叫做私有方法。有一天,你女朋友在跟你撒娇的时候,你一高兴就要去给她买零食买化妆品,这叫做传参。折腾的差不多了,你决定给你女朋友一个家,就给她买了一个房子,在房子里,你给她零食吃,给她化妆品用,这叫做封装。在一个微风不燥的傍晚,你一个人在看着某国电影,一时没按捺住自己的内心,便叫来了你的女朋友,这时候你女朋友所扮演的角色所呈现出来跟平时不一样的状态的叫做多态。至于继承的话,我就不接着写了,说不定那天老王就挖了墙角。

现在的话,大家是不是对面向对象有了新的认识,最后我还想说一句话:你真特么是个天才!(这也是能用面向对象三大特征来分析的呦~~)

时间: 2024-11-06 11:21:13

C#面向对象简单理解的相关文章

python 面向对象简单理解

面向对象: 是一种程序设计范型 作用: 提高软件的重用性和灵活性,扩展性 世界万物一切皆为对象,对象即是指由特定状态,特征,行为的实体 知识点一: 代码的重用 举个栗子 比如小月月有了一个女朋友1,因为一些其他原因,这个女朋友1离开了,不久以后,小月月又 找到了一个女朋友2,那么这个女朋友2和女朋友1肯定是有一些基本的共性的 ,比如走路, 是个女性,都有自己的名字,这时候,如果小月月是个富二代,他想找个小三,小三也具有 这些基本的共性,所以他就可以很快的new出来一个小三,只需要在此基础上添加额

JS javascript面向对象的理解及简单的示例

javascript面向对象的理解及简单的示例 一. javascript面向对象概念: 为了说明 JavaScript 是一门彻底的面向对象的语言,首先有必要从面向对象的概念着手 , 探讨一下面向对象中的几个概念: 1.一切事物皆对象 2.对象具有封装和继承特性 3.对象与对象之间使用消息通信,各自存在信息隐藏 以这三点做为依据,C++ 是半面向对象半面向过程语言,因为,虽然他实现了类的封装.继承和多态,但存在非对象性质的全局函数和变量.Java.C# 是完全的面向对象语言,它们通过类的形式组

大话设计模式总结(28种设计模式定义+简单理解)

大话设计模式这本书写的非常有创意,非常适合我这种新手.用了大约两个星期的时间看完了这本书,代码全部都敲了一遍,虽然没有一点基础,但是还是领略到了面向对象的威力.看完之后再也不想使用面向过程的语言了,比如VB,想当初我也是VB狂热者,但是现在我几乎不想再使用了.现在只想着写点什么用上它几种设计模式. 可能是第一次接触这些东西,有些感觉看懂了,但是很难应用到实际编程中:有些感觉没看懂,但是还能说出那么点东西来.听七期学长说他们当初看了两遍,要求能背着写出代码,不知道这次我们八期要求怎么这么低,我只看

架构设计中服务层的简单理解

如果你对项目管理.系统架构有兴趣,请加微信订阅号"softjg",加入这个PM.架构师的大家庭 在ddd设计中我们经常会提到服务层,服务层是什么?职责是什么?有什么好处?. 先看简单的层次图(注:这里并没有考虑其他多余的领域逻辑数据层存储,或者UOW这些细节) 我的理解是服务层是处于我的应用程序业务层和表现层之间的应用程序边界,边界可能是很薄的一层类设计或者是分布式服务网络跃点.它是一个与技术无关的名词.由表现层直接调用,契约,执行命令(修改状态(CUD))或者是查询返回dto(数据迁

Java面向对象的理解和实现代码

理解Java面向对象的重要知识点: 一. 类,对象 类?首先举一个例子:小李设计了一张汽车设计图,然后交给生产车间来生产汽车,有黑色的.红色的.白色的... 这里,汽车设计图就是我们说的类(class),生产车间就是new构造器(大部分对象都是new出来的),生产出来的汽车就是我们要说的对象.可以说java编程实质就是构建类的过程. 对象?万物皆对象,宇宙中,如植物,动物,人类,每个个体都是各司其职.各尽所能的.这就要求对象高内聚.低耦合(简单理解就是人的大脑,它负责思考,想象,记忆,而不能呼吸

面向对象来理解链表

目录 一.链表知识    1.1 链表定义    1.2 链表结构    1.3 说明二.面向对象分析链表    2.1 节点封装类Node.java    2.2 链表封装类ChainTable.java    2.3 关于环的补充    2.4 链表测试类TestChainTable.java 一.链表知识 1.1 链表定义 百度百科:链表是一种物理存储单元上非连续.非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的. 1.2 链表结构 链表的元素是节点,由一个或多个结点组

面试总结之谈谈你对面向对象的理解

对面向对象的理解 在我理解,面向对象是向现实世界模型的自然延伸,这是一种“万物皆对象”的编程思想.在现实生活中的任何物体都可以归为一类事物,而每一个个体都是一类事物的实例.面向对象的编程是以对象为中心,以消息为驱动,所以程序=对象+消息. 面向对象有三大特性,封装.继承和多态. 封装就是将一类事物的属性和行为抽象成一个类,使其属性私有化,行为公开化,提高了数据的隐秘性的同时,使代码模块化.这样做使得代码的复用性更高. 继承则是进一步将一类事物共有的属性和行为抽象成一个父类,而每一个子类是一个特殊

php类的封装、继承和多态的简单理解

.面象对向的三大特点:封装性.继承性.多态性 首先简单理解一下抽象: 我们在前面定义一个类的时候,实际上就是把一类事物共有的属性和行为提取出来,形成一个物理模型(模版),这种研究问题的方法称为抽象 一.封装性  封装就是把抽取出来的数据和对数据的操作封装在一起,数据被保护在内部,程序的其他部分只有被授权的操作(方法)才能对数据进行操作.  php提供了三种访问控制修饰符  public 表示全局,本类内部,类外部,子类都可以访问  protected 表示受保护的,只有本类或子类可以访问  pr

简单理解计算机通信

简单理解计算机通信 写在前面: 在计算机刚出现的时候,只能在本机进行一些运算处理,想将一台计算机中的数据转移到另一台计算机中,需要通过外部存储介质来传输,例如磁带.软盘.而网络技术的出现,使得计算机间可以通过一些传输介质(网线.光纤等),实现快速的数据传输和信息交互.如今,网络已无处不在,那么,计算机之间究竟是如何通信的呢?下面会通过一些基础的网络知识来简单理解计算机之间的通信过程. 网络通信模型: 网络通信模型是一种概念模型和框架,旨在使各种计算机在世界范围内互连为网络.其中有OSI七层模型和