Java
King-zi
菩提本无树,庭前自飞花;
展开
-
Java 静态变量和实例变量的生命周期
java类的成员变量有俩种:一种是被static关键字修饰的变量,叫类变量或者静态变量;另一种是实例变量,通常有new 关键字初始化。 在语法定义上的区别:静态变量前要加static关键字,而实例变量前则不加。 在程序运行时的区别:实例变量属于某个对象的属性,必须创建了实例对象,其中的实例变量才会被分配空间,才能使用这个实例变量。静态变量不属于某个实例对象,而是属于类,所以也称为类变量转载 2012-08-20 16:38:30 · 11246 阅读 · 0 评论 -
Android 代码混淆
什么是代码混淆Java 是一种跨平台的、解释型语言,Java 源代码编译成中间”字节码”存储于 class 文件中。由于跨平台的需要,Java 字节码中包括了很多源代码信息,如变量名、方法名,并且通过这些名称来访问变量和方法,这些符号带有许多语义信息,很容易被反编译成 Java 源代码。为了防止这种现象,我们可以使用 Java 混淆器对 Java 字节码进行混淆。混淆就是对发布出去的程序进转载 2014-12-03 17:51:00 · 8236 阅读 · 2 评论 -
Android AES 文件加密解密
几番折磨终有结果,现将Demo整理转载 2014-06-26 14:03:12 · 18059 阅读 · 10 评论 -
Ubuntu下安装JDK1.6
http://www.oracle.com/technetwork/java/javasebusiness/downloads/java-archive-downloads-javase6-419409.html#jdk-6u41-oth-JPR1.在Oracle官网下载jdk-6u41-linux-x64.bin [一定要看清自己要下载的版本] 2.将该文件修改为可执行文件,转载 2014-06-04 13:48:07 · 787 阅读 · 0 评论 -
Java多线程编程基础之线程对象
两个基本概念线程的并发与并行 在单CPU系统中,系统调度在某一时刻只能让一个线程运行,虽然这种调试机制有多种形式(大多数是时间片轮巡为主),但无论如何,要通过不断切换需要运行的线程让其运行的方式就叫并发(concurrent)。而在多CPU系统中,可以让两个以上的线程同时运行,这种可以同时让两个以上线程同时运行的方式叫做并行(parallel)。 在上面包括以后的所有论述中转载 2013-09-13 14:50:41 · 1221 阅读 · 1 评论 -
WeakReference 4 - 代码实例
Java中WeakReference、WeakHashMap、SoftReference、ReferenceQueue的作用和使用场景:package test;import static junit.framework.Assert.assertFalse;import static junit.framework.Assert.assertNotNull;import st转载 2013-09-02 18:39:33 · 883 阅读 · 0 评论 -
java 单例模式
一个典型的实现:/** * 基础的单例模式,Lazy模式,非线程安全 * 优点:lazy,初次使用时实例化单例,避免资源浪费 * 缺点:1、lazy,如果实例初始化非常耗时,初始使用时,可能造成性能问题 * 2、非线程安全。多线程下可能会有多个实例被初始化。 * * @author laichendong * @since 2011-12-5 */public class转载 2013-08-30 20:02:44 · 584 阅读 · 0 评论 -
WeakReference 1 - 初步理解
java语言中为对象的引用分为了四个级别,分别为 强引用 、软引用、弱引用、虚引用。本文只针对java中的弱引用进行一些分析,如有出入还请多指正。在分析弱引用之前,先阐述一个概念:什么是对象可到达和对象不可到达状态。其实很简单,我举个例子:现在有如下两个类class A class B,在JVM上生成他们两个类的实例分别为 instance a instance b有如下表达转载 2013-09-02 17:41:16 · 785 阅读 · 0 评论 -
WeakReference 2 - 在什么场合下应用
有时我们会碰到一些不能继承的类,如final class, 或者通过Factory创建的对象,它对外只暴露一个接口,我们无法知道它的具体实现类,自然也无法继承它。假如我们要使用一个Widget类,因为某种 缘故,我们无法继承该类来加入某个功能。但是,我们必须将每个Widget对象和某个序列号关联,而Widget本身没有serial number这个属性,这时该怎么做呢?你也许已经想到,用H转载 2013-09-02 18:00:59 · 2526 阅读 · 1 评论 -
WeakReference 3 - 其他Reference
Java 2 平台引入了 java.lang.ref包,其中包括的类可以让您引用对象,而不将它们留在内存中。这些类还提供了与垃圾收集器(garbagecollector)之间有限的交互。 1.先“由强到弱”(只的是和垃圾回收器的关系)明确几个基本概念: Strongreferences 是那种你通常建立的reference,这个reference就是强可及的。这个不会被垃圾转载 2013-09-02 18:27:40 · 689 阅读 · 0 评论 -
java多线程
线程对象的几个重要的方法 start()方法。 一个线程对象生成后,如果要产生一个执行的线程,就一定要调用它的start()方法.在介绍这个方法时不得不同时说明run方法.其实线程对象的run方法完全是一个接口回调方法,它是你这个线程对象要完成的具体逻辑.简单说你要做什么就你在run中完成,而如何做,什么时候做就不需要你控制了,你只要调用start()方法,JVM就会管理这个线程对象让转载 2013-08-31 15:47:41 · 750 阅读 · 0 评论 -
Java中继承thread类与实现Runnable接口的区别
Java中线程的创建有两种方式: 1. 通过继承Thread类,重写Thread的run()方法,将线程运行的逻辑放在其中2. 通过实现Runnable接口,实例化Thread类 在实际应用中,我们经常用到多线程,如车站的售票系统,车站的各个售票口相当于各个线程。当我们做这个系统的时候可能会想到两种方式来实现,继承Thread类或实现Runnable接口,现在看一下转载 2013-08-31 15:29:56 · 1129 阅读 · 0 评论 -
Java中ArrayList 、LinkList区别
1.ArrayList是实现了基于动态数组的数据结构,LinkedList基于链表的数据结构。 2.对于随机访问get和set,ArrayList优于LinkedList,因为ArrayList可以随机定位,而LinkedList要移动指针一步一步的移动到节点处。(参考数组与链表来思考) 3.对于新增和删除操作add和remove,LinkedList比较占优势,只需要对指针转载 2013-08-28 13:42:13 · 998 阅读 · 0 评论 -
Java关键字static、final使用小结
1. static变量 按照是否静态的对类成员变量进行分类可分两种:一种是被static修饰的变量,叫静态变量或类变量;另一种是没有被static修饰的变量,叫实例变量。两者的区别是: 对于静态变量在内存中只有一个拷贝(节省内存),JVM只为静态分配一次内存,在加载类的过程中完成静态变量的内存分配,可用类名直接访问(方便),当然也可以通过对象来访问(但是这是不推荐的)。对于实转载 2012-11-07 14:18:45 · 3428 阅读 · 0 评论 -
递归删除文件夹及文件夹下所有文件
public boolean delete(File file) { boolean bFlag = false; if (file.isFile()) { bFlag = file.delete(); } else if (file.isDirectory()) { File[] childFiles = file.listFiles(); if (childFi转载 2012-11-05 17:00:40 · 645 阅读 · 0 评论 -
Android studio引入Cordova笔记
一、安装1. 下载地址:https://nodejs.org/en/2. 安装完成后,cmd执行 npm install -g cordova ,全局安装Cordova3. cordova -v 查看版本号二、创建项目如图所示1. 使用cmd命令,创建Android项目2. 新建项目: cordova create 文件名 包名 工程名3. 添加Androi原创 2017-12-16 10:52:17 · 2792 阅读 · 0 评论