Java学习日记——Day8

面向过程和面向对象区别?

C语言是面向过程的语言,C++,java是面向对象的语言

首先这两都是对软件分析、设计和开发的一种思想,它指导着人们以不同的方式去分析、设计和开发软件。

面向过程:思考问题时,我们首先思考"怎么按步骤实现?"并将步骤对应成方法,一步一步,最终完成。这个适合简单任务,不需要过多写作的情况。

可当遇到一个庞大的需要很多人协作的工程时,面向过程就没法解决了,这时面向对象就应运而生了。

而且面向对象更契合人的思维模式。我们首先思考的时"怎么设计这个事务?",而不是"怎么按照步骤造车",总之,大工程,面向对象更易管理,更易沟通协作,更有效率,更好的维护。

小工程面向过程好,大工程面向对象好,而且面向对象包含面向过程,不应该一刀切断他们的关系,面向对象最终调用方法的落地还是面向过程。

对象是什么?数据管理?

对象的建立就是为了实现对数据更好的管理,如同企业的发展一样,由小作坊到企业部门制到企业项目制一步步演变出来的,对象先是变量-->数组-->类,这是发现以前的数据管理方式跟不上大数据时代的发展了,才一步步演变出来的

对象和类的概念

对象在内存中就一个数据块,放置一些数据变量和方法

类可以看作一个模板,系统根据类的定义来造出对象,包含属性和方法

类:我们叫做class.对象:我们叫做Object,instance.我们可以说某个类的对象/实例,类可以看作一个模板在这里得到了体现。

定义一个类

系统会自动帮我们创建一个构造方法,方法名和类名一致。

类里面还可以嵌套类,不过在给嵌套类的赋值时要注意

例如图中st.comp.brand="MACOS"为啥不对,不能这样这样赋值,原因在于,在代码中只是定义了一个comp的变量,并没有给变量comp赋值,如果在类中Computer comp=new Computer();或许这样还可以。

相关推荐
蒙奇D索大15 小时前
【算法】递归算法的深度实践:从布尔运算到二叉树剪枝的DFS之旅
笔记·学习·算法·leetcode·深度优先·剪枝
烤麻辣烫19 小时前
黑马程序员苍穹外卖(新手)Day1
java·数据库·spring boot·学习·mybatis
提娜米苏20 小时前
Bash Shell脚本学习——唇读数据集验证脚本
开发语言·学习·bash
xwz小王子1 天前
PerAct2:机器人双臂操作任务的基准测试和学习
学习·机器人
d111111111d1 天前
STM32外设学习--DMA直接存储器读取--学习笔记。
笔记·stm32·单片机·嵌入式硬件·学习
on_pluto_1 天前
【推荐系统14】数据分析:以阿里天池新闻推荐为例学习
人工智能·学习·数据挖掘·数据分析·推荐算法
数学难1 天前
数据分析学习路线
学习·数据挖掘·数据分析
搞机械的假程序猿1 天前
普中51单片机学习笔记-前言
笔记·学习·51单片机
宋辰月1 天前
学习react第一天
javascript·学习·react.js
笨鸟笃行1 天前
百日挑战——单词篇(第十八天)
学习