01 2017 档案
摘要:loarocks install loadcaffe 失败 1、Error: Your user does not have write permissions in /home/zhangliang/work/workspace_Letvplatform/neuralstyle/torch/ins
阅读全文
摘要:android中的事件类型分为按键事件和屏幕触摸事件,Touch事件是屏幕触摸事件的基础事件。 android系统中的每个View的子类都具有下面三个与TouchEvent处理密切相关的方法: (1)public boolean dispatchTouchEvent(MotionEvent ev)这
阅读全文
摘要:#!/bin/bash是指此脚本使用/bin/bash来解释执行。 其中,#!是一个特殊的表示符,其后,跟着解释此脚本的shell路径。 bash只是shell的一种,还有很多其它shell,如:sh,csh,ksh,tcsh,... 我们可以通过以下一个示例来进行实验,了解#!/bin/bash的
阅读全文
摘要:1、方法 (1)使用Serializable接口实现序列化。利用Bundle.putSerializable(Key, Object);这里objec对象需要实现serializable接口。 (2)实现Parcelable接口串行化。利用Bundle.putParcelable(Key, Obje
阅读全文
摘要:Android包含三种动画:View Animation, Drawable Animation, Property Animation(Android 3.0新引入)。 1、View Animation:也就是所说的Tweened Animation(补间动画)。View Animation分为四
阅读全文
摘要:Serialization(序列化)是一种将对象以一连串的字节描述的过程;反序列化deserialization是一种将这些字节重建成一个对象的过程。java序列化API提供一种处理对象序列化的标准机制。 序列化的必要性 java中,一切都是对象,在分布式环境中经常需要将Object从这一端网络或设
阅读全文
摘要:首先,自定义一个ActivityManager管理类,用于管理栈中的Activity 然后,在baseActivity中的两个方法添加如下方法(如果没有baseActivity,就得一个个加了) 最后,根据需求判断,在需要清除所有activity的地方,加上如下代码 PS:清除掉所有activity
阅读全文
摘要:个人理解: 目前大多数中小互联网公司,均主要依靠业务,因此Java及Android需求较大,且其核心业务模块基本依靠开源和一套核心代码,之后大部分的员工所做的都是搬砖的业务类工作。 因此其在招聘时,所看的一是基础知识,二是针对其当前业务或新业务能做出什么贡献,以前做过哪些相关项目,点过哪些技能点,以
阅读全文
摘要:应用可以使用它对外部事件进行过滤,只对感兴趣的外部事件(如当电话呼入时,或者数据网络可用时)进行接收并做出响应。广播接收器没有用户界面。然而,它们可以启动一个activity或service来响应它们接收的消息,或者用NotigicationManager来通知用户。通知可以用很多中方式来吸引用户的
阅读全文
摘要:一、什么是activity Activity 是用户接口程序,原则上它会提供给用户一个交互式的接口功能。它是 android 应用程序的基本功能单元。Activity 本身是没有界面的。所以activity类创建了一个窗口,开发人员可以通过setContentView(View)接口把UI放到act
阅读全文
摘要:在安装 Ubuntu的时候 , 给/boot文件目录分配空间的时候,是100M,/boot可以单独分成一个区,也可以不单独分,在/(根目录)下也会自动为其创建一个boot目录。顺便提一下,Linux分区是树结构的,/为根目录,在其目录下会分各个执行不同工作的目录,所以在分区的时候完全可以只分一个根分
阅读全文
摘要:Given an array of integers, every element appears three times except for one. Find that single one. Note:Your algorithm should have a linear runtime c
阅读全文
摘要:定义:一个软件实体如类、模块和函数应该对扩展开放,对修改关闭。 问题由来:在软件的生命周期内,因为变化、升级和维护等原因需要对软件原有代码进行修改时,可能会在旧代码中引入错误,也可能会使我们不得不对整个功能进行重构,并且需要原有代码经过重新测试。 解决方案:当软件需要变化时,尽量通过扩展软件实体的行
阅读全文
摘要:定义:一个对象应该对其他对象保持最少的了解。 问题由来:类与类之间的关系越密切,耦合度越大,当一个类发生改变时,对另一个类的影响也越大。 解决方案:尽量降低类与类之间的耦合。 自从我们接触编程开始,就知道了软件编程的总原则:低耦合、高内聚。无论是面向过程编程还是面向对象编程,只有使各个模块之间的耦合
阅读全文
摘要:Given an array of integers, every element appears twice except for one. Find that single one. Note:Your algorithm should have a linear runtime complex
阅读全文
摘要:定义:客户端不应该依赖它不需要的接口;一个类对另一个类的依赖应该建立在最小的接口上。 问题由来:类A通过接口I依赖类B,类C通过接口I依赖类D,如果接口I对于类A和类B来说不是最小接口,则类B和类D必须去实现他们不需要的方法。 解决方案:将臃肿的接口I拆分为独立的几个接口,类A和类C分别与他们需要的
阅读全文
摘要:定义:高层模块不应该依赖低层模块,二者都应该依赖其抽象;抽象不应该依赖细节;细节应该依赖抽象。 问题由来:类A直接依赖类B,假如要将类A改为依赖类C,则必须通过修改类A的代码来达成。这种场景下,类A一般是高层模块,负责复杂的业务逻辑;类B和类C是低层模块,负责基本的原子操作;假如修改类A,会给程序带
阅读全文
摘要:肯定有不少人跟我刚看到这项原则的时候一样,对这个原则的名字充满疑惑。其实原因就是这项原则最早是在1988年,由麻省理工学院的一位姓里的女士(Barbara Liskov)提出来的。 定义1:如果对每一个类型为 T1的对象 o1,都有类型为 T2 的对象o2,使得以 T1定义的所有程序 P 在所有的对
阅读全文
摘要:定义:不要存在多于一个导致类变更的原因。通俗的说,即一个类只负责一项职责。 问题由来:类T负责两个不同的职责:职责P1,职责P2。当由于职责P1需求发生改变而需要修改类T时,有可能会导致原本运行正常的职责P2功能发生故障。 解决方案:遵循单一职责原则。分别建立两个类T1、T2,使T1完成职责P1功能
阅读全文
摘要:观察者模式中,一个被观察者管理所有相依于它的观察者物件,并且在本身的状态改变时主动发出通知。这通常通过呼叫各观察者所提供的方法来实现。此种模式通常被用来实现事件处理系统。 角色 抽象被观察者角色:把所有对观察者对象的引用保存在一个集合中,每个被观察者角色都可以有任意数量的观察者。被观察者提供一个接口
阅读全文
摘要:A linked list is given such that each node contains an additional random pointer which could point to any node in the list or null. Return a deep copy
阅读全文
摘要:Given a string s and a dictionary of words dict, add spaces in s to construct a sentence where each word is a valid dictionary word. Return all such p
阅读全文
摘要:String.Trim()方法到底为我们做了什么,仅仅是去除字符串两端的空格吗? 一直以为Trim()方法就是把字符串两端的空格字符给删去,其实我错了,而且错的比较离谱。 首先我直接反编译String类,找到Trim()方法: 1 public string Trim() 2 { 3 return
阅读全文
摘要:定义:动态给一个对象添加一些额外的职责,就象在墙上刷油漆.使用Decorator模式相比用生成子类方式达到功能的扩充显得更为灵活。设计初衷:通常可以使用继承来实现功能的拓展,如果这些需要拓展的功能的种类很繁多,那么势必生成很多子类,增加系统的复杂性,同时,使用继承实现功能拓展,我们必须可预见这些拓展
阅读全文
摘要:工厂模式在《Java与模式》中分为三类:1)简单工厂模式(Simple Factory):不利于产生系列产品;2)工厂方法模式(Factory Method):又称为多形性工厂;3)抽象工厂模式(Abstract Factory):又称为工具箱,产生产品族,但不利于产生新的产品; 这三种模式从上到下
阅读全文
摘要:转自:http://blog.csdn.net/coderder/article/details/51897721 0. 前言 在软件工程领域,依赖注入(Dependency Injection)是用于实现控制反转(Inversion of Control)的最常见的方式之一。本文主要介绍依赖注入原
阅读全文
摘要:方法一: 方法二: 转自:http://www.cnblogs.com/itdyb/p/6028112.html
阅读全文
摘要:LRU缓存: LRU缓存利用了这样的一种思想。LRU是Least Recently Used 的缩写,翻译过来就是“最近最少使用”,也就是说,LRU缓存把最近最少使用的数据移除,让给最新读取的数据。而往往最常读取的,也是读取次数最多的,所以,利用LRU缓存,我们能够提高系统的performance.
阅读全文
摘要:第一种: 1 Map map = new HashMap(); 2 Iterator iter = map.entrySet().iterator(); 3 while (iter.hasNext()) { 4 Map.Entry entry = (Map.Entry) iter.next(); 5 Object key = entry.getKey(); 6 Objec...
阅读全文
摘要:1.用Java自带的函数 2.用正则表达式 3.用ascii码判断
阅读全文
摘要:SimpleDateFormat 是一个以国别敏感的方式格式化和分析数据的具体类。 它允许格式化 (date -> text)、语法分析 (text -> date)和标准化。 SimpleDateFormat 允许以为日期-时间格式化选择任何用户指定的方式启动。 但是,希望用 DateFormat
阅读全文
摘要:1.初识线程池: 根据系统自身的环境情况,有效的限制执行线程的数量,使得运行效果达到最佳。线程主要是通过控制执行的线程的数量,超出数量的线程排队等候,等待有任务执行完毕,再从队列最前面取出任务执行。 2.线程池作用: 减少创建和销毁线程的次数,每个工作线程可以多次使用 可根据系统情况调整执行的线程数
阅读全文
摘要:Collection├List│├LinkedList│├ArrayList│└Vector│ └Stack└SetMap├Hashtable├HashMap└WeakHashMap Collection接口 Collection是最基本的集合接口,一个Collection代表一组Object,即C
阅读全文
摘要:有四种启动模式:standard、singleTop、singleTask、singleInstance。 可在AndroidManifest.xml设置android:launchMode属性,如: 1.standard 默认模式,可不声明。默认都会创建一个新的实例。因此,在该模式下,可以有多个相
阅读全文
摘要:Java NIO提供了与标准IO不同的IO工作方式: Channels and Buffers(通道和缓冲区):标准的IO基于字节流和字符流进行操作的,而NIO是基于通道(Channel)和缓冲区(Buffer)进行操作,数据总是从通道读取到缓冲区中,或者从缓冲区写入到通道中。 Asynchrono
阅读全文