- 军军小站|张军博客
搜索到与相关的文章
编程技术

代码复用应该这样做(3)

但假如被合并的代码所在的类具有某种并列关系,甚至是同一个父类下的多个子类,或者同一接口的多个实现类,则我们可以采用继承的方式解决代码复用的问题。具体做法是这样的,第一步还是整理原有的代码,通过比较,将需要重构的多份原代码中相同的与不同的代码整理出来。在整理过程中,可以将不同的代码,保留在各自的原程序中,而将相同的代码抽取出来成为独立的函数。这些函数就是我们后面需要抽象、合并、复用的代码。下一步呢,就是运用“抽取父类(ExtractSuperclass)”的

系统 2019-08-29 21:59:08 1787

编程技术

Hibernate中的Criteria条件查询

CriteriaQuery通过面向对象化的设计,将数据查询条件封装为一个对象。简单来讲,CriteriaQuery可以看作是传统SQL的对象化表示,如:Criteriacriteria=session.createCriteria(User.class);criteria.add(Expression.eq("name","Erica");criteria.add(Expression.eq("sex",newInteger(1)));这里的criteri

系统 2019-08-12 09:30:03 1787

Python

python rsync服务器之间文件夹同步脚本

本文实例为大家分享了pythonrsync服务器之间文件夹同步的具体代码,供大家参考,具体内容如下Aboutrsync配置两台服务器之间3ssh-key后,可以实现自动化无需手动输入密码,脚本如下:importargparseimportdatetimefromfunctoolsimportpartialimportmultiprocessingasmpimportosimportparamikoaspmkimporttimedefcheck_ssh(ho

系统 2019-09-27 17:57:04 1786

Python

python2 中 unicode 和 str 之间的转换及与python

在python2中字符串分为unicode和str类型StrToUnicode使用decode(),解码UnicodeToStr使用encode(),编码返回数据给前端时需要先将unicode转换为str类型,事实上,python2中的str就是一串字节(byte),而网络通信时,传输的就是字节.如果前端需要接收json数据,需要使用json.dumps()将数据转换为json格式进行返回,当数据是嵌套类型的数据,内层的数据可能无法直接转换为str类型的数

系统 2019-09-27 17:57:03 1786

Python

进程及Python实现

进程杂谈#进程就是正在执行的一个过程,是对正在运行程序的一个抽象#进程由程序、数据集和进程控制块(最重要的,进程切换状态如何保存,恢复和记录)组成"""进程调度:1.先来先服务2.短作业优先调度3.时间片轮转法4.多级反馈队列进程遇到IO就会被挂起"""'''将一个单独的cpu变成多个虚拟的cpu(多道技术:时间多路复用和空间多路复用+硬件上支持隔离)没有进程的抽象,现代计算机将不复存在''''''操作系统的作用:1.隐藏丑陋复杂的硬件接口,提供良好的抽象

系统 2019-09-27 17:57:03 1786

Python

Python之读取用户指令和格式化打印

Python之读取用户指令和格式化打印一、读取用户指令当你的程序要接收用户输入的指令时,可以用input函数:name=input("请输入你的名字:")print("Hi"+name)程序中只要有input函数就会等待用户输入完并按回车键之后才会继续往下执行代码注:input()函数接收得到的值只是字符串,即使你输入的是数字或者其他数据类型的值,它也会把数字按照字符串处理,即接收得到值只会字符串。二、格式化打印假设现在需要打印出以下格式的内容,该怎么实现

系统 2019-09-27 17:56:58 1786

Python

Python专用方法与迭代机制实例分析

本文实例讲述了Python专用方法与迭代机制,分享给大家供大家参考之用。具体分析如下:众所周知,Python设计哲学是“优雅”、“明确”、“简单”,对于一件事只用一种最好的方法来做,而这种优雅在于背后很自然的隐藏了很多细节。比如对一些对象直接用for语句来迭代,一些全局函数可以作用于很多具有共同特征的对象,还有生成器装饰器自省等特性。其中很多实现都是借助Python内部专用方法,而对外则使用统一的全局函数来进行操作,在配合一些语法糖,使得Python写起来

系统 2019-09-27 17:56:52 1786

Python

python 面向对象之封装

封装面向对象三大特性:继承封装多态隐藏对象的属性和实现细节,仅对外提供公共访问方法广义上的封装:把方法和变量都封装在类中狭义上的封装:在类的外部干脆不能调用了优点将变化隔离便于使用提高复用性提高安全性封装原则:将不需要对外提供的内容隐藏起来把属性都隐藏,提供公共方法对齐访问私有变量和私有方法在python中用双下划线开头的方式将属性隐藏起来(设置成私有的)代码实例#其实这仅仅这是一种变形操作#类中所有双下划线开头的名称如__x都会自动变形成:_类名__x的

系统 2019-09-27 17:56:45 1786

Python

python下的opencv画矩形和文字注释的实现方法

画矩形函数调用:cv2.rectangle(img,pt1,pt2,color,thickness,line_type,shift)img:图像.pt1:矩形的一个顶点。pt2:矩形对角线上的另一个顶点color:线条颜色(RGB)或亮度(灰度图像)(grayscaleimage)。thickness:组成矩形的线条的粗细程度。取负值时(如CV_FILLED)函数绘制填充了色彩的矩形。line_type:线条的类型。见cvLine的描述shift:坐标点的

系统 2019-09-27 17:56:28 1786

Python

Python 中开发pattern的string模板(template) 实例

定制pattern的string模板(template)详解string.Template的pattern是一个正则表达式,可以通过覆盖pattern属性,定义新的正则表达式.如:使用新的定界符"{{",把{{var}}作为变量语法.代码:#-*-coding:utf-8-*-'''''Createdon2014.6.5@author:Administrator@edition:python3.3.0,eclipsepydev'''importstring

系统 2019-09-27 17:56:16 1786