java设计模式-目的及思想

这篇具有很好参考价值的文章主要介绍了java设计模式-目的及思想。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.2 设计模式的目的

某类问题的通用解决方案;

  • 代码重用性

相同功能的代码,不用多次编写

  • 可读性

编程规范,便于其他程序员阅读和理解

  • 可扩展性

新增功能时,非常的方便

  • 可靠性

新增功能时,对原功能无影响

  • 高内聚、低耦合

使程序高内聚、低耦合

1.3 设计模式核心思想

  • 找出应用中可能变化之处,把他们独立出来,不要和那些不需要变化的代码混在一起;
  • 针对接口编程,而不是对实现编程;
  • 为了交互对象之间的松耦合设计而努力;

具体表现:
面向过程》面向对象》面向接口;
大段的代码》根据逻辑片段封装成多个方法;
对象之前的解耦》通过加一侧context类来关联不同的接口对象;

1.4 面向对象相关概念

  • 方法重载

一个类中可以有相同的方法名,但是这些方法不能有相同的参数类型和个数;
当参数类型和个数相同时,如果权限修饰符(public/protected等)或返回类型不同,也是认为非重载写法,编译会报错;

  • 方法重写

子类重写父类的方法,子类对象通过父类调用是,执行的仍然是子类的方法逻辑;

  • 封装

每个对象都包含它能进行操作所需要所有信息,这个特性称之为封装;

  • 继承

子类可以拥有父类所有特性,对象的解除代表了一种“is a”的关系,如果两个对象B和A可以描述为“B是A”,则表明B可以继承A;
抽象类与接口的区别:抽象类用于继承,代表的是对具体事物的抽象,而接口用于实现,代表的是对应拥有的特殊能力;
优点:所有子类的公共部分在父类,避免了代码重复;
缺点:继承破坏了包装,父类实现的细节暴露给了子类,子类与父类强耦合;
设计模式中尽量避免使用继承;

对象的继承关系实在编译时就定义好了,所以无法在运行时改变从父类继承的实现。子类的实现与它的父类有着紧密的依赖关系,以至于父类实现中的任何变化必然会导致子类发生变化。当你需要复用子类时,如果继承下来的实现不适合解决新的问题,则父类必须重写或被其他更适合的类替换。这总依赖关系限制了灵活性并最终限制了复用性;

  • 多态

多态通过子类重写父类方法来实现,子类以父类的身份出现,执行的是特定子类重写的方法逻辑;

  • 面向对象三大特性

封装、继承、多态;

  • 抽象类

当类的方法仅申明不实现时,可以用abstract(抽象)来修饰,此时所在类也必须为抽象类;
抽象类中可以有已实现的方法,所有的抽象类方法必须被子类重写;
抽象类可以继承抽象类,不必重写父抽象类的抽象方法,子抽象类也可以定义抽象方法,子抽象类的子类必须实现所有父抽象类的所有抽象方法;
抽象类不能被实例化;

  • 接口

接口是对行为的抽象,接口可先行于对象,行为跨越不同类的对象。父类(抽象类)是对对象的抽象,而接口是对象需要拥有的行为能力;
一个类只能继承一个类,但是可以实现多个接口;

  • 泛型

泛型是占位符,这些占位符是类、结构、接口、方法所存储或使用的一个或多个类型的占位符;文章来源地址https://www.toymoban.com/news/detail-475544.html

到了这里,关于java设计模式-目的及思想的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 二十四种设计模式与六大设计原则(三):【装饰模式、迭代器模式、组合模式、观察者模式、责任链模式、访问者模式】的定义、举例说明、核心思想、适用场景和优缺点

    接上次博客:二十四种设计模式与六大设计原则(二):【门面模式、适配器模式、模板方法模式、建造者模式、桥梁模式、命令模式】的定义、举例说明、核心思想、适用场景和优缺点-CSDN博客 目录 装饰模式【Decorator Pattern】 定义 举例说明 核心思想 适用场景 优缺点 迭代

    2024年04月17日
    浏览(44)
  • 《移动互联网技术》 第十章 系统与通信: 掌握Android系统的分层架构设计思想和基于组件的设计模式

    🌷🍁 博主 libin9iOak带您 Go to New World.✨🍁 🦄 个人主页——libin9iOak的博客🎐 🐳 《面试题大全》 文章图文并茂🦕生动形象🦖简单易学!欢迎大家来踩踩~🌺 🌊 《IDEA开发秘籍》学会IDEA常用操作,工作效率翻倍~💐 🪁🍁 希望本文能够给您带来一定的帮助🌸文章粗浅,敬

    2024年02月16日
    浏览(46)
  • 【C++ 观察者模式 思想理解】C++中的观察者模式:松耦合设计与动态交互的艺术,合理使用智能指针观察者

    在进入技术细节之前,理解观察者模式(Observer Pattern)的基本概念和它在现代编程中的重要性是至关重要的。 观察者模式是一种设计模式,它定义了对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并自动更新。在C++中,这个

    2024年01月24日
    浏览(44)
  • JAVA设计模式----原型设计模式

    定义 :用原型实例指定创建对象的种类,并通过拷贝这些原型创建新的对象。 类型 :创建类模式 类图 : 原型模式主要用于对象的复制,它的核心是就是类图中的原型类Prototype。Prototype类需要具备以下两个条件: 实现Cloneable接口。在java语言有一个Cloneable接口,它的作用只

    2024年02月13日
    浏览(38)
  • 【设计模式】Java设计模式详细讲解

    一、概述 Java设计模式是Java程序设计中一种重要的最佳实践,它提供了一种框架和结构,可以帮助开发者更好地理解和设计复杂的系统。设计模式不仅仅是一种语法规则,更是一种思想和方法论,它能够帮助开发者更好地分析、设计和实现软件系统。 设计模式的概念最早由

    2024年02月10日
    浏览(38)
  • Java设计模式 (三) 代理设计模式

    什么是代理设计模式? 代理设计模式是一种结构型设计模式,它允许创建一个代理对象,用于控制对其他对象的访问。代理模式通常用于在访问对象时添加一些附加操作,而不是直接访问真实对象。代理模式可以在不改变原始类代码的情况下,通过引入代理类来增强功能。 代

    2024年02月12日
    浏览(35)
  • Java设计模式 (一) 模板方法设计模式

    什么是模板方法设计模式? 模板方法设计模式是一种行为型设计模式,它定义了一个算法的骨架,并将一些步骤的具体实现延迟到子类中。模板方法模式可以帮助确保在算法的不同部分中保持一致性,同时也允许子类根据需要进行具体实现。 模板方法模式的关键特点包括:

    2024年02月12日
    浏览(31)
  • Java设计模式-装饰模式

    装饰模式在Java领域是一种常见的设计模式,它能够在不改变对象原有结构的情况下,动态地为对象添加新的功能。它通过封装原有对象,在运行时动态地为对象添加新的行为或者修改原有行为,以扩展对象的功能。这种方式避免了继承的静态特性,让对象的行为可以根据需要

    2024年02月04日
    浏览(32)
  • Java设计模式——策略模式

    1. 策略模式简介 策略模式: 策略模式是一种行为型模式, 它将对象和行为分开, 将行为定义为一个行为接口和具体行为的实现 策略模式最大的特点是行为的变化, 行为之间可以相互替换 每个if判断都可以理解为一个策略. 本模式是的算法可独立于使用它的用户而变化 2. 模式结构

    2024年02月11日
    浏览(37)
  • Java设计模式-组合模式

    在软件设计中,设计模式是一种被广泛接受和应用的经验总结,旨在解决常见问题并提供可复用的解决方案。 组合模式是一种结构型设计模式,它允许将对象组合成树形结构以表示“部分-整体”的层次结构。这种模式能够使客户端以一致的方式处理单个对象和对象集合,将

    2024年02月06日
    浏览(30)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包