如何理解面向对象,以及对类,对对象的一些笔记和理解

11 篇文章 0 订阅

如何理解面向对象,以及对类,对对象的一些笔记和理解

面向对象(Object Oriented Programming)简称OOP
  1. 概念:面向对象是一种编程思想
    1.1 那么什么才是面向对象的编程思想呢?或者说什么才是面向对象,什么是面向过程?那么我们先说一个常见的案例,就是吃饭,对于吃饭这个事件而言,面向过程是从出门开始到买菜-回来洗菜-做饭-做菜-吃饭,这一系列的步骤都是面向过程所做的事。那么对于面向对象而言,我只需要找到一家饭店,我只需要在意吃饭这件事,或者说饭这个对象,我不需要考虑这个饭是怎么做出来的,不需要考虑其中有什么变化,只需要注重在饭这个对象上就行。
    1.2面向对象更像是一种抽象,更像是只在意结果,而不需要管其中过程的具体实现,我只要最终实现即可,比如我要从A地到达B地,那么我要到达的方法有很多,可以有汽车,火车,飞机等等,那么对于面向对象而言,我只要选择一种交通工具出发,到达即可B地即可,而面向过程则是将从A地到B地的过程表示出来,出门,首先坐什么车到什么地方等等步骤体现出来,而不是直接去关注B地,一个注重结果,一个注重过程
    1.3面向对象和面向过程的优缺点:
    面向过程
    优点:性能比面向对象好,因为类调用时需要实例化,开销比较大,比较消耗资源。
    缺点:不易维护、不易复用、不易扩展.
    面向对象
    优点:易维护、易复用、易扩展,由于面向对象有封装、继承、多态性的特性,可以设计出低耦合的系统,使系统 更加灵活、更加易于维护 .
    缺点:性能比面向过程差
    1.4面向对象的三大特性:封装,继承,多态

对象

在学习到Java中的时候,我们常说到,万物皆对象,new一个对象,那么什么是对象,对象可以是对现实事物的抽象化,比如一个人就是对象,一辆车也是对象,一棵树也是对象。对象既然对现实事物的抽象,那么它就应该拥有事物的属性和方法,所以对象是有属性和方法的。
当然对象也可以是对规则,计划,事件等抽象东西的表示,那么这里说一下我对后面这个的理解,比如:我要把一个事件抽象成对象那么我的对象里的属性和方法就可以相应的表示为这个事件性质和事件的实现方式。我都可以将它抽象在我的对象里,基本上我的理解就是这样,后期学得更深的话在回来重新修改。

对于类来说,其实类和对象是分不开的,类像是对象的集合,或者说对象的抽象,还是举个例子,比如:一辆车,我将它看为一个对象,那么车是有很多的,那么我的对象是不也要有很多才能表示完它?其实不用,我们可以将众多的车辆对象抽象成一个类,将这些对象中的共有性质放在类当中,每次需要用的时候我们直接实例一个对象即可,所以可以说对象是类的实例化,而类是对像的集合和抽象。
类具有属性,它是对象的状态的抽象,用数据结构来描述类的属性。
类具有操作,它是对象的行为的抽象,用操作名和实现该操作的方法来描述。

以上就是我自己的一些简单的理解,其实我个人知道面向对象比这更要复杂,我的理解远远没有达到,目前初期就是先有一个这样的简单的思维而已,对于后面对象和类的理解也是目前个人的理解,写这篇博客主要加深记忆,做一个复习和系统整理一下自己的理解

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值