自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Flying snow

开始是进步的开始

  • 博客(11)
  • 资源 (4)
  • 问答 (3)
  • 收藏
  • 关注

原创 Java/Android多线程/进程通信

(1)多线程通信(1)Android层面(1)runOnUiThreadrunOnUiThread(new Runnable() { @Override public void run() { //更新UI } });(2)View.post和View.postDelayedView默认带一个Handler属于mainLooper的,View.post相当于这

2017-12-27 17:30:17 389

原创 Java多线程编程(四)

(1)线程组和异常捕获 //构造器 ThreadGroup(String name) ThreadGroup(ThreadGroup parent, String name) (2)线程异常捕获 //当给定线程因给定的未捕获异常而终止时,调用该方法 uncaughtException(Thread t, Throwable e) Thread类包含以下方法: //指定线程

2017-12-26 17:49:24 223

原创 Java多线程编程(三)

线程间通信 (1)Object类的等待/通知 Object类提供的wait(),notify(),notifyAll(); (1)wait()导致当前线程等待,直到其他线程调用同步监视器notify()和notifyAll()来唤醒,在调用wait()前,线程必须具有该对象的锁,如果没有锁将抛出IllegalMonitorStateException异常,执行完wait后当前线程释放锁;

2017-12-26 16:14:01 189

原创 Java多线程编程(二)

(1)synchronized线程同步 synchronized是Java中的关键字,是一种同步锁。它修饰的对象有以下几种: 修饰一个代码块,被修饰的代码块称为同步语句块,作用的对象是调用这个代码块的对象; 修饰一个方法,被修饰的方法称为同步方法,作用的对象是调用这个方法的对象; . 修改一个静态的方法,作用的对象是这个类的所有对象; 修改一个类,作用的对象是这个类的所有对象; publ

2017-12-26 11:15:47 226

原创 Java多线程编程(一)

(1)多线程的创建方式 (1)继承Thread类 public class AThread extends Thread { @Override public void run() { super.run(); } } new AThread().start(); (2)实现Runnable接口 public class AThread im

2017-12-25 17:18:07 238

原创 Java多线程编程-volatile关键字

(1)背景 volatile关键字虽然从字面上理解起来比较简单,但是要用好不是一件容易的事情。由于volatile关键字是与Java的内存模型有关的,因此在讲述volatile关键之前,我们先来了解一下与内存模型相关的概念和知识,然后分析了volatile关键字的实现原理,最后给出了几个使用volatile关键字的场景。 (2)内存模式相关概念 大家都知道,计算机在执行程序时,每条指令都是在

2017-12-22 15:20:40 238

原创 Java异常

(1)定义Java异常分为三大类:1、Checked异常: 只有java语言提供了Checked异常,Java认为Checked异常都是可以被处理的异常,所以Java程序必须显示处理Checked异常。如果程序没有处理Checked异常,该程序在编译时就会发生错误无法编译。处理方式: (1)当前方法知道如何处理该异常,则用try…catch块来处理该异常; (2)当前方法不知道如何处理,则在定

2017-12-15 17:42:03 215

原创 Java枚举

(1)枚举类定义和API public enum EnumTest{ SPRING,SUMMER,FALL,WINTER; } 枚举类可实现一个或多个接口,使用enum定义的枚举类默认继承java.lang.Enum,枚举类不能继承其他父类,Enum类继承自Object类; 使用enum定义非抽象的枚举类默认会使用final修饰,因此枚举类不能派生子类; 枚举类的构造器只能使用pri

2017-12-15 15:53:22 225

原创 Java对象垃圾回收

(1)Java垃圾回收状态 垃圾回收只负责回收堆内存中的对象,不回收任何物理资源(数据库链接,IO流); 程序无法精准控制垃圾回收的运行,垃圾回收会在合适的时机运行; 垃圾回收在回收任何对象之前,会调用该对象的finalize方法,该方法可能会使对象重新复活,从而取消垃圾回收; 当一个对象在堆内存中时,存在三种状态: 可达状态:对象创建后,有一个以上的变量引用它; 可恢复状态:某个对象不再有任何引用

2017-12-15 15:52:43 995

原创 Java深入泛型

泛型:允许在定义类,接口,方法时使用类型形参,这个类型形参将在声明变量,创建对象,调用方法时动态指定(类型实参),Java5为集合框架的全部类和接口增加了泛型支持,可以在声明集合变量,创建集合对象时传入类型实参,就是我们经常看到的List和ArrayList。 (1)定义泛型接口,类 public interface ListE> extends CollectionE> { Ite

2017-12-08 15:54:41 381

原创 Android ANR产生的原因和分析

ANR的全称是application not responding,意思就是程序未响应,类似于我们在windows上见到的程序未响应。ANR发生会使用户觉得我们的程序不友好,那么什么情况会导致ANR的发生呢?首先ANR的发生是有条件限制的,分为以下三点:1.只有主线程才会产生ANR,主线程就是UI线程;2.必须发生某些输入事件或特定操作,比如按键或触屏等输入事件,在BroadcastReceiver

2017-12-07 17:20:07 805

Eclipse 反编译插件

一、下载: 下载插件: jadclips插件网站: http://jadclipse.sourceforge.net/ 下载Jad反编译工具: http://www.kpdus.com/jad.html#download,在该页中找到适合自己操作系统平台的jad下载。下载后解压 二、安装: 三、设置参数: 启动eclipse,打开:Window->Preferences->Java->JadClipse. 1、Path to decompiler,这里设置反编译工具jad的全路径名,比如:%JAVA_HOME%\bin\jad.exe. 2、Directory for temporary files,这里设置临时文件路径。 四、安装完成后,eclipse自动将JadClipse Class File Viewer设置成class文件的缺省打开方式。如果没有默认,可以在Eclipse的Windows——> Perference——>General->Editors->File Associations中修改“*.class”默认关联的编辑器为“JadClipse Class File Viewer”。设置完成后,双击*.class文件,eclipse将自动反编译。 注: 对于存在源代码的类,它不会强行反编译,也就是说它还是会用eclipse自带的Class File Viewer查看class文件。

2013-03-23

java核心技术

本书介绍了java的核心技术,可以让你真正的成为程序员的书籍,本书适合有一定的java基础的学习者使用,那样看会更方便

2013-03-16

java程序员,上班那点事儿

这是一款程序员必看的一部书籍,书中介绍了程序员应该怎么面试,怎样在以后的工作中排除困难等,本书是完整版,值得大家一看

2013-03-16

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

TA关注的人

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