自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(29)
  • 收藏
  • 关注

原创 多线程3

线程组:(ThreadGroup) 把多个线程组合到一起,可以对一批线程进行分类管理,java允许程序直接对线程组进行控制。 默认情况下线程属于main的线程组,通过getThreadGroup().getName()方法可知。main线程也是属于名为main的线程组。创建自己的线程组:ThreadGroup tg = new ThreadGroup("我的线程组");

2017-09-22 10:29:02 280

原创 多线程2

synchronized使用 同步代码块:synchronized放在对象前面,限制一段代码的执行。锁可以是任意对象,但多个线程用的必须是同一把锁。 synchronized(锁对象){ 需要同步的代码 } 同步方法:synchronized放在方法声明中,表示整个方法是同步方法。锁是this public synchron

2017-09-22 10:23:54 279

原创 多线程1

进程: 正在运行的程序,是系统进行资源分配和调用的独立单位。每一个进程都有自己的内存空间和系统资源。windows是多进程 线程: 在同一个进程内又可以执行多个任务,每一个任务可以看成一个线程,是程序的执行单元,执行路径,是程序使用CPU的最基本单位,线程依赖于进程而存在。 jvm是多线程,至少启动了垃圾回收线程和主线程 线程的特点:

2017-09-22 10:06:16 462

原创 Json、FastJson、Gson

JSON JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。 JSON数据作为目前网络中主流的数据传输格式之一,应用十分广泛。对象:JSONObject对象表示为“{}”扩起来的内容,数据结构为 {key:value,key:value,…}的键值对的结构。 例如:{name:zhangsan,age:20}数组:JSONArray数组

2017-09-18 18:02:29 499

原创 java之反射机制

就是通过class文件对象,去使用文件中的成员变量,构造方法,成员方法 JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。 要想解剖一个类,必须先要获取到该类的字节码文件对象。而解剖使用的就是Class类中的方法.所以先要获取到每一个字节

2017-09-18 17:54:24 433

原创 java设计模式之单例

java中单例模式是一种常见的设计模式,单例模式的写法有好几种,这里主要介绍三种:懒汉式单例、饿汉式单例、登记式单例单例模式有以下特点:   1、单例类只能有一个实例。   2、单例类必须自己创建自己的唯一实例。   3、单例类必须给所有其他对象提供这一实例。单例模式确保某个类只有一个实例,而且自行实例化并向整个系统提供这个实例。在计算机系统中,线程池、缓存、日志对象、对话框、打印机、显卡的

2017-09-18 17:39:01 405

原创 我的前半生

看完了这么一部剧,突然想写一篇文章来表达一下我此刻的心情。无关于技术,无关于知识,只是自己的情感。整部剧刻画了这么几个人物: 罗子君:赋闲在家的家庭主妇,出了能作能造还有点傻,被前夫抛弃之后,脱胎换骨,却又偏偏喜欢上了好朋友的男朋友;陈俊生:项目主管,老实巴交的一个人,却有有点胆小有点怂,虽然他做了负心汉,但是对于他还真心恨不起来,究其根本毕竟是罗子君太能作呀,换成其他的男人估计也会这么做吧!唐

2017-07-28 10:37:34 990

原创 Mac下javaEE环境变量配置二

上篇文章我们已经说过,jdk与eclipse的安装与配置,其实对于Mac来讲,这些都是比较容易搞定的,比较难搞定应该是数据库Mysql的安装。首先找到mysql的下载地址找到mysql的官网mysql官网 找到mysql community downloads,点击download 如果你使用的是mac os的话,它自动帮你选择的就是mac os x平台,在Mac OS上的MySQL的版本

2017-02-27 11:10:52 977

原创 Mac下javaEE环境配置一

前一段时间开始搞javaEE的开发,但是开放环境确实让我头疼了好大一阵,我使用的是mac本,有时候会出现很多莫名其妙的问题,然后上网找,也找不到完美的答案,因此我就自己遇到的坑,分享一下自己的经验吧!下载jdk首先第一步毋庸置疑肯定是下载软件了,首先是下载jdk,jdk下载地址 点击之后我们可以看到这个页面 在这里我们选择mac下的版本进行下载,下载完毕之后是一个.dmg文件,双击打开并且进行

2016-12-13 16:52:09 6314 1

原创 就业忠告

曾经有人告诉我,毕业后的第一份工作很重要,当时我还不以为然,但是后来我发现毕业后的第一份工作真的会影响你的发展,少则三年多则一生。就业or创业当你毕业后踏入社会,开始一段新的旅程,都会有一段迷茫的时期,就是我要做什么,从事什么职业?也有可能有些人说想自己创业,当然这是很好的,如果你有资金,如果你有严谨的市场调研,如果你有科学的管理方法,如果你还有不错的销售渠道,那么,你可以放手去做了,你可以去创业

2016-12-13 16:04:50 374 1

原创 android五大布局之LinearLayout

初次接触android的同学,最先接触的也就是android的布局了,因为android的代码与界面是分开的,因此想要界面显示什么,布局应该是第一步,就像一个孩子生下来你要给他穿衣服一样,因此,我们现在所写的布局就是你看到项目运行的界面。LinearLayout是android五大布局之一,android还有RelativeLayout,FrameLayout,GridLayout,Absolut

2016-03-29 17:08:38 530

原创 DbUtils的使用

其实在网上有很多关于dbutils的使用方法,但是,我发现基本上很多都是一篇博客复制粘贴,有很多方法自己想要使用的根本要不到,实在让人很无奈,所以自己经历过这些之后,就把自己所遇到的一些问题放出来吧,不喜勿喷.DbUtils是什么?说起xUtils可能大家都不陌生吧!快速开发框架必备呀,它集成了网络请求,图片加载,ViewUtils模块还有一个模块,就是今天我们要说的DbUtils模块,它很好的集

2016-03-18 16:46:07 534

原创 EventBus的总结

EventBus作为一个相当流行的开源框架,作为一个合格的开发人员,我们应该去了解,并且使用这些比较好用的开源框架,一来是为了减轻我们的工作量,二来呢?也是使我们的项目更加简洁,耦合度更低,因为我们开发新功能的时候,非常的讲究高内聚低耦合的这种模式,因此EventBus的出现,就能很好的降低代码之间的耦合度.EventBus是什么?官方定义:是一个发布 / 订阅的事件总线。 说白了,也就是类似于

2016-03-18 14:18:56 736

原创 仿微信点击回复,输入框定位到列表的底部

最近设计提了这么一个需求,就是要仿微信的朋友圈,点击回复的时候,输入框要定位到当前item的底部,为了这么一个小小的功能,把姐姐我折腾了三天,真的是用尽了办法,最后发现,其实真的不是很难,功能实现之后,我的第一反应就是要写一篇博客,希望被同样问题困扰的开发的小白能够有些帮助.需求的功能: 这就是设计想要的效果,就是点击回复的按钮的时候,对话框要定位到这个动态的底部.一开始真的很懵,根本不知道该从

2016-03-08 19:59:08 4821 2

原创 一个女程序员的年终总结

以前的时候从来未曾想过自己真的会做一个程序员,也从来没有想过做程序员会是一种怎样的体验.或许在别人的眼中,女人敲代码就像女人搬砖一样…..外面的世界很精彩,也很残酷….当实习结束离开读书的那个小城市,怀揣着对大城市的向往,以为自己就像电视的女主角一样会如此幸运,可以潇洒的生活,准时上下班,但是当自己进入公司之后,发现现实原来是这样……早上匆匆的起床,刷牙洗脸,然后匆匆的去赶公交车.累的像狗一样,追

2016-01-30 16:35:47 1372 3

原创 View的事件体系

View是Android中所有控件的基类,不管是简单的TextView或者是复杂的listView,他们共同的基类就是View.因此View是一种界面层控件的一种抽象它代表了一个控件,除了View,还有viewgroup,在Android的设计中,viewgroup也继承了View,也就意味着View本身就可以是单个控件也可以是由多个控件组成的一组控件.总之一句话,无论是viewgroup还是Tex

2016-01-30 15:43:47 346

原创 git的基本教程

项目开发的时候,往往不是一个人都能搞得定所有的代码,而是需要一个团队,大家的协作.此时,一个好的代码管理工具就显得尤为的重要.git 和svn同样都是代码管理工具,他们的区别在哪里?优缺点又在哪里呢?svn是集中式的版本控制工具 集中式的版本控制系统,版本库是集中存放在中央服务器的,所以我们需要先从中央服务器取得最新版本,开发完毕,又要把自己代码提交到服务器.集中式版本控制系统最大的毛病就是必

2015-12-04 18:39:39 243

原创 android 的Drawable

Drawable 有很多种,它们都表示一种图像的概念,但是它们又不全是图片,通过颜色我们也可以构造出不同的效果,在实际开发的过程中Drawble常被当作View的背景来用,Drawable通常通过XML来定义,当然我们也可以通过代码来创建具体的Drawable的对象,在Andriod的设计中,Drawable是一个抽象类,它是所有的Drawable的基类,每个具体的Drawable都是它的子类,比如

2015-12-03 20:28:46 456

原创 Android 中的缓存策略

Android 中的缓存策略 缓存策略在andriod开发的过程中有着广泛的使用场景,尤其是在图片加载的场景下,缓存策略变得尤为重要.通常很多时候,我们需要浏览大量的图片,如果是在PC端,这种根本不算是问题,直接加载就好了,但是在移动端,无论是andriod或者是IOS流量对于用户来说都是非常宝贵的资源,由于流量是收费的,因此在应用开发的过程中,我们应该尽可能避免过多的消耗用户的流量.如何避免

2015-12-02 21:32:21 760

原创 Bitmap的高效加载

如何高效的加载一个Bitmap,这是一个很有意义的话题,因为在我们开发的过程中,经常会遇到这样错误”OutOfMemoryError”这样的错误,很多时候都是因为加载Bitmap出现的内存溢出.如何加载一个BitmapBitmap在andriod中指的是一张图片,那么如何加载一个图片?BitmapFactory类提供了四类方法:decodeFile,decodeResource,decodeStr

2015-11-28 17:56:56 409

原创 解决音频,视频的方案

最近在研究音频,视频的解决方案,查了不少的资料,页看了不少的博客,挑挑拣拣,只觉得有这么几种方案还可以考虑:Vitamio , ijkPlay , CrossWark 以及腾讯X5.下面我们来比较一下,这几种的方案的优缺点.方案一:Vitamio(维他蜜)Vitamio名气比较大的一款多媒体的开发框架,全面支持硬件解码与GPU渲染,赢得了众多开发者的青睐. 1. Vitamio 能够流畅播放72

2015-11-23 20:23:16 1896

原创 注解(浅谈Dagger,ButterKnife,Roboguide)

花了将近一个星期的时间,把这三个框架都试着用了一下,至于是否实用,我觉得这是仁者见仁,智者见智的事,如果你的技术不够牛掰,那么我建议你用一下ButterKinife就可以了,至于其他两个,用起来确实有些麻烦,并且,可能都不知道它到底怎么运行的. 我们再来谈一下,为什么要用注解?仅仅是为了少些几行代码么?我相信没有程序员不用快捷键的,多几个findViewById应该也不费事吧?很多人说,是

2015-11-20 20:58:04 1771

原创 Android的线程与线程池

线程在andriod中是一个很重要的概念,从用途上来说主要分为主线程和子线程,其中主线程又称为UI线程,在主线程中是不能操作耗时工作的,由于andriod的特性在UI线程中操作耗时工作会导致ANR(application not Respond)即程序无法响应.除了Thread之外,在andriod中可以扮演线程角色的还有很多,比如AsyncTask和IntentService,同时HanderTh

2015-11-19 21:33:02 372

原创 Android的消息机制

Android 的消息机制主要指的是Handler的运行机制,Hander的运行需要底层的MessageQueue和Looper的支撑.MessageQueue只是一个消息的存储单元,它不能去处理消息,而Looper就填补了这个功能,Looper会无限循环的查看是否有新的消息,有的话就处理,没有就等待.Andriod的消息机制的概述Android的消息机制主要指的是Hander的运行机制以及Han

2015-11-10 20:23:52 409

转载 Monkey之Log分析

上一篇我们提到了如何使用Monkey测试,但是,测试完毕之后,我们又该如何分析呢?我们怎样才知道我们的程序是否存在问题呢?这一篇就让我们试着分析一下Monkey打印的Log 吧!什么时候会出现Log文件?一般在如下几种情况会产生log文件: 1. 程序异常退出,uncausedexception (Fatal) 2. 程序强制关闭,ForceClosed (简称FC) (

2015-11-09 12:06:49 1138

原创 Moneky之命令参数

上一篇文章我们介绍了Monkey,并且说了Monkey的环境配置,现在这篇博客,我们就研究一下Monkey到底怎么用的…首先我们要知道我们要测试的包名是什么?如何获取包名? 一般我们测试的都是第三方包,所以我们可以通过以下的命令行获取本机中的包名(前提是,你的电脑只链接了一部手机),打开CMD之后,查看连接的设备$ adb service“` 设备连接成功之后,输入以下命令行就可以获取手机上

2015-11-09 11:35:35 546

原创 Monkey之初识--环境配置

自动化测试是什么?自动化测试是指软件测试的自动化,软件测试就是在预设条件下运行系统或应用程序,评估运行结果,预先条件应包括正常条件和异常条件。自动化测试是把以人为驱动的测试行为转化为机器执行的一种过程.Android开发中最初用到的自动化测试工具那就非Monkey莫属了.使用Monkey的原因如下:Monkey是andriod自带的工具Monkey的用法比较简单(命令行比较少)压力测试的工具

2015-11-05 19:27:03 1865

原创 Activity的生命周期(2)

异常情况下Activity的生命周期的分析上次我们说到Activity的生命周期,那些都是一般情况下,会出现的,但是总有一些特殊的情况出现,那么此时Activity的生命周期又是怎么样的呢?情况一:资源相关的系统配置发生改变的时候导致Activity被杀死并且重新创建首先理解这个问题,我们应该对系统的资源加载有一定的理解,现在,我们可以举一个例子,简单的理解一下:为了做适配的时候我们在drawabl

2015-11-05 18:30:49 390

原创 Activity的生命周期--读书笔记

Activity的生命周期–读书笔记 Activity作为四大组件之首,也是我们最常用的,使用最为频繁的组件.在正常情况下,除了Dialog,Toast以及Window之外,我们能见到的界面也就是Activity. 正常情况下的Activity的生命周期①onCreate:在Activity被创建的过程中,一个先执行的方法,并且它执行且执行一次.在这个方法中,我们一般去做一些初始化的操作:

2015-11-05 15:10:07 545

空空如也

空空如也

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

TA关注的人

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