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等

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

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

相关推荐
小羊没烦恼!4 天前
微服务化的基石——持续集成
java·大数据·word·powerpoint·.net
俊昭喜喜里4 天前
java中的继承和多态的区别
java
小羊没烦恼!4 天前
初探性能优化——2个月到4小时的性能提升
java·开发语言·windows·算法·c#
譕痕4 天前
JSONObject与JSONArray封装数据格式区别
java·json
胡写代码4 天前
别再前后端各写一套表单校验了
java·后端
小鱼能吃糖4 天前
缺陷修复总览 · mall电商项目:5类缺陷,1个病根,4个业务域
java·电商
此时不提桶,更待何时4 天前
01-06-A-JVM排查实战详解
java·jvm
伞伞悦读4 天前
【第38期】Python 模块与包详解:import、from、模块搜索路径、包结构和 __init__
开发语言·python
vipxieliang4 天前
ValidX 在 DDD 领域驱动设计中的实践
java·spring boot
C语言小火车4 天前
C/C++ 为什么需要编译器?
开发语言·c++