java设计模式之面向对象的思想(think in OO(Object Oriented))

面向对象的概念: 就是用对象的思维方式,抽象生活中的事物,设计程序,其基本思想是使用对象,类,继承,封装,消息等基本概念来进行程序设计或对象的封装。

面向过程的概念:一种思维方式,对生活中的事物从上到下,从小到大,一步步的分析,设计程序。模块化思想非常重要。

自学时通过一个小列子学习,比如“老张开车去东北”这句话用面向对象的思想编程。面向对象的思想就是用类、继承、多态抽象生活中的时候,并结合实践。

面向对象的一般步骤

1、考虑类 名词

2、属性   不可以脱离具体的应用环境

3、方法  大多为动词

4、类与类之间的关系

5、隐藏(封装)  降低耦合度

6、多态 java的特点,作用是使程序可扩展,扩展性很好。

本列中有三个类,司机、车、地址,司机类Driver代码如下

public class Driver {

private String name;

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public void driver(Vihecle v,String str,Adress a){

v.go(a,str);

}

}

目的有一个类

public class Adress {

private String name;

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

}

交通工具,设计了一个抽象类

abstract class Vihecle {

abstract void go(Adress adress,String str);

}

具体某种交通工具,比如车

public class Car extends Vihecle{

@Override

void go(Adress adress, String str) {

System.out.println(str+"开着车去"+adress.getName());

}

}

飞机

public class Plane extends Vihecle{

@Override

void go(Adress adress,String str) {

System.out.println(str+"驾着飞机去"+adress.getName());

}

}

最后实现类之间的调用

public class Main {

public static void main(String[] args) {

Driver d=new Driver();

d.setName("老张");

System.out.println(d.getName());

//Vihecle v=new Plane();

Vihecle v=new Car();

Adress adress=new Adress();

adress.setName("东北");

d.driver(v, d.getName(), adress);

}

}

详细代码见附件,下载留言、、、、、、、、、、

java面向对象的设计思想,java设计形式之面向对象的思想(think in OO(Object Oriented))...相关推荐

  1. 【Java设计模式 面向对象设计思想】一 再谈面向对象和封装、抽象、继承、多态四大特性

    回看最初的目标:[Java设计模式 学习目标及大纲]高质量代码的标准及实现路径在这篇Blog里我们明确了什么是高质量的代码:易维护.易读.易扩展.灵活.简洁.可复用.可测试,也知道高质量代码的达成路径 ...

  2. 面向过程和面向对象的设计思想、java类、Java类的定义、java对象、对象的创建和使用、类和对象、变量分类、方法分类、构造方法、方法的重载

    1.面向过程和面向对象的设计思想 面向过程:procedure oriented programming 缩写 POP. 分析出解决问题所需要的步骤,然后把步骤一步一步实现. 面向过程直接关注流程. ...

  3. java对象扩展方法_高可扩展的面向对象代码架构是如何设计的

    导语 Java后端程序员的日常工作,大多数可能都是写基于数据库CRUD的Dao层.Manager层.Service层.Controller层,需求来了,就对着这几个层一顿怼代码.调试跑通了,就完事了. ...

  4. Java高并发之设计模式,设计思想

    点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试文章 作者:大道方圆 cnblogs.com/xdecode/p/913 ...

  5. Java面向对象实验 8 ——图形用户界面设计

    目录 1.算数运算 2.算术测试 3.选课信息 4.计算随机而变 5*.菜单文本 1.算数运算 编写一个应用程序,设计一个窗体,其中有一个JCombox组件(+.-.*./),以及2个文本框和一个富文 ...

  6. Java自己文章只能自己修改_文章目录Java代码俯身指南,主要为Java开发人员提供代码复审参考,快捷有效提出修改意见。目的发现代码错误:一个人写的代码可能会有一些思想和设计盲点,多个人尽...

    文章目录 Java代码俯身指南,主要为Java开发人员提供代码复审参考,快捷有效提出修改意见. 目的发现代码错误:一个人写的代码可能会有一些思想和设计盲点,多个人尽早的发现BUG. 统一代码风格:统一 ...

  7. 面对对象课程设计报告java,面向对象编程 JAVA编程综合实验报告.doc

    PAGE \* MERGEFORMAT 20 成绩: JAVA编程B综合实验报告 实验名称:面向对象编程 实验时间:2012年 5月 31日星期四 JAVA编程B综合实验报告 一.实验名称 面向对象编 ...

  8. 面试官系统精讲Java源码及大厂真题 - 25 整体设计:队列设计思想、工作中使用场景

    25 整体设计:队列设计思想.工作中使用场景 人生太短,要干的事太多,我要争分夺秒. --爱迪生 引导语 本章我们学习了 LinkedBlockingQueue.ArrayBlockingQueue. ...

  9. java毕业设计——基于java+Java awt+swing的愤怒的小鸟游戏设计与实现(毕业论文+程序源码)——愤怒的小鸟游戏

    基于java+Java awt+swing的愤怒的小鸟游戏设计与实现(毕业论文+程序源码) 大家好,今天给大家介绍基于java+Java awt+swing的愤怒的小鸟游戏设计与实现,文章末尾附有本毕 ...

最新文章

  1. node.js实现国标GB28181流媒体点播(即实时预览)服务解决方案
  2. flink mysql connector_Flink JDBC Connector:Flink 与数据库集成最佳实践
  3. 微型计算机显示器引线,微型计算机的显示器通常有两组引线,即分别是( )...
  4. idea2020配置springboot热部署超全步骤以及安装JRebel插件
  5. JAVA实现在面板中添加图表_Java 创建PowerPoint图表并为其添加趋势线
  6. python后端开发学什么_零基础学Python,这是阿里Python8年开发经验写给你的学习路线图...
  7. flex白板之图形绘制函数
  8. 50个实用的JavaScript工具
  9. eXtremeComponents 中文参考文档
  10. 服装进销存软件哪个好?十大优质服装进销存管理软件排名
  11. Vmware虚拟机设置固定IP地址
  12. 成年人夜生活的自救! 华熙LIVE·五棵松放大招
  13. ARM内核全解析,从ARM7,ARM9到Cortex-A7,A8,A9,A12,A15到Cortex-A53,A57,A72
  14. 基于 arm 设计开发工具包的 Arm Cortex-M3 处理器设计(第二章:示例微处理器组成及各个Verilog文件功能及作用)
  15. openOCD和Jlink仿真器
  16. 可视化项目进度管理和生产计划排程
  17. 解线性方程组的各种情况
  18. cassandra 数据库
  19. 机器学习在制冷与空调方面的应用
  20. 简单聊聊Betaflight的三种飞行模式

热门文章

  1. 【android】BridgeWebView加载本地h5出现webpage not available
  2. 防水涂料行业研究及十四五规划分析报告
  3. 使用CLion在Window端进行linux开发
  4. Add an implementation, such as Hibernate Validator, to the classpath
  5. 打车软件为抢入口开战
  6. File类和Java I/O流备忘
  7. Win10禁止某些程序运行方法
  8. 在人的一生,有些细微之事,本身毫无意义可言,却具有极大的重要性。事过境迁之后,回顾其因果关系,
  9. 主键、外键、唯一键、联合主键
  10. 描绘用户场景并将典型用户和用户场景描述