面向对象方法-大话设计模式+J2SE视频

简介: 面向对象方法-大话设计模式+J2SE视频

好像从接触编程开始,面向对象这个词总会出现。与面向对象方法作对比的是面向过程。


在大话设计模式这本书里,为什么要讲面向对象呢?并且作者在序言里提到,先看附录里的面向对象。作者为读者简述面向对象的知识,是希望避免读者对面向对象理解欠缺造成设计模式学习的障碍。


我在看J2SE视频时,老师也通过对比面向过程的方式讲述了面向对象的知识。

下面我们重新回顾关于面向对象的知识,明确其中的基本概念,之后和曾经学过的知识产生联系,利用实例去理解。


我首先讲一下我初步的理解:面向对象,是把过程封装成一个方法,在用的时候后去调用这个方法,而不用自己再去思考过程是什么。


在大话书里,利用了“动物运动会”这个实例的演变,把面向对象中:类、对象、封装、继承、多态、接口、事件、集合等概念介绍出来。接下来赘述一下这些概念。

对象

面向对象,什么是对象?万物皆对象(生活在客观世界中的个体)

类和实例

是具有相同的属性和功能的对象的抽象集合;

实例就是一个真实对象,实例化就是创建对象的过程,使用New关键字来创建。比如说,“动物”是一个抽象的概念,存在于想象中,很是模糊,但是实例化后,就是一个个能感受得到其存在的个体,比如猫,狗,老鼠。

方法和属性

方法是类或对象行为特征的抽象,用来完成某个功能操作,在C++语言中将方法称为成员函数。(若是类的对象能够响应让它在屏幕显示自己的消息,那么在类中必须给出成员函数的定义,即给出成员函数的实现代码)

属性指类中所定义的数据,它是对客观世界实体所具有的性质的抽象。类的每个实例都有自己的特有属性值。

抽象、封装、继承、多态

封装:把数据和实现操作的代码集中起来放在对象内部。即将对象看成是不透明的黑盒子,达到了信息隐蔽的目的,外人无法探知细节。

继承:子类从基类中直接获得已经定义的数据和方法的机制,不用重复定义,有效减少了程序的冗余信息。
多态:同样的消息在发送过程中,既可以发给父类对象,也可以发给子类对象,不分类等级。然而不同层次中的每个类按照各自的需要来实现这个方法。

从上面的概念,我的理解是:抽象,是封装、继承和多态的前提

基本概念在软件设计中如何考虑

我最近完成了学校里毕业设计。结合大话书和J2SE,在做设计前,我考虑了一些问题。1.系统里有哪些对象和类?2.对象和类拥有哪些属性?3.他们之间有什么关系,我去定义这之间的方法?

在J2SE里老师利用开车去西藏这个例子进行讲解。主体“我”,需要开车、挂挡、踩油门、经过河北、经过山西…都是“我”去做。那用面向对象方法呢?“我”只要想好去西藏的方式就可以了。

相关文章
|
9月前
|
设计模式 存储 Python
【从零学习python 】46. Python中的__new__和__init__方法解析及单例设计模式
【从零学习python 】46. Python中的__new__和__init__方法解析及单例设计模式
43 0
|
10月前
|
设计模式 算法 Java
Go 语言实现模版方法设计模式
在Go语言中,可以使用接口和组合来实现模板方法模式。模板方法模式是一种行为设计模式,它定义了一个算法的骨架,将一些步骤的实现延迟到子类中。下面是一个示例代码,演示了如何在Go中实现模板方法模式
136 0
|
设计模式 领域建模 数据库
提升代码质量的方法:领域模型、设计原则、设计模式
提升代码质量的方法:领域模型、设计原则、设计模式
|
设计模式 缓存 Dubbo
JAVA SPI设计模式之策略模式文字版主页有视频
JAVA SPI设计模式之策略模式文字版主页有视频
72 0
|
设计模式 存储 开发框架
设计模式面试大全+视频教学,两天掌握设计模式!!!吊打面试官,offer拿到手疼
设计模式在面试的过程中基本是必问模块。为了帮助小伙伴拿更多的offer
109 0
设计模式面试大全+视频教学,两天掌握设计模式!!!吊打面试官,offer拿到手疼
|
设计模式 算法 Java
0202年了!你还不知道模版方法设计模式?
0202年了!你还不知道模版方法设计模式?
|
设计模式 安全 算法
Java多线程(二)、线程的生命周期、线程的同步、Synchronized的使用方法、同步代码块、同步方法、同步机制中的锁、同步的范围、Lock(锁、不会释放锁的操作、单例设计模式之懒汉式(线程安全)
Java多线程(二)、线程的生命周期、线程的同步、Synchronized的使用方法、同步代码块、同步方法、同步机制中的锁、同步的范围、Lock(锁、不会释放锁的操作、单例设计模式之懒汉式(线程安全)
Java多线程(二)、线程的生命周期、线程的同步、Synchronized的使用方法、同步代码块、同步方法、同步机制中的锁、同步的范围、Lock(锁、不会释放锁的操作、单例设计模式之懒汉式(线程安全)
|
设计模式 Java
Java中抽象类的应用——模版方法的设计模式
Java中抽象类的应用——模版方法的设计模式
79 0
|
设计模式 存储 Java
java7 --1 static关键字,main方法详解,单例设计模式,继承,super关键字,instanceof关键字,final关键字
java7 --1 static关键字,main方法详解,单例设计模式,继承,super关键字,instanceof关键字,final关键字
137 0
|
设计模式 Kubernetes Java
提升代码质量的方法:领域模型、设计原则、设计模式
我们可以列举出非常多质量差的代码的表现现象,其中最影响代码质量的两个表现是命名名不副实、逻辑可扩展性差,当一个新人阅读代码时,有时发现方法命名与实际逻辑对不上,这就让人感到非常疑惑,这种现象在平时工作并不少见;另一个就是逻辑扩展性差,一个新业务需求提出来后,发现要在多处改动,需要回归的业务逻辑比较多,造成研发效率不高。
提升代码质量的方法:领域模型、设计原则、设计模式