自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

积累知识,献给岁月

好的程序员是大量的优质代码喂出来的。

  • 博客(32)
  • 资源 (4)
  • 收藏
  • 关注

原创 【无标题】

2、输出当前电脑安装的全部版本。

2024-04-07 14:53:33 242

原创 2021-07-22

内部类实例化报错is not an enclosing class先上代码:public class Test{ public static void main(String[] args) { //错误写法 Outer.Inner innerError = new Outer.Inner(); //正确写法 Outer outer = new Outer(); Outer.Inner innerFirst =

2021-07-26 11:00:13 270 1

原创 抽象工厂

构建过程和调用层相分离,适用于产品族比较多。 代码示例:public interface IFactory{ IProduct create();}public class Factory1 implements IFactory{ @Override public IProduct create() { return new Product1(

2018-02-03 18:14:49 306

原创 创建型模式——工厂方法模式

工厂方法模式(Factory Method),又称为虚拟构造子模式(Virtual Constructor)或者多态性工厂模式(Polymorphic Factory),定义一个用于创建产品对象的工厂接口,将实际创建工作推迟到子类中,允许在不修改具体工厂角色的情况下引进新的产品。 类图: 示例代码:public interface Creator{ public Prod

2018-01-30 00:37:55 297

原创 创建型模式——简单工厂模式

简单工厂模式(Simple Factory),也可称做静态工厂方法模式(Static Factory Method),由一个工厂对象根据传入的参量决定创建出的哪一种产品类的实例,免除客户端直接创建产品对象的责任,实现对责任的分割。 类图: 示例代码:public interface Product{}public class ConcreteProduct{ pub

2018-01-30 00:04:51 286

原创 UML基础

本人主要使用Java编程语言,它是一门面向对象的编程语言。做开发时,动手写之前,需要先做一番面向对象设计,这时记录设计结果就用到UML(统一建模语言),这里面有一些概念是画图所必须了解的。一、类图表示类之间的关系有好几种:1、泛化,一种继承关系,表示一般与特殊的关系,指定子类如何特化父类的所有特征和行为。(带空心三角形的实线,箭头指向父类) 2、实现,一种类与接口的关系,表示类

2018-01-27 23:12:46 230

原创 2017年-2018年,生活方式的思考

2017年,这一年,我成为了一位父亲;这一年,我成为了一个游戏迷;这一年,我成为了一个堕落者;这一年,我成为了一个安卓荒废者;这一年,我成为了一个不合格的合格后台工程师;这一年发生了太多事,这一年,提供给我的就是人生,工作怎么来过的思考。 我的女儿,乐乐,大名杨怡,来到了这个世界,我又激动,又慌张。我穷我所及,为她做事,努力学习做一位父亲,来适应这个严肃的角色。也有了一些领悟,自己的出生,对于父

2018-01-27 22:26:53 419

原创 Universal Image Loader 学习笔记-图片加载

UIL在使用的时候都是一行代码搞定,那么,究竟其中做了多少事情么,还是要从源码中一探究竟。

2016-12-29 11:09:15 369

原创 Universal Image Loader 学习笔记-设计模式

单例模式单例模式应该说是我们在使用UIL时,第一个用到的设计模式。

2016-12-26 12:18:57 481

原创 Universal Image Loader 学习笔记-图片显示选项

UIL除了唯一一次的全局配置之外,在每次提交一个图片显示任务时,都可以定制等多的选项。当然,如果不进行定制的话,将采用全局配置中的默认显示选项。

2016-12-19 18:03:56 399

原创 Universal Image Loader 学习笔记-框架配置

UIL框架是强大的、灵活的,很重要的一点在于各种配置。概述ImageLoader的配置(ImageLoaderConfiguration)是应用程序的全局性的,你只能设置一次。所以,一般在自定义的Application类的onCreate()中进行配置,当然也可以在一个Activity中配置(只要在使用之前配置并且只配置一次)。配置建造器中的所有的选项都是可选择的,大家可以只使用自己想要定制的选项。

2016-12-15 16:57:44 474 1

原创 网络请求框架Retrofit的基本使用

公司的产品使用的网络请求框架是AsyncHttpClient,考虑到Google在Android6.0版本时,将HttpClient的请求框架移除了,所以预研一下新的框架,现在网络请求方面性能最好的应该是OKHttp,然后呢,今天介绍的Retrofit是对OKHttp进行了封装,使用起来更方便了。

2016-12-15 10:59:07 525

原创 Universal Image Loader 学习笔记-基本使用

虽然,UIL框架从2015年11月27号就已经不在更新了,但是作为学习安卓以来的一款重要的框架,并且现在的项目还在使用它,所以还是很有必要专一学习学习,并且其功能真的很强大,对于提升架构能力大有益处。

2016-12-12 15:56:23 485 1

原创 解决Android应用启动时的黑白屏问题

公司做的一款APP,在启动的时候,会先白屏一会再显示启动页的内容,给人的体验很不好。所以,决定查找一下白屏的原因优化一下视觉体验。在度娘上搜索这个问题,确实很多同行都遇到了,并且都根据自己的理解给出了自己的解决之道。我经过实验之后,也确实解决了问题,在这里就总结一下,免得过几天就不认识了。

2016-11-28 12:05:25 1378

原创 日常用的快捷键

一、WIn101、全角半角切换:Shift + 空格二、Android Studio

2016-11-25 16:40:01 406

原创 判断Java文件输入流FileInputStream中是否有内容

获取的字符串是从一个文件中读取出来的,得到的是一个FileInputStream对象,所以只要判断这个FileInputStream对象即可。而FileInputStream中存储可读取内容大小的

2016-10-08 10:57:37 19804 1

原创 Shell编程学习笔记(1)-搭建Linux环境

由于笔记本上安装的是Win10,所以还需要使用虚拟机在电脑上装个Linux系列的操作系统,我使用的是Ubuntu-16.04。 虚拟机:VirtualBox-5.1.6-110634-Win 操作系统:ubuntu-16.04-desktop-amd64 注:ubuntu使用的镜像,提供一个镜像网址大全1、安装VirtualBox 安装下载下来的exe文件就行了,和平时装软件一样。

2016-10-02 15:33:55 571

原创 AndroidStudio中源代码查看

在Android开发中,我们有时渴望知道一些系统API的详细信息,以便更好的理解其实现原理、使用方法、注意事项等等,这时就用到今天说的这些小技巧了。 本人使用的IDE环境是Android Studio,版本2.1.2,相信其他版本与此配置一样。 以Context为例,按着Ctrl键,用鼠标左键点击Context,如果项目配置好了源代码查看环境的话,IDE会呈现Context.java的源文件。

2016-06-24 10:57:36 18282 3

原创 AndroidStudio构建工具Gradle的帮助文档

在开始使用Android Studio开发应用之后,知道其是采用Gradle构建项目的,但是对里面和gradle相关的文件和文件中的代码一直不理解,更不来知晓其出处,有幸读到一篇文章 从编程的角度理解gradle脚本﹘﹘Android Studio脚本构建和编程[魅族Degao] 才知道了个大概,在此记下文中的gradle帮助文档的地址,免得以后不好找。

2016-06-21 11:10:41 765 1

原创 Android打包代码混淆后的Mapping文件路径

大家在发布一个新版本时,如果采用了代码混淆,所生成的apk在反编译之后,会看到进行了混淆的代码中的类名、方法名等会变成单个英文字母,这样子可读性直线下降,起到代码保护的目的。不过,凡事有利也有弊,我们通常会在应用中集成一些应用监测的第三方工具,常见的友盟啦、听云啦,都可以帮助我们帮助我们上传应用崩溃日志啦,活跃用户啦等等。

2016-06-17 15:40:24 16379 4

原创 Espresso环境搭建及其基本使用

大家开发Java程序的时候可以使用JUnit进行程序的测试,现在有一款可以测试Android UI的框架,叫Espresso,在这,简单记录下环境搭建及其基本使用。

2016-06-15 16:39:04 2763

原创 Android 自定义控件(二)

组合控件的方式实现自定义控件,此处以实现常用的头部视图为例。

2016-05-27 16:06:13 431

原创 Android 自定义控件(一)

对于一些项目中通用的视图,可以采取组合控件的方式定义成一个单独的控件,简化开发。常见的如头部视图,通用录音视图等。今天,记录一下此种方式。第一步,设计新控件的独有属性。在values文件夹中创建attrs.xml文件,添加属性。 第二部,创

2016-05-23 14:56:25 430

原创 使用dex2jar反编译APK中的classes.dex

先说下写这篇博文的初衷。 为了应用的代码不直接被他人窥视,我们一般都会在代码的时候进行代码混淆,这样子可以将原来的包名、类名、参数名等给替换成无意义的字母。而我们怎么知道代码混淆起效果了呢,自己把应用的安装包反编译一下就可以了。 我使用的反编译工具是dex2jar,反编译之后,项目中的classes.dex会相应的生成classes-dex2jar.jar文件(可使用jd-gui查看,工具下载地

2016-03-21 10:26:20 12282

原创 Activity的生命周期

越是细节的知识点,突然之间搞得糊里糊涂。Activity的生命周期就是老生常谈的基本知识点,但是,还是偶尔会脑子短路。写个博客做个日志,供后期查阅。一个Activity的生命周期包括: onCreate:完成设置视图和一些初始化操作。 onStart:Activity正在被启动,已经可见,但是无法和用户交互。 onResume:Activity进入可见并且显示到前台。 onPause:Act

2016-03-16 21:56:39 469

原创 Android-常见的通过意图调用系统应用

1、获取图片有时,我们需要从相册中获取一张相片,这个时候可以直接调用手机自带的相片选取器。获取图片代码Intent intent = new Intent();intent.setAction(Intent.ACTION_PICK);intent.setType("image/*");startActivityForResult(intent,REQUEST_CODE_SE

2016-03-04 15:09:07 808

原创 Android登录页面的最佳实践

在应用开发的过程中,有次UI设计的页面让我为难了,要求页面如下: 左侧是标题,右侧是输入框,要求标题左对齐,输入框左右对齐,同时表单中标题字数长度不等。当时分析了常用的线性布局和相对布局之后都没有漂亮的解决办法。由于项目的时间要求,我只能让每一行都用线性布局,标题设定最大长度,这样子的缺点就是不同的手机上显示不一样。

2016-02-28 18:12:43 734

原创 Android项目里,strings文件中字符串的格式化用法

strings.xml文件中,字符串占位符用法

2016-01-08 22:37:28 650

转载 Android 深入理解Android中的自定义属性(转)

1、引言对于自定义属性,大家肯定都不陌生,遵循以下几步,就可以实现:自定义一个CustomView(extends View )类编写values/attrs.xml,在其中编写styleable和item等标签元素在布局文件中CustomView使用自定义的属性(注意namespace)在CustomView的构造方法中通过TypedArray获取ps:如果你对上述几

2015-04-26 21:10:43 466

转载 Android View的加载过程

大家都知道Android中加载view是从Activity的onCreate方法调用setContentView开始的,那么View的具体加载过程又是怎么的呢?这一节我们做一下分析。首先追踪一下代码:Activity中:public void setContentView(int layoutResID) {    getWindow().setCo

2015-04-26 13:50:41 504

原创 使用XML取消标题时的背景色为什么是黑色

刚才一个QQ群中,一位吧友提了一个问题,

2014-08-23 22:40:35 760

原创 Android中数据存储之Shared Preference

数据持久化之Shared Preference

2014-08-02 08:31:50 630

Android软件安全与逆向分析(完整版)

帮助大家分析未知源代码的经典书籍,更可以有此书了解到dalvik的运行机制!

2014-07-01

《中文第二版-编程珠玑》

还有精简高效的代码更能让我们兴奋的吗?那就开始修炼之旅吧!

2012-10-08

数学之美-吴军

很喜欢,谢谢吴军博士。这个给了我重新学习数学的动力。

2012-09-15

Java数组版ATM

使用数组构建ATM,采用的是面向对象的设计方法。

2012-08-16

空空如也

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

TA关注的人

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