首页 > 编程语言
Java动态代理
代理,就是需要代理类和被代理类有相同的对外接口或者说成服务,所以代理类一般都必须实现了所有被代理类已实现的接口,因为接口就是制定了一系列对外服务的标准。           正因为动态代理有这样灵活的特性,所以我们在设计动态代理类(DynamicProxy)时不用显式地让它实现与真实主题类(RealSubject)相同的接口(interface),而是把这种实现推迟到运行时。...
分类:编程语言   时间:2015-07-26 21:03:35    收藏:0  评论:0  赞:0  阅读:294
(八十八)VFL语言初步 - 实现布局
【基本语法】 VFL的语法为H:和V:开头,代表水平和垂直。 接下来如果要涉及距离,使用|-x-,x为距离的点数。 对于视图,用[ ]包围,例如[blueView]。 ①下面的语句实现了blueView水平方向左右各距离控制器的边缘20点: H:|-20-[blueView]-20| ②如果要指定宽高,在视图名称之后用圆括号内填入常量数值,下面的代码实现了blueView距离左边2...
分类:编程语言   时间:2015-07-26 21:03:25    收藏:0  评论:0  赞:0  阅读:279
JAVA设计模式之策略模式
什么是策略模式? 定义算法族,分别封装起来,让它们之间可以相互替换,此模式让算法的变化独立于使用算法的客户。 策略模式有什么好处? 可以动态的改变对象的行为。 设计原则 1.封装变化(找出应用中可能需要变化之处,把它们独立出来,不要和那些不需要变化的代码混在一起) 2.多用组合,少用继承 3.针对接口编程,不针对实现编程 把一个类中经常改变或者将来可能改变的部分提取出来,...
分类:编程语言   时间:2015-07-26 21:02:35    收藏:0  评论:0  赞:0  阅读:201
将C++的标识符转成OC的标识符
3.将C++的标识符转成OC的标识符 C++的标识符和OC一样由数字字母下划线组成,打头的不是数字。当标识符超过一个单词, C++采用全字母小写,单词间用下划线连接的书写规范,如: bei_jing OC采用除第一个单词外,其余单词首字母大写的书写规范,如: beiJing //传入C++标识符,返回OC标识符 */ + (NSString *)objcIdentifierFr...
分类:编程语言   时间:2015-07-26 21:02:15    收藏:0  评论:0  赞:0  阅读:285
OC创建字典,数组
/* 4 创建大量字典 传入两个数组,key和obj,数组元素个数未知。创建大量字典,字典的个数与key和obj中元素较少的一个数组的元素个数相同。key中第i个元素和obj中第i个元素组成键值对。所有字典添加到一个可变数组中,返回数组的地址。 */ + (NSArray *)createDictionariesWithKeys:(NSArray *)key andObjs:(NSArra...
分类:编程语言   时间:2015-07-26 21:02:05    收藏:0  评论:0  赞:0  阅读:276
匈牙利算法
原文转载:click here~~ 匈牙利算法是由匈牙利数学家Edmonds于1965年提出,因而得名。匈牙利算法是基于Hall定理中充分性证明的思想,它是部图匹配最常见的算法,该算法的核心就是寻找增广路径,它是一种用增广路径求二分图最大匹配的算法。 -------等等,看得头大?那么请看下面的版本: 通过数代人的努力,你终于赶上了剩男剩女的大潮,假设你是一位光荣的新...
分类:编程语言   时间:2015-07-26 21:01:55    收藏:0  评论:0  赞:0  阅读:245
二分图的最大匹配 (匈牙利算法)再续
标签:二分图 最大匹配 最小集覆盖 匈牙利算法 1、二分图、最大匹配 什么是二分图:二分图又称作二部图,是图论中的一种特殊模型。 设G=(V,E)是一个无向图,如果顶点V可分割为两个互不相交的子集(A,B),并且图中的每条边(i,j)所关联的两个顶点i和j分别属于这两个不同的顶点集(i in A,j in B),则称图G为一个二分图。  什么是匹配:把上图想象成3男4女搞对象...
分类:编程语言   时间:2015-07-26 21:01:25    收藏:0  评论:0  赞:0  阅读:259
JAVA设计模式之观察者模式
什么是观察者模式? 观察者模式定义了对象之间的一对多依赖,当一个对象改变状态,其他依赖者都会收到通知并自动更新。 角色 抽象主题(Subject)角色 主题角色把所有对观察考对象的引用保存在一个聚集里,每个主题都可以有任何数量的观察者。 抽象主题提供一个接口,可以增加和删除观察者对象,主题角色又叫做抽象被观察者(Observable)角色,一般用一个抽象类或者一个接口实现。...
分类:编程语言   时间:2015-07-26 21:00:55    收藏:0  评论:0  赞:0  阅读:211
java多线程并发——Exchanger 两个任务之间交换对象
java多线程并发——Exchanger 两个任务之间交换对象...
分类:编程语言   时间:2015-07-26 20:58:45    收藏:0  评论:0  赞:0  阅读:248
【c++】map 迭代器删除示例
C++ STL中的map是非常常见的。通常我们用如下方式来遍历,并且删除map中的一些entry:map mp; mp.insert(make_pair(1,1)); mp.insert(make_pair(2,3)); // insert some elements for (map::iterator iter = mp.begin(); iter !=...
分类:编程语言   时间:2015-07-26 20:58:25    收藏:0  评论:0  赞:0  阅读:311
找出java代码中占用cpu过多问题
上面的代码启动两个线程,线程T1会占用少量CPU,线程T2会占满一个CPU。 那么如果找出代码中占用CPU较多的问题呢? 首先我们通过top列出进程,按照cpu使用率排序(shift + p) 可以看出出问题的进程号是30358 然后使用 top -H -p 30358 得到如下结果 这里可以看到线程为30371占用太多CPU,此线程有问题 接下来使用jstack ...
分类:编程语言   时间:2015-07-26 20:57:45    收藏:0  评论:0  赞:0  阅读:414
Java对话框总结
总结起来很简单: 1,对话框类型:消息,确认,选项,输入 2,选择图标:错误,信息,警告,问题,无或者自定义 3,选择消息:字符串,图标,自定义组件或者他们的集合 4,对于确认对话框,选择选项类型(默认,Yes/No,Yes/No/Cancel或者OK/Cancel) 5,对于选项对话框,选择选项(字符串,图表或者自定义组件)和默认选项 6.对于输入框,选择文本框或者输入框。...
分类:编程语言   时间:2015-07-26 20:57:15    收藏:0  评论:0  赞:0  阅读:230
Javascript MVC 学习笔记(三) 视图和模板
模板Javascript中模板的核心概念是,将包含模板变量的HTML片段和Javascript对象做合并,把模板变量替换为对象中的属性值。书中讲到了几种库作为模板引擎,但是链接失效了,可以在这里下载,链接:jQuery.tmpl使用方式很简单,看一下它的说明就行了。给定一个模板,通过给它添加数据就能生成渲染好的元素节点,然后就可以将它添加到页面中,主要使用方法如://数据 var object =...
分类:编程语言   时间:2015-07-26 20:54:55    收藏:0  评论:0  赞:0  阅读:163
Java 设计模式—装饰者模式
在Java编程语言中,嵌套了很多设计模式的思想,例如IO流中的缓冲流就使用到下面要介绍的装饰者设计模式。 示例代码: * 抽象构件角色:定义一个抽象接口,来规范准备附加功能的类 * @author Admin * */ public interface Drink { //被装饰者的基类 public String description(); pu...
分类:编程语言   时间:2015-07-26 20:53:55    收藏:0  评论:0  赞:0  阅读:114
【数据结构】1、串的模式匹配算法
首先我们一般求子串的位置的时候,我们可以使用这样的方法/* *功能:这个是定长的串的顺序存储 *时间:2015年7月15日17:16:01 *文件:SString.h *作者:cutter_point */#ifndef SSTRING_H #define SSTRING_H#define MAXSTRLEN 255class SString { unsigned char* ch; //...
分类:编程语言   时间:2015-07-26 20:53:35    收藏:0  评论:0  赞:0  阅读:244
JAVA基础知识(2)--关键字static的使用
在Java类中声明属性、方法和内部类时,可使用关键字static作为修饰符,static标记的属性和方法可以由整个类进行共享,因此static修饰的属性称为类成员或者称为类方法;static修饰的方法称为类方法或者静态方法; static修饰的语句块在其所属的类中被载入JVM时被执行一次,一般...
分类:编程语言   时间:2015-07-26 20:48:45    收藏:0  评论:0  赞:0  阅读:252
Java map的匿名类的初始化
可以直接使用:Map testMap = new HashMap() {{ put("test1", "test11"); put("test2", "test11");}}; 进行初始化。在网上查了下,这个是使用了匿名类的方式来进行初始化。第一层{}是匿名类的定义,第二层{}是初始化函数...
分类:编程语言   时间:2015-07-26 20:47:15    收藏:0  评论:0  赞:0  阅读:356
MFC之常用控件(四)
常用控件主要包括:静态文本框、编辑框、单选按钮、复选框、分组框、列表框、组合框、图片控件、列表控件、树形控件和进度条控件等等。本节教程先来讲解静态文本框的使用。控件的通知消息 在将静态文本框的使用之前,先大概讲讲控件的通知消息。当控件有事件发生时,它会向父窗口发送通知消息。最常发生的事件就是鼠标单击...
分类:编程语言   时间:2015-07-26 20:47:05    收藏:0  评论:0  赞:0  阅读:421
js 排序 冒泡排序,选择排序,插入排序
冒泡排序: 对数组的中的数据,依次比较相邻两数的大小。如果前面的数据大于后面的数据,就交换这两个数。时间复杂度O(n^2) 1 function bubble(array){ 2 var temp; 3 for(var i=0; iarr[j+1]){ 6 ...
分类:编程语言   时间:2015-07-26 20:46:15    收藏:0  评论:0  赞:0  阅读:426
高速分拣(1)的基本算法
的基本算法1 算法原理2 划分的实现过程高速排序算法的性能分析1最坏情况2 最好情况3 平均情况參考资料1. 基本算法1.1 算法原理高速排序是一种分治排序算法。它将数组划分为左右两个部分,然后分别对这两部分排序。关键在划分的过程中。它将重排数组,使的下面条件成立:对于某个划分元素指...
分类:编程语言   时间:2015-07-26 20:45:35    收藏:0  评论:0  赞:0  阅读:314
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!