自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(105)
  • 资源 (3)
  • 问答 (1)
  • 收藏
  • 关注

转载 Java对象池技术的原理及其实现

单例模式是限制了一个类只能有一个实例,对象池模式则是限制一个类实例的个数。对象池类就像是一个对象管理员,它以Static列表(也就是装对象的池子)的形式存存储某个实例数受限的类的实例,每一个实例还要加一个标记,标记该实例是否被占用。当类初始化的时候,这个对象池就被初始化了,实例就被创建出来。然后,用户可以向这个类索取实例,如果池中所有的实例都已经被占用了,那么抛出异常。用户用完以后,还要把实例“还

2014-09-23 23:16:27 575

转载 Java对象池示例

对象池使用的基本思路是:将用过的对象保存起来,等下一次需要这种对象的时候,再拿出来重复使用,从而在一定程度上减少频繁创建对象所造成的开销。 并非所有对象都适合拿来池化――因为维护对象池也要造成一定开销。对生成时开销不大的对象进行池化,反而可能会出现“维护对象池的开销”大于“生成新对象的开销”,从而使性能降低的情况。但是对于生成时开销可观的对象,池化技术就是提高性能的有效策略了。下面是构建对象池的一

2014-09-22 17:32:27 517

转载 Java线程池总结

假设一个服务器完成一项任务所需时间为:T1 创建线程时间,T2 在线程中执行任务的时间,T3 销毁线程时间。当T1 + T3 远大于 T2时,采用多线程技术可以显著减少处理器单元的闲置时间,增加处理器单元的吞吐能力。    线程池就是一个线程的容器,每次只执行额定数量的线程, 线程池作用就是限制系统中执行线程的数量。采用线程池不仅调整T1,T3产生的时间段,而且它还显著减少了创建线程的数目

2014-09-22 17:23:34 491

转载 Java之排序总结

public class SortTest { public int[] createArray() { Random random = new Random(); int[] array = new int[10]; for (int i = 0; i < 10; i++) {

2014-09-22 16:52:40 458

转载 字符串如何排序

搜索引擎中用的是中文和和英文作为关键字,为了达到快速搜索的目的,常常需要排序,下面就说书如何对中英文字符串进行排序。  中文字符串按首字拼音排序import net.sourceforge.pinyin4j.PinyinHelper; public class PinyinComparator implements Comparator {

2014-09-22 16:38:11 1034

转载 Java问题抽象和递归(母羊生母羊问题为例)

问题:  一头母羊的寿命是5年,它会在第2年底和第4年底各生下一头母羊,第5年底死去,问一开始农场有1头母羊,N年后,农场会有多少只母羊?解析1)  这道题不用刻意的去注意它的逻辑,也不用伤脑筋的去挖掘它暗藏着什么公式,只要按人的正常生活和自然规律理解一下就行了。  首先虚拟一只母羊,这只母羊只有一个属性,就是年龄:class Sheep { publi

2014-09-22 16:12:30 3306

转载 Java的HashMap和HashTable

1. HashMap1)  hashmap的数据结构      Hashmap是一个数组和链表的结合体(在数据结构称“链表散列“),如下图示:        当我们往hashmap中put元素的时候,先根据key的hash值得到这个元素在数组中的位置(即下标),然后就可以把这个元素放到对应的位置中了。如果这个元素所在的位子上已经存放有其他元素了,那么在同一个位子上的

2014-09-22 15:37:26 477

转载 Java之集合类应用总结

1.集合类类图Collection├List│├LinkedList│├ArrayList│└Vector│ └Stack└Set  ├HashSet  ├TreeSet  ├LinkedHashSetMap├Hashtable├HashMap├WeakHashMap└SortedMap    └TreeMap2.分类

2014-09-22 15:27:15 571

转载 Java之ConcurrenHashMap

currenHashMap是jkd1.5引入的,其特点是:效率比Hashtable高,并发性比HashMap好。结合了两者的特点。        ConcurrentHashMap是一个线程安全的Hash Table,它的主要功能是提供了一组和HashTable功能相同但是线程安全的方法。ConcurrentHashMap可以做到读取数据不加锁,并且其内部的结构可以让其在进行写操作的时候能

2014-09-22 15:10:51 6899

转载 HashMap泛型编程

基于Java HashMap的泛型编程,常用的代码形式如下(开发中遇到的一个Case): //HashMap的创建和值添加     HashMap hashMap = new HashMap(); hashMap.put("appName", "IPAD APP"); hashMap.put("appVer", "2.0");

2014-09-22 14:48:07 542

转载 Java安全通信:Https与SSL

1. HTTPS概念        1)简介           HTTPS(全称:Hypertext Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道,简单讲是HTTP的安全版。即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。这个系统的最初研发由网景公司进行,提供了身份验证

2014-09-22 14:34:08 790

转载 Java安全通信概述

1.安全通信介绍    计算机安全通信过程中,常使用消息摘要和消息验证码来保证传输的数据未曾被第三方修改。   消息摘要是对原始数据按照一定算法进行计算得到的结果,它主要检测原始数据是否被修改过。消息摘要与加密不同,加密是对原始数据进行变换,可以从变换后的数据中获得原始数据,而消息摘要是从原始数据中获得一部分信息,它比原始数据少得多,因此消息摘要可以看作是原始数据的指纹。 

2014-09-22 14:20:51 918

转载 Java关键字static

static表示“全局”或者“静态”的意思,用来修饰成员变量和成员方法,也可以形成静态static代码块,但是Java语言中没有全局变量的概念。  被static修饰的成员变量和成员方法独立于该类的任何对象。也就是说,它不依赖类特定的实例,被类的所有实例共享。只要这个类被加载,Java虚拟机就能根据类名在运行时数据区的方法区内定找到他们。因此,static对象可以在它的任何对象创建之前访问

2014-09-22 11:39:28 447

转载 Java接口和抽象类用法总结

接口1 因为java不支持多重继承,所以有了接口,一个类只能继承一个父类,但可以实现多个接口,接口本身也可以继承多个接口。2 接口里面的成员变量默认都是public static final类型的。必须被显示的初始化。3 接口里面的方法默认都是public abstract类型的。隐式声明。4 接口没有构造方法,不能被实例化。5 接口不能实现另一个接口,但可

2014-09-22 11:19:09 577

转载 Java修饰符public,private,protected及默认的区别

Java中访问修饰符public、private、protecte、default的意义讲解:public(接口访问权限): Java语言中访问限制最宽的修饰符,一般称之为“公共的”。被其修饰的类、属性以及方法不仅可以跨类访问,而且允许跨包(package)访问。private(你无法访问): Java语言中对访问权限限制的最窄的修饰符,一般称之为“私有的”。被其修饰的类、属性以及方法只能

2014-09-22 11:13:26 667

转载 Java关键字this,super使用总结

一、this        Java关键字this只能用于方法方法体内。当一个对象创建后,Java虚拟机(JVM)就会给这个对象分配一个引用自身的指针,这个指针的名字就是this。因此,this只能在类中的非静态方法中使用,静态方法和静态的代码块中绝对不能出现this,这在“Java关键字static、final使用总结”一文中给出了明确解释。并且this只和特定的对象关联,而不和类关联,

2014-09-22 11:10:01 534

转载 Java动态绑定机制的内幕

在Java方法调用的过程中,JVM是如何知道调用的是哪个类的方法源代码? 这里面到底有什么内幕呢? 这篇文章我们就将揭露JVM方法调用的静态(static binding) 和动态绑定机制(auto binding) 。  ★ 静态绑定机制//被调用的类  package hr.test;  class Father{        public

2014-09-22 10:14:23 429

转载 Java内部类使用总结

1.定义内部类是指在一个外部类的内部再定义一个类。内部类作为外部类的一个成员,并且依附于外部类而存在的。内部类可为static,可用public、protected、private修饰。(而外部类不可以:外部类只能使用publi和default)。2.分类在一个类(外部类)中直接定义的内部类(成员内部类)、局部内部类、静态内部类、匿名内部类。3.使用

2014-09-22 10:09:17 493

转载 Java之内存分析和String对象

Java中内存分析:  栈(Stack) :存放基本类型的变量数据和对象的引用,但对象本身不存放在栈中,而是存放在堆(new 出来的对象)或者常量池中(字符串常量对象存放在常量池中)。  堆(heap):存放所有new出来的对象。  常量池(constant pool):在堆中分配出来的一块存储区域,存放储显式的String常量和基本类型常量(float、int等)。另外,可以存储

2014-09-22 09:35:58 469

转载 Java静态变量和构造函数的执行顺序

案例:package com.devin;public class MyMain { public static void main(String args[]) { Father f = new Son(); }}class Father { public Father() { System.out.println("

2014-09-21 21:26:28 438

转载 Java反射机制

1.概念:        运行时,对任意类,都能知道这个类的所有属性和方法;对任意一对象,都能够调用它的每个方法和属性;这种动态获取、动态调用的功能称为Java语言的反射机制。2.实现  Java反射相关的API在包java.lang.reflect中Member接口该接口可以获取有关类成员(域或者方法)后者构造函数的信息。Acc

2014-09-21 20:03:14 518

转载 Java之泛型编程

1.概念  泛型就是参数化类型。泛型的好处是在编译的时候检查类型安全,并且所有的强制转换都是自动和隐式的,提高代码的重用率。2.案例1)先看下面案例//不适用泛型编程Apple app0=new Apple();Apple app1=new Apple(); List li = new ArrayList();li.add(app0);

2014-09-21 01:33:03 420

转载 Android Fragments详解一:概念

Fragment是activity的界面中的一部分或一种行为。你可以把多个Fragment们组合到一个activity中来创建一个多面界面并且你可以在多个activity中重用一个Fragment。你可以把Fragment认为模块化的一段activity,它具有自己的生命周期,接收它自己的事件,并可以在activity运行时被添加或删除。Fragment不能独立存在,它必须嵌入到activit

2014-09-19 16:56:11 503

转载 Android Fragments详解二:创建Fragment

创建Fragment    要创建fragment,必须从Fragment或Fragment的派生类派生出一个类。Fragment的代码写起来有些像activity。它具有跟activity一样的回调方法,比如 onCreate(),onStart(),onPause()和onStop()。实际上,如果你想把老的程序改为使用fragment,基本上只需要把activity的回调方法的代码移到f

2014-09-19 16:53:50 493

转载 Android Fragments详解三:实现fragment的界面

为fragment添加用户界面    fragment一般作为activity的用户界面的一部分,把它自己的layout嵌入到activity的layout中。    一个    要为fragment提供layout,你必须实现onCreateView()回调方法,然后在这个方法中返回一个View对象,这个对象是fragment的layout的根。    注:如果你的f

2014-09-19 16:50:22 487

转载 Android Fragments详解四:管理fragment

要管理fragment们,需使用FragmentManager,要获取它,需在activity中调用方法getFragmentManager()。你可以用FragmentManager来做以上事情:1使用方法findFragmentById()或findFragmentByTag(),获取activity中已存在的fragment们。2使用方法popBackSt

2014-09-19 16:47:41 542

转载 Android Fragments详解五:与Activity通讯,把条目添加到动作栏

与activity通讯  尽管fragment的实现是独立于activity的,可以被用于多个activity,但是每个activity所包含的是同一个fragment的不同的实例。  Fragment可以调用getActivity()方法很容易的得到它所在的activity的对象,然后就可以查找activity中的控件们(findViewById())。例如:Viewli

2014-09-19 16:44:26 571

转载 Android Fragments详解六:处理fragmenst的生命周期

管理fragment的生命周期有些像管理activity的生命周期。Fragment可以生存在三种状态:Resumed:Fragment在一个运行中的activity中并且可见。Paused:另一个activity处于最顶层,但是fragment所在的activity并没有被完全覆盖(顶层的activity是半透明的或不占据整个屏幕)。Stoped:

2014-09-19 16:40:39 674

转载 Android Fragments详解七:fragment实例

下例中实验了上面所讲的所有内容。此例有一个activity,其含有两个fragment。一个显示莎士比亚剧的播放曲目,另一个显示选中曲目的摘要。此例还演示了如何跟据屏幕大小配置fragment。主activity创建layout。[java] view plaincopy@Override  protectedvoid onCre

2014-09-19 16:38:40 477

转载 Java基础知识之系统命令调用、序列化、JDO、匿名内部类

// String cmd = "F:\\apache-tomcat-6.0.20.exe"; // String cmd = "D:\\Program Files\\Microsoft Office\\OFFICE11\\WINWORD.EXE F:\\test.doc"; // String cmd = "cmd.exe /c start F:\\test

2014-09-19 14:31:01 717

转载 Java内部类总结

Java内部类其实在J2EE编程中使用较少,不过在窗口应用编程中特别常见,主要用来事件的处理。其实,做非GUI编程,内部类完全可以不用。 内部类的声明、访问控制等于外部类有所不同,要灵活使用内部类来编写程序,还是有相当难度的,Java发明了这种难懂的玩意儿,在其他语言中是没有的,但是在Java中,内部类也相当的重要,尤其做GUI开发时候,事件的响应处理全靠内部类了。 

2014-09-18 23:50:18 435

转载 静态内部类和非静态内部类的区别

案例:package com.devin;public class MyMain{ private static String name = "woobo"; private String num = "X001"; // 静态内部类可以用public,protected,private修饰 static class Person {

2014-09-18 23:04:28 630

转载 理解java的GC与引用

Java 中一共有 4 种类型的引用 : StrongReference、 SoftReference、 WeakReference 以及 PhantomReference , 这 4 种类型的引用与 GC 有着密切的关系,  让我们逐一来看它们的定义和使用场景 :  1. Strong Reference          StrongReference 是 Java 的默认

2014-09-18 16:45:58 464

转载 JAVA回调函数简介

案例一  下面使用java回调函数来实现一个测试函数运行时间的工具类:如果我们要测试一个类的方法的执行时间,通常我们会这样做:public   class  TestObject {      /**       * 一个用来被测试的方法,进行了一个比较耗时的循环       */       public   static   void  testMeth

2014-09-18 16:37:29 580

转载 静态方法何时使用

静态方法何时使用如果某些操作不依赖具体实例,那它就是静态的,反之如果某些操作是依赖具体实例的(例如访问一个特定会员的名称),那它就应该是实例化的。静态方法不用new对象可以直接调用1.与类相关与对象无关 2.不需要对象的“轻”方法 3.工厂方法如果某个方法是用频率较高,或者方法本身通用性较强,无需初始化类成员变量,则可以使用静态方法,那样方便,速度也快.可以

2014-09-18 16:31:37 535

转载 JAVA正则表达式过滤html标签

import java.util.regex.Matcher; import java.util.regex.Pattern; /** * * Title: HTML相关的正则表达式工具类 * * * Description: 包括过滤HTML标记,转换HTML标记,替换特定HTML标记 * * * Copyright:

2014-09-18 16:26:36 505

转载 Android游戏开发:游戏框架的搭建(1)

通常情况下,游戏开发的基本框架中,一般包括以下模块:  窗口管理(Window management):该模块负责在Android平台上创建、运行、暂停、恢复游戏界面等功能。  输入模块(Input):该模块和视窗管理模块是密切相关的,用来监测追踪用户的输入(比如触摸事件、按键事件、加速计事件等)。  文件输入输出(File I/O):此模块用来读取assets文件下图片、

2014-09-18 16:17:37 592

转载 Android游戏开发:游戏框架的搭建(2)

4.音频模块(Audio)  音频模块编程从来都是一个复杂的话题。这里不打算用到一些高级复杂的音频处理手段,主要是播放一些背景音乐。在书写代码前,让我们了解一下音频的基础知识。  采样率:定义了每秒从连续信号中提取并组成离散信号的采样个数,采样率越高音质越好,单位用赫兹(Hz)来表示,CD一般是44.1KHz。对于每个采样系统会分配一定存储位(bit数)来表达声波的声波振幅状态,称

2014-09-18 16:16:34 460

转载 Android游戏开发:游戏框架的搭建(3)

5. 图像模块(Graphics)  最后一个模块是图像操作模块,用来绘制图像到屏幕上。不过要想高性能的绘制图像,就不得不了解一些基本的图像编程知识。让我们从绘制2D图像开始,首先要了解的一个问题是:图像究竟是如何绘制到屏幕的?答案相当复杂,我们不需要知道所有的细节。光栅、像素和帧缓冲(Framebuffers)  现在的显示器都是基于光栅的,光栅是一个两维度的格子组成,也

2014-09-18 16:14:33 610

转载 Android游戏开发:游戏框架的搭建(4)

6.游戏框架  所有的基础工作做完后,我们最后来探讨一下游戏框架本身。我们看下为了运行我们的游戏,还需要什么样的工作要做:游戏被分为不同的屏幕(screen),每个屏幕执行着相同的任务:判断用户输入,根据输入渲染屏幕。一些节目或许不需要任何用户输入,但会过段时间后切换到下一屏幕.(如Splash界面)屏幕需要以某种方法被管理(如我们需要跟踪当前的屏幕并且能随时切换的下一屏幕)游戏需

2014-09-18 16:10:28 469

Android之library_PullToRefresh实现下拉刷新

博客地址:http://blog.csdn.net/anig2014/article/details/76269431

2017-07-28

Android之侧滑菜单

Android之侧滑菜单,博客地址:http://blog.csdn.net/anig2014/article/details/76020620

2017-07-24

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

TA关注的人

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