Java——面向对象编程思想

前言

如果有人问你,C和Java的区别是什么呢?

我想大部分人肯定脱口而出的是:C是面向过程的,Java是面向对象的。

那如何理解面向过程和面向对象呢?

首先,面向过程和面向对象都是编程思想。

①面向过程,以C语言为代表,它是按解决一个问题的的流程或者先后步骤来编程的。

②面向对象,以Java语言为代表,它是从宏观上将将整个问题拆解成不同的模块,然后让各个模块各司其职,相互协作,解决这个问题的。

举例

举一个形象的例子:人把大象装进冰箱
1.面向过程

java 复制代码
1.打开冰箱
2.把大象装进冰箱
3.把冰箱门关住

2.面向对象

java 复制代码
人{
	打开(冰箱){
	冰箱.开门();
	}
	操作(大象){
	大象.进入(冰箱);
	}
	关闭(冰箱){
	冰箱.关门();
	}
}

冰箱{
	开门(){ }
	关门(){ }
}


大象{
	进入(冰箱){ }
}

总结:

面向过程的程序设计思想 (Process-Oriented Programming),简称 POP

①关注的焦点是过程 :过程就是操作数据的步骤。如果某个过程的实现代码重复出现,那么就可以把这个过程抽取为一个函数 。这样就可以大大简化冗余代码,便于维护。

②典型的语言:C语言

③代码结构:以函数为组织单位。

是一种" 执行者思维 ",适合解决简单问题。扩展能力差、后期维护难度较大。

面向对象的程序设计思想 ( Object Oriented Programming),简称 OOP

①关注的焦点是类:在计算机程序设计过程中,参照现实中事物,将事物的属性特征、行为特征抽象出来,用类来表示。

②典型的语言:Java、C#、C++、Python、Ruby和PHP等

③代码结构:以类为组织单位。每种事物都具备自己的属性和行为/功能 。

是一种" 设计者思维 ",适合解决复杂问题。代码扩展性强、可维护性高。

相关推荐
故事和你914 分钟前
蓝桥杯-2025年C++B组国赛
开发语言·软件测试·数据结构·c++·算法·职场和发展·蓝桥杯
执笔画流年呀9 分钟前
如何用Navicat来创建表
java·mysql
王忘杰13 分钟前
0基础CUDA炼丹、增加断点保存,从零开始训练自己的AI大模型 87owo/EasyGPT Python CUDA
开发语言·人工智能·python
好家伙VCC16 分钟前
**发散创新:基于以太坊侧链的高性能去中心化应用部署实战**在区块链生态中,*
java·python·去中心化·区块链
邂逅星河浪漫19 分钟前
【JavaScript】==和===区别详解
java·javascript·==·===
kvo7f2JTy19 分钟前
吃透Linux/C++系统编程:文件与I/O操作从入门到避坑
java·linux·c++
Lzh编程小栈20 分钟前
数据结构与算法之队列深度解析:循环队列+C 语言硬核实现 + 面试考点全梳理
c语言·开发语言·汇编·数据结构·后端·算法·面试
_MyFavorite_20 分钟前
JAVA重点基础、进阶知识及易错点总结(35)注解与反射
java·开发语言·tomcat
AbandonForce22 分钟前
模拟实现vector
开发语言·c++·算法
TON_G-T26 分钟前
useEffect为什么会触发死循环
java·服务器·前端