面向对象和类通俗理解和java代码举例

目录

一、面向对象编程概述

1.什么是面向对象?

2.类的实例化是对象

二、再说面向对象编程

三、在代码中讲解


一、面向对象编程概述

1.什么是面向对象?

面向对象的方法主要是把事物给对象化,包括其属性和行为。面向对象编程更贴近实际生活的思想。总体来说面向对象的底层还是面向过程,面向过程抽象成类,然后封装,方便使用就是面向对象(万物皆对象)。

这是百度到的解析,我想对大多数刚接触面向对象编程的小白都有种听君一席话如听一席话的无奈,所以也不要被劝退,是它本身比较抽象,很多解释也很术语化,下面是小编自己的理解希望能帮助小白更好的入门,如有错误欢迎各位内行人士指正,非常感谢。

2.类的实例化是对象

2.1什么是类

面向对象是隐含了“类”这个概念的,而在编程中“类”就和日常生活中说的类是一个意思,比如:人类,动物类,植物类……,这些“类”概念都比较大,我们可以定义自己的“类”的范围,像猫猫有布偶猫,蓝猫,橘猫……(这些都是猫猫的小类,总体上都是猫类,范围不一样)

2.2什么是实例化

接上文,我很喜欢小动物,就养了两只蓝猫,一只叫“小七”另一只叫“小八”,也就是说我已经有了两个真实存在的个体,只是它们属于蓝猫类,而类是大的范围,“类”是概念性的,实际是不完全存在的(看不见摸不着但是有),但是造物主把“蓝猫类”这一概念赋予了个体,再由我取名为“小七”,“小八”。 这时候“小七”,“小八”就是实例化的类也就是“对象”,看到这,“实例化”也可以理解为“个体化”,“具象化”。

我这时候撸猫,我会对外说我在撸一只叫“小七”的蓝猫。当然生活中肯定更多的是说成“我撸蓝猫”,但是实际上哈,那是因为我们不是机器人,不用说的那么详细,对方和自己就能知道。其实我在说“我撸蓝猫”的情况下,脑海里浮现的就是“小七”,就是“蓝猫类”已经实例化在了一个个体上了,个体取名为“小七”。而对方不管是否知情“小七”,在他的脑海中也是我撸某只或者某几只蓝猫,只是可能不知道怎么称呼。总不可能脑海里想的是“我撸蓝猫类”吧。

如果还不懂,再说的简单点,“对象”是“类”这一大范围下的个体,“类”是所有相似“对象”相同点的总和(就像猫有黑有白但都是猫),个体就是对象。极端一点:能被取名的就是对象,不能被取名的就是类,在名字后面加上“类”,怪怪的就是“对象”的概念(小七类),不怪的就是“类”的概念(蓝猫类)

二、再说面向对象编程

上文说到,对象是类的实例化,那么面向对象编程的时候呢,其实是把所有对象(比如小七和小八)相同的属性提出来(就是最开始的红色字,抽象成类),由我们自己打包(封装)成一个类(蓝猫类)。先假设咱自己现在是造物主,我要创造另一只蓝猫:“小九九”,我就可以用打包好的类,直接定义了。不然的话我每创造一次个体化的蓝猫,就要把蓝猫类共有的属性如:毛色,身体,尾巴……全部再弄一次,太麻烦。现在我说有这些特征的就是蓝猫类,那我直接就使用“蓝猫类”这一工具去实例化成一个个体,那你就知道,哦蓝猫类,那这个个体就有上述所说的属性了。

再说简单点就是:面向对象编程是你先把几个个体归为一类,然后从所有这些个体(对象)中抽取相同的属性,来完善“类”的概念,然后你这个造物主就可以用“类”再创造别的对象了。虽说对象是类的实例化,但本身类里面内容也是出自于现有的个体的哦。

在代码里面:每个对象不一样的地方,比如我们都有年龄这一属性,但是可能我18你20,这些就单独拿出来初始化就行。不用每次都定义一遍年龄变量,这有点像函数(也叫方法),但记住这有着本质的区别,上文关于对象和类的解释小编也刻意避开了函数举例。

三、在代码中讲解

(4条消息) Java类和对象 详解(一)_志见的博客-CSDN博客_什么是类什么是对象
(个人认为代码举例部分这位博主讲的蛮好的可以参考一下)

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值