- 博客(15)
- 收藏
- 关注
转载 Java多线程—— synchronized关键字详解
一、多线程的同步1、为什么要引入同步机制在多线程环境中,可能会有两个甚至更多的线程试图同时访问一个有限的资源。必须对这种潜在资源冲突进行预防。解决方法:在线程使用一个资源时为其加锁即可。访问资源的第一个线程为其加上锁以后,其他线程便不能再使用那个资源,除非被解锁。2、程序实例用一个取钱的程序例子,来说明为什么需要引入同步。在使用同步机制前,整体程序如
2017-08-31 15:38:25 292
转载 Java多线程——常用的实现多线程的两种方式
一、继承Thread类创建线程类 Java使用Thread类代表线程,所有的线程对象都必须是Thread类或其子类的实例。每个线程的作用是完成一定的任务,实际上就是执行一段程序流即一段顺序执行的代码。Java使用线程执行体来代表这段程序流。Thread类的声明如下:public class Thread implements Runnable {}可以看
2017-08-31 15:36:59 411
转载 一篇文章,教你学会Git
一、Git工作流程以上包括一些简单而常用的命令,但是先不关心这些,先来了解下面这4个专有名词。Workspace:工作区Index / Stage:暂存区Repository:仓库区(或本地仓库)Remote:远程仓库工作区程序员进行开发改动的地方,是你当前看到的,也是最新的。平常我们开发就是拷贝远程仓库中的一个分支,基于该分支进行开发。在开发过程中就是对工作区
2017-08-31 11:30:42 438
原创 关于equals和==
(1)对于==,如果作用于基本数据类型的变量(byte,short,char,int,long,float,double,boolean ),则直接比较其存储的"值"是否相等;如果作用于引用类型的变量(String),则比较的是所指向的对象的地址(即是否指向同一个对象)。(2)equals方法是基类Object中的方法,因此对于所有的继承于Object的类都会有该方法。在Object类
2017-08-30 21:33:48 273
转载 深入理解String
总结1.String类初始化后是不可变的(immutable)String使用private final char value[]来实现字符串的存储,也就是说String对象创建之后,就不能再修改此对象中存储的字符串内容,就是因为如此,才说String类型是不可变的(immutable)。程序员不能对已有的不可变对象进行修改。我们自己也可以创建不可变对象,只要在接口中不提供修改数据
2017-08-30 21:23:35 1453
原创 MTK平台APN的配置
APN(Access Point Name)是通过手机上网必须配置的一个参数,用来决定手机通过哪种接入方式来访问网络。只要我们的手机插上sim卡之后就可以在手机的设置中查看当前sim卡内置的默认apn参数,一般的安卓智能机都可以在sim卡设置中找到“接入点名称(APN)”并可以查看和新增apn。在MTK平台APN配置路径为:device/mediatek/common/apns-conf.
2017-08-30 17:20:37 3553
转载 sqlite一些常见问题
1.假如我们已经升级到第三个版本了,我们在第二个版本增加了一个表, 然后第三个版本也增加了一个表,假如用户直接从第一个版本升级到第三个版本,这样 没经过第二个版本,就没有增加的那个表,这可怎么办?我们可以在onUpgrade()里写一个switch(),结构如下:public void onUpgrade(SQLiteDatabase db, ConnectionSource co
2017-08-29 14:20:14 733
转载 String,StringBuffer与StringBuilder的区别??
String 字符串常量StringBuffer 字符串变量(线程安全)StringBuilder 字符串变量(非线程安全) 简要的说, String 类型和 StringBuffer 类型的主要性能区别其实在于 String 是不可变的对象, 因此在每次对 String 类型进行改变的时候其实都等同于生成了一个新的 String 对象,然后将指针指向新的 String 对象,所以经常
2017-08-29 10:36:39 331
转载 基类-BaseActivity
创建BaseActivity基类的意义将BaseActivity设置为抽象类或基类,其他Activity子类继承BaseActivity,有以下好处:简化子类代码复杂度通过继承机制,在基类中封装好默认需实现的共性方法,可以降低子类编写重复代码的工作量,使子类专注于自己的特有功能,也提高了代码可读性、可维护性。强制规范子类行为通过将BaseActivity设置
2017-08-22 19:47:15 575
转载 可扩展的下拉列表—ExpandableListView
ExpandableListView是可扩展的下拉列表,它的可扩展性在于点击父item可以拉下或收起列表,适用于一些场景的使用,下面介绍的是在Activity中如何使用。下面介绍它的基本使用方法先看一下效果:一、最基本的使用新建一个布局文件expandable_layout.xml,内容很简单,一个LinearLayout里面包含了一个Expandabl
2017-08-22 11:00:29 421
转载 user,eng,userdebug版本的差异
要了解Android编译选项eng、user和userdebug的区别,需先了解下LOCAL_MODULE_TAGS这一Android.mk文件里的配置项,一般配置形式为LOCAL_MODULE_TAGS := user eng optional test这个样子。那么LOCAL_MODULE_TAGS设置为不同值有何作用呢?下面是对应不同值编译的结果: 1、us
2017-08-21 09:12:19 4127
原创 MKTLog抓取log
1.在拨号盘输入*#*#3646633#*#*或者*#*#82533284#*#*2.在工程界面进入Log and Debugging界面3.打开MKTLoger4.log报存在手机中的MKT log文件中
2017-03-16 11:01:02 730
转载 Shell脚本语法-- if/then/elif/else/fi
if [ -f ~/.bashrc ]; then . ~/.bashrc fi 其实是三条命令,if [ -f ~/.bashrc ]是第一条,then . ~/.bashrc是第二条,fi是第三条。如果两条命令写在同一行则需要用; 号隔开,一行只写一条命令就不需要写;号了,另外,then后面有换行,但这条命令没写完,Shell会自动续行,把下一行接在th
2017-03-16 09:18:17 1896
原创 Android开发过程中R文件消失,或者在类中通过R.layout无法找到我们想要的xml文件
Android 在开发中会自动生成一个 R.java 文件 ,这个文件是自动生成的,最好不要去改。不过有时候这个 java 文件会跟我们捉迷藏,在程序中 R.xx.xxx 会出现经常报错现象,或者在gen目录下无法看到R.java文件。可以由以下方法解决:1 选择eclipse/myeclipse 的 clean 这样R文件也会出现2 经过上面两种方法都不行 使用绝招 从别的
2016-09-27 11:37:19 1024
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人