《Java从入门到放弃》JavaSE入门篇:面向对象概念(入门版)

要知道什么是面向对象,你首先要有个对象吧,所以······没有对象的可以回家洗洗睡了·

好吧,前面是开玩笑,要说明什么是面向对象,我们还是先


例子:

    小呆:“小傻,你今天早餐吃的什么?”

    小傻:“吃的东西可多啦,有两片面包,一块鸡肉饼,几片菜叶子,一点沙拉酱,另外还喝了一杯可乐,一袋油炸土豆条”

    小呆:“小傻,你四不四洒啊!你直接说你吃的鸡肉堡套餐不行么 - -”

    小傻:“呃,好吧,我吃的

这个鸡肉汉堡套餐”


OK,从上面的例子可以了解到什么是面向对象了吧,初学者可以这样理解:把很多单独的数据和方法封装在一起,就变成了一个对象。

后面我们会讲解面向对象的一些概念:类、对象、属性、方法、封装、继承、多态,通过这些概念再来理解什么是面向对象。

那么,上面这个例子中出现了几个对象呢?

第一个:鸡肉汉堡套餐:包含的属性有鸡肉汉堡,薯条,可乐

第二个:鸡肉汉堡:包含的属性有面包,鸡肉饼,生菜,海拉酱

第三个:一袋薯条:包含的属性有很多根薯条,一个包装袋

第四个:一杯可乐:一个杯子,一些冰块,可乐

第五个:......

是不是发现,这样分析下去可以无穷无尽???哈哈,那就对了,这就是面向对象编程分析。

当然实际开发中我们不会这样不断分解下去,没必要把一个对象最终分解成原子。

一般我们会根据功能来分析具体有哪些对象,如果有一些对象具有相同的属性和方法,我们会把它们归于一类。具体如何分析就是我们接下来的内容了。


基本概念介绍

一、类:

    类就是对一组具有相同属性和方法的对象的一个抽象,简单说就是一个概念,比如“女神”就是一个类

二、对象:

    对象就是类的一个实例,简单说就是一个真实存在的实物,是一个具体的东西了,比如有些看官的女神就很具体了

三、属性:

    属性就是对象的特征,是名词,比如女神都有身高、体重、姓名、年龄和三围等·

     林姐姐:173cm,54kg,林志玲,43和保密。

    苍井姐姐:155cm,45kg,苍井空,34和保密。

     贾大姐:166cm,保密 ,贾 玲,35和保密。

四、方法:

    方法就是对象的行为,是动词或动名词

    林姐姐有游泳、跑步和拍广告等方法。

    苍姐姐有拍写真、拍电影等方法。

    贾大姐有演小品、唱歌等方法。

五、封装:

    封装就很好理解了,都有收发过包裹吧,这就是一种封装

    封装最大的好处就是隐藏细节,只预留使用者关注的功能API就OK了。

    比如空调,从使用者的角度,我们只关心以下功能的使用:开、关、制热、制冷、调温度等。具体这些功能如何实现的,对应的电子电路图是什么样的,使用了什么样的电路板等,我们完全不关心也不用关心。

六、继承:

    继承应该也好理解吧,就是龙生龙,凤生凤,老鼠的儿子会打洞,如果出现下面这情况,就要问问隔壁老王了。

七、多态:

    面向对象中的多态是指不同的对象对相同的指令有不同的执行效果。比如你让不同的葫芦娃执行“放大招()”这个方法,对应的效果就不一样。

今天就先介绍一下基本概念吧,下次我们再来看这些概念对应的Java语法。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏青玉伏案

代码重构(二):类重构规则

在上篇博客《代码重构(一):函数重构规则(Swift版)》中,详细的介绍了函数的重构规则,其中主要包括:Extract Method, Inline Metho...

21410
来自专栏C语言及其他语言

[每日一题]山?水!

今天的题解让我们从一个一位老禅师和话引出: 青源惟信禅师讲到自己修佛悟道的历程时说:“老僧三十年前来参禅时,见山是山,见水是水;及至后来亲见知识,有个入处,见...

2798
来自专栏FreeBuf

学点编码知识又不会死:Unicode的流言终结者和编码大揭秘

如果你是一个生活在2003年的程序员,却不了解字符、字符集、编码和Unicode这些基础知识。那你可要小心了,要是被我抓到你,我会让你在潜水艇里剥六个月洋葱来惩...

19010
来自专栏令仔很忙

C#----委托和事件(一)

最近在做的项目,正在进行重构,之前的框架就是纯三层的简单调用,外加一些Session,SQLHelper等封装管理类,其他的东西,一直也想去抽象,但是奈何能力...

3641
来自专栏java达人

HashMap庖丁解牛

感谢erixhao的作品,长文需细品: Code Walkthrough是我们新的一个系列,主要以阅读,分析源代码为主要目的,特此介绍一下。我们先以最经典的JD...

2099
来自专栏xingoo, 一个梦想做发明家的程序员

Java程序员的日常—— 基于类的策略模式、List<?>与List、泛型编译警告、同比和环比

早晨起得太早,昨晚睡得太晚,一天都迷迷糊糊的。中午虽然睡了半个小时,可是依然没有缓过来。整个下午都在混沌中....不过今天下载了一款手游——《剑侠情缘》,感觉...

1837
来自专栏程序员的SOD蜜

JavaScript的“原型甘露”

今天跟朋友讨论JS的面向对象编程问题,想起了原来曾经看过一篇文章,但是看过很久想不起来了,用了很多关键词,终于用“悟透JavaScript  面向对象”这两个关...

2528
来自专栏数据结构与算法

P1823 音乐会的等待

题目描述 N个人正在排队进入一个音乐会。人们等得很无聊,于是他们开始转来转去,想在队伍里寻找自己的熟人。队列中任意两个人A和B,如果他们是相邻或他们之间没有人比...

38413
来自专栏一个会写诗的程序员的博客

Springboot中使用Scala开发使用SB與Scala

https://github.com/LightSwordSpringBoot/lightsword

1711
来自专栏斑斓

使用Option的正确姿势

我们会频繁地使用Scala的Option,用以解决类似Null Object之类的问题。某种程度讲,使用Option必然会减少对空指针引用判断的丑陋代码,结合F...

2765

扫码关注云+社区