自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

bobo

从日出到日落,从周一到周天,日子就像写错的代码产生的一个死循环。

  • 博客(208)
  • 资源 (1)
  • 收藏
  • 关注

原创 2048

简单2048 游戏开发主布局一个TextView用来显示分数 一个GridLayout用来显示游戏界面,4X4的方格<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout

2016-07-11 14:29:52 789 2

原创 plsql

PL/SQL pl/sql(procedual language/sql)过程化 是oracle在标准的sql语言上的扩展 不仅允许嵌入sql语言,还可以定义变量和常量 允许使用条件语句和循环语句 提高应用程序的运行性能 模块化的设计思想 减少网络传输量 提高安全性 移植性不好 编写一个存储过程,该过程可以向某表中添加记录create table mytest (name varchar2(20),

2016-07-07 15:43:04 706

原创 oracle笔记

最近几天学习了一下oracle数据库,顺手做的笔记 一直使用的一个工具叫做pl/sql devloper,一边可以运行,一边可以做笔记,很方便 oracle安装会自动的生成sys 和 system用户 sys 超级用户 权限最高 具有sysdba角色 有create database权限 默认的密码是manager system 管理操作员 权限也很大 具有sysoper角

2016-07-07 15:39:00 1613

原创 ex41习题 41: 来自 Percal 25 号行星的哥顿人(Gothons)之小解

ex41习题 41: 来自 Percal 25 号行星的哥顿人(Gothons) Python学习过程中,在ex41这卡了一下,觉得有必要记录一下 主要还是得明白 一个函数是可以做为字典中的参数的 from sys import exit from random import randintdef death(): quips = ["You died. You kinda suck at

2016-06-25 19:02:22 2787

原创 关于JNI

JNI NDK开发环境的搭建将NDK的路径拷贝到环境变量path中 cmd中运行ndk-build可验证是否添加成功 JNI_HelloWorld 步骤1.创建Android工程 2.java代码中声明native方法 3.在工程根目录下创建jni文件夹,编写c代码,名字要对应 4.编写Android.mk文件 5.NDK编译生成动态链接库 6.java代码load动态库,调用native代码 实

2016-04-19 11:54:13 1915

原创 Android---加载图片 解决图片过大导致的内存溢出问题

图片的处理 图片的总大小 = 图片的总像素 * 每个像素的大小 BMP 无损格式位图 单色(黑、白)、16、256、24(RGB) 单色每个像素只能表示两钟颜色,只需要使用一个长度为1的二进制数字即可,一个像素占用1/8个字节 16色每个像素可以表示16种颜色,那么需要16个数字,0-15,二进制是 0000-1111长度为4的二进制数字,每个像素占用1/2个字节 256色每个像素可以表示256种

2016-03-29 21:09:56 2146

原创 Android---读取与创建JSON格式的数据

关于JSON: 数据在键值对中 数据由逗号分隔 花括号保存对象 方括号保存数组 { "languages":[ {"id":1,"ide":"Eclpse","name":"Java"}, {"id":2,"ide":"XCode","name":"Swift"}, {"id":3,"ide":"Visual Studio","name":"C#"} ],

2015-10-27 11:45:42 713

原创 设计模式(10):责任链模式

责任链模式: 定义: 是多个对象都有机会处理请求,从而避免了请求的发送者和接收者之间的耦合关系。将这些对象连成一条链,并沿着这条链传递该请求,直到有对象处理它为止。   责任链模式的重点是在“链”上,由一条链去离相似的请求在链中央决定谁来处理这个请求,并返回相应的结果。   通用类图:   Handler实现三个职责:一是定义一个请求的处理方法HandleM

2015-09-13 11:10:58 607 1

原创 设计模式(9):命令模式

命令模式: 定义: 将一个请求封装成一个对象,从而让你使用不同的请求把客户端参数化,对请求排队或者记录请求日志,可以提供命令的撤销和恢复功能。   通用类图:       Receiver接受者角色: 该角色就是干活的角色,命令传递到这里是应该被执行的 Command命令角色 需要执行的所有命令都在这里声明 Invoker调用者角色 接收到命令并执行命令。    

2015-09-12 21:11:28 478

原创 设计模式(8):中介者模式

定义: 用一个中介对象封装一系列的对象交互,中介者使各对象不需要显示地相互作用,从而使其耦合松散,而且可以独立地改变他们之间的交互。   中介者模式的类图: Mediator:抽象中介者角色 ConcreteMediator:具体中介者角色 Colleague:同事角色   每一个同事角色都知道中介者角色,而且与其他的同事角色通信的时候,一定要通过中介者角色协作。

2015-09-10 21:34:58 501

原创 设计模式(7):原型模式

原型模式的定义: 用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。 不通过new关键字来产生一个对象,而是通过对象复制来实现的模式就叫做原型模式。 原型模式通用代码: class PrototypeClass implements Cloneable { @Override protected PrototypeClass clone()

2015-09-05 20:05:51 578

原创 Android---63---Android中的动画效果

Android中有四种动画效果: AlphaAnimation:透明度动画效果 ScaleAnimation:缩放动画效果 TranslateAnimation:位移动画效果 RotateAnimation:旋转动画效果   1.透明动画效果       public class MainActivity extends Activity { private Alp

2015-08-08 10:44:47 903

原创 Android---62---DrawerLayout实现抽屉效果

如何实现android中的抽屉效果? 1.创建xml文件 其根视图是 这个xml分为两部分,一部分是主要内容的视图,一部分是抽屉的视图。 主要内容视图一般是FrameLayout,一定要是DrawerLayout的第一个视图,其高度和父视图的高度匹配。     抽屉视图一般是ListView,在写抽屉视图的时候要注意 1.宽度一般要小于320dp 2.android:layout

2015-08-05 10:12:36 1163

原创 设计模式(6):代理模式

代理模式: 定义: 为其他对象提供一种代理以控制对这个对象的访问。     Subject抽象主题角色: 抽象主题类可以是抽象类也可以是接口。   RealSubject具体主题角色: 被代理角色   Proxy代理主题角色: 代理类,负责对真实角色的应用,把所有抽象主题类定义的方法限制委托给真实主题角色实现,并且在真实角色处理完毕前后做预处理和善后处理工作。就是替具体

2015-08-02 16:16:46 551

原创 设计模式(5):建造者模式

建造者模式:   定义: 将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。   类图:       4个角色: 1.Product产品类 通常是实现了模板方法模式。 2.Builder抽象建造者 规范产品的组建,一般是由子类实现。 3.ConcreateBuilder 实现抽象类定义的所有方法,并且返回一个组件好的对象。 4.Direc

2015-08-01 10:17:02 735

原创 设计模式(4):模板方法模式

模板方法模式: 定义:   定义一个操作中的算法框架,而将一些步骤延迟到子类中。使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。   模板方法模式非常简单,仅仅使用了Java的继承机制,但它是一个应用非常广泛的模式。   在软件开发工程中,如果相同一段代码复制过两次,就需要对设计产生怀疑,架构师要明确地说明为什么相同的逻辑要出现两次或更多次。   模板方法模式的优

2015-07-29 16:18:37 635

原创 设计模式(3):抽象工厂模式

抽象工厂模式:   定义: 为创建一组相关或相互依赖的对象提供一个接口,而且无须指定他们的具体类。   抽象工厂模式是工厂方法模式的升级版本,在有多个业务品种、业务分类时,通过抽象工厂模式产生需要的对象是一种非常好的解决方法。   通过女娲造人的例子来简单了解一下这个模式。   上篇文章中的女娲只是造出了不同肤色的人种,没有定义性别,这篇文章我们就来实现定义性别这个需求。

2015-07-29 14:52:21 607

原创 设计模式(2):工厂方法模式

工厂方法模式:   定义:   定义一个用于创建对象的接口,让子类决定实例化哪一个类。工厂方法使用一个类的实例化延迟到子类。   举个栗子:我们要生产水果罐头,我们应该怎么做呢? 首先,我们需要准备好原料。其次我们需要一个罐头工厂,往工厂里运送不同的原料,出来的就是不同的罐头。   原料就是苹果啊、橘子啊等等的这些类。   interface IFruits { publ

2015-07-27 10:20:56 692

原创 设计模式(1):单例设计模式

单例设计模式:   定义: 确保一个类只有一个实例,并且自行实例化,并向整个系统提供这个实例。     饿汉式:   class Single { private static final Single s = new Single(); // 限制产生多个对象 private Single() { } // 通过该方法获得实例对象 public S

2015-07-25 15:04:17 638

原创 6大设计原则(6):开闭原则

开闭原则是Java世界中最基本的设计原则,它指导我们如何建立一个稳定的、灵活的系统。 定义: 一个软件实体,如类、模块和函数,应该对扩展开放,对修改关闭。   什么意思呢? 就是你写的这个类,或者是接口、函数,当因需求发生变化而要进行修改的时候,不应该去修改原代码,而是对原代码进行扩展。   举个书店售书的栗子:     interface IBook { // 获得书名

2015-07-23 15:54:19 650

原创 6大设计原则(5):迪米特法则

迪米特法则:LoD 也被称为最少知识原则 定义:一个对象应该对其他对象有最少的了解。   通俗的说就是一个类应该对自己需要耦合或调用的类知道的最少,类内部如何复杂跟我们没有关系 我们所要了解的只是类对外提供的public方法。   迪米特法则对类的低耦合性提出明确的要求,包含4个含义:   1.只和朋友交流 一个例子:老师让体委点一下女生的数量。     class Te

2015-07-23 10:18:41 980

原创 6大设计模式(4):接口隔离原则

接口隔离原则:   接口分两种: 实例接口:Java中的类 类接口:interface定义的接口   原则的两种定义: 1.客户端不应该依赖它不需要的接口 2.类间的依赖关系应该建立在最小的接口上   需要对接口进行细化,保持纯洁性。 接口尽量细化,同时接口中的方法尽量少,增强专门性。     接口隔离原则是对接口进行规范约束,包含4层含义: 1.接口要尽量小 这是

2015-07-22 17:22:28 672

原创 6大设计原则(3):依赖倒置原则

依赖倒置原则:DIP 定义: 高层模块不应该依赖低层模块,两者都应该依赖其抽象 抽象不应该依赖细节 细节应该依赖抽象   什么是高层模块? 大概就是main方法那一块吧 什么是低层模块?各个类、接口 抽象就是指接口或抽象类,两者不能被实例化 细节就是实现类,可以实例化对象   依赖倒置原则在Java中的表现:面向接口编程 模块间的依赖通过抽象发生,实现类之间不发生直接的依赖

2015-07-22 10:07:19 764

原创 6大设计原则(2):里氏替换原则

里氏替换原则:LSP 定义: 如果对于每一个类型为S的对象o1,都有类型为T的对象o2,使得以T定义的所有程序P在所有的对象o1都换为o2时,程序的行为没有发生变化,那么S是T的子类型。   在继承的时候,父类出现的地方子类就可以出现,子类可替代父类,因为子类中有父类的方法,然而父类却不可以替代子类,因为子类中可能有父类没有的方法。这就是所谓的向下转型是不安全的。   使用继承有很多优

2015-07-21 20:57:29 770

原创 6大设计原则(1):单一职责原则

定义:应该且仅有一个原因引起类的变更。   理解: 如果一个类承担的职责过多,就等于把这些职责耦合在一起,一个职责的变化可能会削弱或者抑制这个类完成其他职责的能力, 这种耦合会导致脆弱的设计。当变化发生时,设计会遭受到意想不到的破坏。   假如一个类A,有两个职责a,b,当职责a由于需求发生变化而需要修改时,有可能会导致职责b的功能发生故障。     解决: 将类中的职责分开,

2015-07-21 17:23:25 897

原创 XML(五)dom4j增删改查

book2.xml   JAVA XXXXXX 23333 ANDROID XXXXXX 23333   增删改查方法: public class dom4j2 { public static void main(String[] args

2015-06-30 21:41:02 1565 1

原创 XML(四)dom4j解析XML

使用dom4j需要导入jar包 jar包下载地址:http://pan.baidu.com/s/1o65jWRw 将dom4j-1.6.1.jar包导入Eclipse  book2.xml   JAVA XXXXXX 23333 ANDROID XXXXXX 23

2015-06-30 21:35:34 1108

原创 XML(三)Sax解析XML

两种解析方式:     dom4j 和 sax   解析思想:         book2.xml JAVA XXXXXX 23333 ANDROID XXXXXX 23333     利用Sax解析book2.xml文件

2015-06-30 16:58:22 1391

原创 XML(二)约束

什么是xml约束? 在xml技术里,可以编写一个文档来约束一个xml文档的写法,这称之为xml约束   为什么要使用xml约束? 使用xml进行数据交换的双方需要相互遵守的一套规则,否则双方无法进行数据交换 xml约束的作用 约束xml文档的写法 对xml进行校验   常见xml约束技术 xml DTD xml Schema   DTD的语法  1.如和在xml

2015-06-30 16:37:02 792

原创 XML(一)语法

一、xml语法 1.文档声明 2.元素 3.属性 4.注释 5.CDATA区、转义字符 6.处理指令 1.文档声明: 用来声明xml的基本属性,用来指挥解析引擎如何去解析当前xml 通常一个xml都要包含并且只能包含一个文档声明 xml的文档必须在整个xml的最前面,在文档声明之前,不能有任何内容 version是必须存在的属性,表示当前xml所遵循的版本 encodi

2015-06-30 16:35:54 775

原创 Android---61---TabHost简单使用

与TabHost结合使用的组件: TabWidget:代表选项卡的标签条 TabSpec:代表选项卡的一个Tab页面 TabHost仅仅是一个简单的容器,它提供两个方法来创建、添加选项卡 newTabSpec(String tag):创建选项卡 addTab(TabHOst.TabSpec tabSpec):添加选项卡 步骤: 1.在界面布局文件中定义TabHost组件,并为

2015-06-27 17:14:55 1195

原创 Android---60---Notification 通知栏的简单使用

Notification是显示在手机状态栏的通知  通过Notification.Builder类创建Notification对象。 Notification.Builder常用方法: setDefaults ():设置通知LED灯、音乐、振动等 setAutoCancle():设置点击通知后,状态栏自动删除通知 setContentTitle():设置通知标题 setConte

2015-06-27 09:41:24 2707

原创 Android---59---Toast的使用

原本以为Toast只有那么一个简单的功能,就是Toast.makeText(context, text, duration).show();这样就完了。 但是前几天发现一个问题就是不能在子线程中这么用,于是就看了看这个Toast的使用。发现Toast还可以自定义位置显示、带图片显示、当然还有在子线程中显示。     一个例子说明:              

2015-06-24 20:47:39 914

原创 Android---58---初学GPS定位

GPS英文是Global Positioning System 全球定位系统的简称。 Android为GPS功能支持专门提供了一个LocationManager,位置管理器。所有GPS定位相关的服务、对象都将由该对象产生。 获取LocationManager实例: LocationManager lm = (LocationManager)getSystemService (Contex

2015-06-24 18:31:37 1221

原创 Android---57---传感器

Android系统提供了对传感器的支持。 开发应用传感器很简单,只需要为指定监听器注册一个监听器即可。 步骤: 1.调用Context的getSystemService(Context.SENSOR_SERVICE)方法 获取SensorManager对象,SensorManager对象代表系统的传感器管理服务 2.调用SensorManager的getDefaultSensor(in

2015-06-23 18:56:41 840

原创 Android---56---Android应用调用Web Service/号码归属地查询

使用Android应用调用Web Service 需要工具: ksoap2-android   下载地址:http://pan.baidu.com/s/1jGL6b10 build path将ksoap2-android 添加到项目工程中 先将ksoap2-android 包导入 libs目录下,右键build path -> add to build path 点击项目工程名

2015-06-14 17:19:49 993

原创 Android---55---Web Service概述

Web Service 是什么? /*w3school*/ Web Services 是应用程序组件 Web Services 使用开放协议进行通信 Web Services 是独立的(self-contained)并可自我描述 Web Services 可通过使用UDDI来发现 Web Services 可被其他应用程序使用 XML 是 Web Services 的基础 /***

2015-06-10 13:28:16 689

原创 Android---54---WebView初学

webView 组件本身就是一个浏览器实现,它的内核基于WebKit   1.使用WebView浏览网页: 常用方法: void goBack():后退  void goForward():前进 void loadUrl (String url):加载指定的URL对应的网页 void loadUrl("file:///android_asset/XX.html"):加载本地文件 

2015-06-06 21:17:22 1012

原创 Java---31---RadnomAccessFile

RandomAccessFile:   随机访问文件,自身具备读写的方法。通过skipBytes(int x),seek(int x)来达到随机访问。   该类不算是IO体系中子类,而是直接继承自Object   但是它是IO包中成员,因为它具备读写功能。     随机访问文件的行为类似存储在文件系统中的一个大型 byte 数组。存在指向该隐含数组的光标或索引,称为文件指针;输入

2015-06-03 21:11:49 780

原创 Android---53---多线程下载

使用HttpURLConnection HttpURLConnection继承自URLConnection,也可用于向指定的网站发送GET请求 POST请求。 方法: int getResponseCode (): 获取服务器的响应代码 String getResponseMessage (): 获取服务器的响应消息 String getResponseMethod (): 获取

2015-06-03 17:03:43 769

SMSSDKDemo

SMSSDKDemo SMSSDK 短信验证

2016-03-25

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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