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等

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

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

相关推荐
cnxy1888 分钟前
围棋对弈Python程序开发完整指南:步骤1 - 棋盘基础框架搭建
开发语言·python
Nonoas1 小时前
动态代理:发布订阅的高级玩法
java·ide·intellij-idea
程序员-周李斌1 小时前
Java 死锁
java·开发语言·后端
皮皮林5512 小时前
Prometheus+Grafana,打造强大的监控与可视化平台
java
JasmineWr2 小时前
CompletableFuture相关问题
java·开发语言
零雲2 小时前
java面试:知道java的反射机制吗
java·开发语言·面试
Jeremy爱编码2 小时前
实现 Trie (前缀树)
开发语言·c#
laocooon5238578862 小时前
插入法排序 python
开发语言·python·算法
你的冰西瓜3 小时前
C++中的list容器详解
开发语言·c++·stl·list
java1234_小锋3 小时前
Java进程占用的内存有哪些部分?
java