面向对象——什么是面向对象

开发 前端
对于描述复杂的事物,为了从宏观上把握、从整体上合理分析,我们需要使用面向对象的思路来分析整个系统。但是,具体到微观操作,仍然需要面向过程的思路去处理。

Java的核心思想就是OOP(面向对象)

面向过程&面向对象

面向过程思想

  • 步骤清晰简单,第一步做什么,第二步做什么(例如:吃饭,先买菜->洗菜->炒菜->吃)
  • 面向过程适合处理一些较为简单的问题

面向对象思想

  • 物以类聚,分类的思维模式,思考问题首先会解决问题需要哪些分类,然后对这些分类进行单独思考。最后,才对某个分类下的细节进行面向过程的思索。(比如:建一座大楼,你要找个房屋设计师去设计房屋建造的图纸,你还要一个地质勘探师去勘测该土地是否适合建筑大楼,你还要找个施工队去进行房屋建造等等)
  • 面向对象适合处理复杂的问题,适合处理需要多人协作的问题!

对于描述复杂的事物,为了从宏观上把握、从整体上合理分析,我们需要使用面向对象的思路来分析整个系统。但是,具体到微观操作,仍然需要面向过程的思路去处理。

对象+方法=类

什么是面向对象

面向对象编程(Object-Oriented Programming,OOP)

面向对象编程的本质就是:以类的方式组织代码,以对象的组织(封装)数据。

抽象

三大特性(后面文章里仔细讲解):

  • 封装
  • 继承
  • 多态

从认知角度考虑是先有对象后有类。对象,是具体的事物。类,是抽象的,是对对象的抽象。

从代码运行角度考虑是先有类后有对象。类是对象的模板。

每日Java面试题

一、Java反射机制类

java.lang.Class;//
java.lang.reflect.Constructor;//构造方法
java.lang.reflect.Field;//类的成员变量
java.lang.reflect.Method;//类的方法
java.lang.reflect.Modifier;//访问权限

二、反射机制优缺点?

优点:运行期类型的判断,动态加载类,提高代码灵活度。

缺点:性能瓶颈:反射相对于一系列解释操作,通过JVM要做的事情,性能比直接的java代码要慢很多。

三、利用反射创建对象?

1.通过一个全限类名创建一个对象

Class.forName("全限类名");例如:com.mysql.jdbc.Driver Driver类已经被加载到jvm中,并且完成了类的初始化工作就行了

类名.class;获取Class<?>clz对象

对象.getClass();

2.获取构造器对象,通过构造器new出一个对象

Clazz.getConstructor([String.class])

Con.newInstance([参数]);

3.通过class对象创建一个实例对象(就相当与new类名()无参构造器)

Cls.newInstance();

​本文转载自微信公众号「崔九八」,作者「崔九八」,可以通过以下二维码关注。

转载本文请联系「崔九八」公众号。

责任编辑:武晓燕 来源: 崔九八
相关推荐

2011-07-05 16:15:49

面向对象

2013-03-11 09:23:22

Go语言面向对象

2022-07-30 23:41:53

面向过程面向对象面向协议编程

2012-01-17 09:34:52

JavaScript

2017-04-21 09:07:39

JavaScript对象编程

2013-04-17 10:46:54

面向对象

2013-08-21 17:20:49

.NET面向对象

2019-09-24 10:17:14

2010-07-15 13:56:24

面向对象面向过程

2019-11-11 10:48:44

面向对象语言

2012-06-07 10:11:01

面向对象设计原则Java

2012-02-27 09:30:22

JavaScript

2012-12-13 11:01:42

IBMdW

2010-07-06 09:43:34

UML面向对象

2021-10-21 18:47:37

JavaScript面向对象

2009-06-26 13:29:11

面向对象

2023-11-30 08:00:54

面向对象面向切面

2013-01-10 10:05:29

编程面向对象编程

2024-04-02 07:32:58

Go语言接口

2023-09-27 23:28:28

Python编程
点赞
收藏

51CTO技术栈公众号