Java是一门面向对象的编程(Object Oriented Programming, OOP)语言,面向对象是相对于面向过程而言。那么什么是面向对象,什么又是面向过程呢?

面向过程——步骤化

面向过程就是分析出实现需求所需要的步骤,通过函数一步一步实现这些步骤,接着依次调用即可。

面向对象——行为化

面向对象是把整个需求按照特点、功能划分,将这些存在共性的部分封装成对象,创建了对象不是为了完成某一个步骤,而是描述某个事物在解决问题的步骤中的行为

举例说明

假设我们要做一个网站,首先我们做一个网站需要以下几个步骤,写代码——购买服务器——管理服务器。

面向过程怎么做呢?

就像我们要先写代码,然后购买服务器,把代码放到服务器上,然后再去写文章。

面向对象呢?

A会写代码,B会购买服务器,A会把代码放到服务器上,D会写文章,E会管理服务器。我们只用知道谁会干什么,然后高对应的人说你需要干什么。这个人在Java中被称之为对象。

面向过程和面向对象的优缺点:

面向过程

优点:性能上它是优于面向对象的,因为类在调用的时候需要实例化,开销过大。

缺点:不易维护、复用、扩展

用途:单片机、嵌入式开发、Linux/Unix等对性能要求较高的地方

面向对象

优点:易维护、易复用、易扩展,由于面向对象有封装、继承、多态性的特性,可以设计出低耦合的系统,使系统更加灵活、更加易于维护 缺点:性能比面向过程低低耦合,简单的理解就是说,模块与模块之间尽可能的独立,两者之间的关系尽可能简单,尽量使其独立的完成成一些子功能,这避免了牵一发而动全身的问题。这一部分我们会在面向对象学习结束后进行系统的整理和总结。

类与对象

类是一组相关的属性和行为的集合。是一个抽象的概念。 对象是该类事物的具体表现形式。具体存在的个体。

成员变量事物的属性

成员方法事物的行为

比如人作为一个类,身高、体重就是他的属性,写代码、打游戏就是他的行为。

java什么是类和对象,Java类和对象的概念相关推荐

  1. Java 对象和类 的理解

    学而时习之,温故而知新. 对象: 对象是类的一个实例,有状态和行为 类: 类为对象定义属性和行为 识别对象和类, 自己的的知识里面 一般 new 之后的是对象, class后面的是类 对象的特征: 1 ...

  2. java查看对象锁级别_对象级别锁 vs 类级别锁(Java)

    前言 对于多线程(并发)和Spring Boot这两块在同步进行学习中,在看到使用synchronized关键字使操作同步时,看到和C#中不一样的东西,所以这里呢,就深入学习了下,若有错误之处,还望指 ...

  3. java中如何把时间封装成类,java-如何在不使用任何不推荐使用的类的情况下将日期从一种格式转换为另一种格式的日期对象?...

    java-如何在不使用任何不推荐使用的类的情况下将日期从一种格式转换为另一种格式的日期对象? 我想将date1格式的日期转换为date2格式的日期对象. SimpleDateFormat simple ...

  4. java封装对象实体类_Java 接口自动化系列--实体类之entity封装

    实体包entity下面有4个类,主要存放java对象,每个类必须有私有属性,空参构造,get set方法 具体excel中数据信息见---工具类excel文章 1.API类 解析excel中接口信息的 ...

  5. 一天一个Java基础——对象和类

    1.在Java中你所做的全部工作就是定义类,产生那些类的对象,以及发送消息给这些对象 2.可以在类中设置两种类型的元素:字段(也被称作数据成员)和方法(也被称作成员函数) 3.字段可以是任何类型的对象 ...

  6. java写一个外网访问的接口_【JAVA基础】一个案例搞懂类、对象、重载、封装、继承、多态、覆盖、抽象和接口概念及区别(中篇)...

    0 前言 初学JAVA时,总会对一些概念一知半解,相互混淆,不明其设计的用意,如类.对象.重载.封装.继承.多态.覆盖.抽象类.接口概念.为便于理解和巩固,本文将基于一个案例及其变形,展现各个概念的定 ...

  7. java 克隆对象工具类_关于dorado-core源码包中CloneUtils克隆工具类对对象进行克隆复制操作...

    一.前言 基于dorado.core.jar开源包中的com.bstek.dorado.util.CloneUtils克隆工具类,对对象进行通过java.lang.reflect.Method映射克隆 ...

  8. java类和对象实例对象_Java类、对象和实例的理解

    最近在看Python,这门面向对象的语言又引起了类的引用.对象和实例这些概念之间的纠结,我按照自己的理解总结了一下Java里三者的关系,如果有不对的地方还希望大家指出. 类的引用和对象的概念没什么好弄 ...

  9. java类与对象_Java类与对象

    类与对象 1,面向对象编程简介 Java语言最大的特点在于面向对象的编程设计,并且面向对象的编程设计也在由于Java自身的发展而不断发展.面向过程编程(C语言).函数式编程(Scala).面向对象编程 ...

  10. java对象生命周期_Java对象生命周期和类生命周期

    原标题:Java对象生命周期和类生命周期 作者:彭空空 链接:https://www.jianshu.com/p/25ea857ba78b 导读 对象的生命周期 类的加载机制 类的生命周期 类加载器 ...

最新文章

  1. [转][小结][三种方法]实现WPF不规则窗体
  2. 书评 —— 深入网站开发和运营
  3. python读取输入流_Python读取实时数据流教程
  4. 用shell获取mysql主从状态_shell监控MySQL主从状态脚本两则
  5. Ubuntu常用服务器环境搭建——MySQL篇
  6. hdu 4612 边连通度缩点+树的最长路径
  7. MDL锁导致mysql夯住_MySQL MetaData Lock 案例分享
  8. go标准库的学习-encoding/json
  9. 代替紧急通知_人员紧急替代程序与替代方案的通知
  10. Pandas速查手册中文版API
  11. 计算机主板不认硬盘怎么回事,主板sata接口不认硬盘怎么办
  12. 联想拯救者y7000p加内存条_内存、硬盘不够用?手把手教你升级联想拯救者Y7000P...
  13. 【爬虫实战】起点中文网小说的爬取
  14. PHP 3D大富翁,大富翁3D版 Monopoly Classic HD
  15. Minecraft mod制作简易教程(三)——创建一个物品
  16. python zxing 识别条码_Python zxing 库解析(条形码二维码识别)
  17. 地脚螺钉直径系列_地脚螺钉的作用,地脚螺钉直径规格!
  18. selenium-python自动化测试框架详解
  19. Win7有多条隧道适配器(isatap、teredo、6to4)的原因及关闭方法(转)
  20. 【牛客刷题】SQL专项错题记录三

热门文章

  1. fork vfork exit _exit (转)
  2. 图解 CSS (1): 先做一个样式表测试工具
  3. 数据库基础知识——视图
  4. vba九九乘法表代码_VBA代码模块化--数据透视表
  5. python中的变量的作用_Python中的变量作用域
  6. html右侧分为两个框架,html – 两个框架一个滚动条
  7. ubuntu安装完mysql无法登录_Ubuntu安装mysql8后无法登陆怎么解决
  8. redis rua解决库存问题_如何解决高并发下的库存安全问题,没你想得那么复杂(附源码)...
  9. 动态资源和静态资源分离
  10. PyTorch框架学习九——网络模型的构建