在线客服
扫描二维码
下载博学谷APP扫描二维码
关注博学谷微信公众号
刚开始学编程的时候都会遇到一个思维转变的过程,从原来人类思维模式转变成机器可以接受的思维模式。这个过程是非常难的,这也是为什么互联网人才能够获得高薪的原因。对于Java学习,面向过程可能更接近人的正常思维,而面向对象思维就是一个巨大的挑战了。本文就和大家聊一聊关于面向过程和面向对象的优劣。
使用面向过程的优点:在性能方面比面向对象要高,但是因为类调用时需要实例化,其开销比较大,也比较消耗资源;它的缺点是没有面向对象易维护、易复用、易扩展。
使用面向对象的优点:易维护、易复用、易扩展,同时由于面向对象有封装、继承、多态性的特性,可以设计出低耦合的系统,使系统更加灵活、更加易于系统维护;它的缺点:在性能方面比面向过程低。
面向对象程序设计的一些显着的特性
程序设计的重点在于数据而不是过程; 程序被划分为所谓的对象; 数据结构为表现对象的特性而设计; 函数作为对某个对象数据的操作,与数据结构紧密的结合在一起;数据被隐藏起来,不能为外部函数访问; 对象之间可以通过函数沟通; 新的数据和函数可以在需要的时候轻而易举的添加进来; 在程序设计过程中遵循由下至上(bottom-up)的设计方法。
面向对象程序设计在程序设计模式中是一个新的概念,对于不同的人可能意味着不同的内容。我们对面向对象程序设计的定义是“面向对象程序设计是一种方法,这种方法为数据和函数提供共同的独立内存空间,这些数据和函数可以作为模板以便在需要时创建类似模块的拷贝。这样的程序设计方法称为面向对象程序设计。”
从以上定义可以看到,一个对象被认为是计算机内存中的一个独立区间,在这个区间中保存着数据和能够访问数据的一组操作。因为内存区间是相互独立的,所以对象可以不经修改就应用于多个不同的程序中。
可能从字面上很难理解到底什么是面向对象,你可以直接参考博学谷的Java免费基础课对照的理解就可以了。
Java是世界范围内使用率最高的一种编程语言,无论其他编程语言如何兴衰,Java编程语言始终是程序员以及企业最常用的。通过本文“Java基础学习:面向过程与面向对象”你是否更加深入了解Java的基础学习了呢?如果有兴趣尽可能的去尝试学习一下博学谷的Java免费基础课。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
什么是 java 序列化?如何实现 java 序列化? Serializable 接口的作用?
将一个 java 对象变成字节流的形式传出去或者从一个字节流中恢复成一个 java 对象,例如,要将 java 对象存储到硬盘或者传送给网络上的其他计算机,这个过程我们可以自己写代码去把一个 java 对象变成某个格式的字节流再传输。
7362
2019-06-03 11:26:48
浅析Java并发工具类在AQS实现
众所周知,AQS是一个Java提高的底层同步工具类。本文就AQS的资源共享方式,state的作用,自定义同步器的方法,CountDownLatch,Semaphore,Semaphore和RateLimiter的区别,CyclicBarrier几方面来为大家浅析Java并发工具类。
7449
2019-08-05 20:07:43
MySQL中数据库的设计归纳讲解
谈到MySQL中数据库的设计,相信大家都知道这是实现实际业务的重要一步,因此对于Java学习者来说,深入了解和学习数据库的设计是十分有必要的。本文为大家准备了一份MySQL中数据库的设计归纳讲解,内容包括了多表之间的关系,像是分类、实现以及案例分析,还有数据库设计的范式概念和分类等等。有学习兴趣的朋友现在赶紧接着看下去吧!
4104
2020-02-13 14:53:59
Spring Cloud Alibaba微服务架构项目实战学习目标
Spring Cloud Alibaba微服务架构项目实战学习目标,通过电商项目实现理解SpringCloud 生态中主流技术的用法及原理、掌握微服务架构的实际开发方法、能够轻松投入项目开发工作,增强面试能力、握处理问题以及整体规划的思维方式。
7312
2020-06-16 11:16:31
POST请求与GET请求的区别是什么?
POST请求与GET请求的区别:这个问题主要针对http协议请求方式考核,如http协议其他的请求方式及GET方法和POST方法本质上的区别。GET一般用于获取和查询资源信息;POST一般用于更新资源信息通常会用来传输实体的本体。
4573
2021-04-13 15:25:57