设计模式汇总

设计模式分为三大类: 创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。 结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。 行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、...

2017-08-24 14:24:21

阅读数 149

评论数 0

自定义控件--实现步骤

前言:       在android开发中我们常常会用到自定义控件,可是为什么要自定义呢?自定义控件又该怎么实现呢?下面我们来了解下自定义控件的常用知识。 1:为什么要自定义控件      用到自定义控件的几种情况如下:     1> 通常一个APP有自己的显示风格,为了统一...

2017-03-27 15:58:38

阅读数 294

评论数 0

Android8.0无法接收隐式广播消息

App里有一个自己在Manifest文件里面注册的广播接收器(Receiver),到Android8.0的机器上调试的时候却接收不到消息,一番搜索和研究之后,才发现Android8.0已经对隐式广播做了限制。 版本区别 对于targetSdkVersion 在26或者以上的App,在Manife...

2019-01-18 14:18:28

阅读数 24

评论数 0

Java对象排序

java实现对象比较,可以实现java.lang.Comparable或java.util.Comparator接口 方法一:将要排序的对象类实现Comparable<>接口。 首先,创建学生类,我们将根据学生成绩对学生进行排序: /** * ...

2018-12-24 15:20:40

阅读数 23

评论数 0

Java常见面试题及答案

java常见面试题及答案 1.什么是Java虚拟机?为什么Java被称作是“平台无关的编程语言”? Java 虚拟机是一个可以执行 Java 字节码的虚拟机进程。Java 源文件被编译成能被 Java 虚拟机执行的字节码文件。 Java 被设计成允许应用程序可以运行在任意的平台,而不需要程序...

2018-12-05 17:11:43

阅读数 85

评论数 0

浅谈 MVP in Android

一、概述 对于MVP(Model View Presenter),大多数人都能说出一二:“MVC的演化版本”,“让Model和View完全解耦”等等。本篇博文仅是为了做下记录,提出一些自己的看法,和帮助大家如何针对一个Activity页面去编写针对MVP风格的代码。 对于MVP,我的内心有一个...

2018-11-27 21:36:08

阅读数 32

评论数 0

给Activity、Fragment设置切换动画及ViewGroup中子元素出场方式

1、Activity之间切换的动画 特别提示:Activity之间的切换动画有很多种方式,这里仅仅摘抄上文中提到的博客(http://www.jianshu.com/p/733532041f46 )中的方法,想要学习更多方法可参考这篇博客(http://blog.csdn.net/qq_23...

2018-11-27 11:14:08

阅读数 42

评论数 0

Android开发之多Fragment切换优化

前言:课程设计已经基本完成,但是在点击切换Fragment的时候总是感觉有点卡顿,第一次读取网络服务器数据就体现的特别明显,在本地的话也会稍微有一点卡顿,因为我引用了一个多Fragment的框架,强迫症的我看着就是不舒服,查看框架源码...,果然,框架犯了一个低级的错误:切换Fragment竟然都...

2018-11-27 10:31:22

阅读数 103

评论数 0

java设计模式------解释器模式

解释器模式 概述 : 给定一个语言,定义它的文法表示,并定义一个解释器,这个解释器使用该标识来解释语言中的句子. 使用场景 : 如果一种特定类型的问题发生的频率足够高,那么可能就值得将该问题的各个实例表述为一个简单语言中的句子.这样就可以构建一个解释器,该解释器通过解释这些句子来解...

2018-11-15 15:26:36

阅读数 33

评论数 1

Java设计模式-----访问者模式

定义 封装某些作用于某种数据结构中各元素的操作,它可以在不改变数据结构的前提下定义作用于这些元素的新的操作。 class A { public void method1(){ System.out.println("我是A")...

2018-11-15 11:02:23

阅读数 29

评论数 0

java设计模式---备忘录模式

备忘录模式 概述:在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态.这样可以将对象恢复到原先保存的状态. 帮助理解:备忘录模式就是为对象提供一个备份的地方,当对象想要回滚到前一个状态时,调用备忘录对象直接就可以恢复. 备忘录模式说包含的角色 ...

2018-11-12 17:15:42

阅读数 23

评论数 0

java设计模式----迭代器模式

定义 在软件构建过程中,集合对象内部结构常常变化各异,但对于这些集合对象,我们希望在不暴露其内部结构的同时,可以让外部客户代码透明地访问其中包含的元素;同时这种“透明遍历”也为同一种算法在多种集合对象上进行操作提供了可能。 使用面向对象技术将这种遍历机制抽象为“迭代器对象”为“应对变化中的集合对象...

2018-11-09 16:58:09

阅读数 27

评论数 0

JAVA设计模式----享元模式

解释一下概念:也就是说在一个系统中如果有多个相同的对象,那么只共享一份就可以了,不必每个都去实例化一个对象。比如说一个文本系统,每个字母定一个对象,那么大小写字母一共就是52个,那么就要定义52个对象。如果有一个1M的文本,那么字母是何其的多,如果每个字母都定义一个对象那么内存早就爆了。那么如果要...

2018-11-09 14:28:18

阅读数 27

评论数 0

java设计模式-----组合模式

先看看组合模式的定义吧:“将对象组合成树形结构以表示‘部分-整体’的层次结构。组合模式使得用户对单个对象和组合对象的使用具有一致性。”    就拿剪发办卡的事情来分析一下吧。    首先,一张卡可以在总部,分店,加盟店使用,那么总部可以刷卡,分店也可以刷卡,加盟店也可以刷卡,这个属性结构的店面...

2018-11-08 16:57:23

阅读数 30

评论数 0

java设计模式----模板方法模式

概述 模板方法模式是类的行为模式。准备一个抽象类,将部分逻辑以具体方法以及具体构造函数的形式实现,然后声明一些抽象方法来迫使子类实现剩余的逻辑。不同的子类可以以不同的方式实现这些抽象方法,从而对剩余的逻辑有不同的实现。这就是模板方法模式的用意。 比如定义一个操作中的算法的骨架,将步骤延迟到子类中。...

2018-11-08 16:04:38

阅读数 26

评论数 0

java设计模式-----建造者模式

建造者模式 定义 : 将一个复杂的对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示.也就是说用户不需要知道一个复杂的对象时如何创建的.用户只需要知道使用构造不同对象的方法(Director)就能得到一个完整的复杂对象的实例 建造者模式通常包含的几个角色 Bu...

2018-11-08 13:50:11

阅读数 23

评论数 0

JAVA设计模式之桥接模式

在软件系统中,某些类型由于自身的逻辑,它具有两个或多个维度的变化,那么如何应对这种“多维度的变化”?如何利用面向对象的技术来使得该类型能够轻松的沿着多个方向进行变化,而又不引入额外的复杂度?这就要使用桥接模式。而具体使用的方式,则是将抽象部分与他们的实现部分分离,使得它们都可以独立的变化。 手机,...

2018-11-05 16:27:46

阅读数 33

评论数 0

Pycharm新建模板默认添加作者时间等信息

  在pycharm使用过程中,对于每次新建文件的shebang行和关于代码编写者的一些个人信息快捷填写,使用模板的方式比较方便。   方法如下:   1.打开pycharm,选择File-Settings     2.选择Editor--Color&Style...

2018-10-25 16:32:48

阅读数 35

评论数 0

关于Python中的lambda

lambda是Python编程语言中使用频率较高的一个关键字。那么,什么是lambda?它有哪些用法? 这里,我们通过阅读各方资料,总结了关于Python中的lambda的“一个语法,三个特性,四个用法,一个争论”。 一个语法 在Python中,lambda的语法是唯一的。其形式如下:  ...

2018-10-23 16:23:54

阅读数 69

评论数 0

Python __dict__属性详解

我们都知道Python一切皆对象,那么Python究竟是怎么管理对象的呢? 1、无处不在的__dict__   首先看一下类的__dict__属性和类对象的__dict__属性 # -*- coding: utf-8 -*- class A(object): &quo...

2018-10-17 14:37:22

阅读数 42

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭