自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(83)
  • 资源 (11)
  • 收藏
  • 关注

原创 java类加载过程

类加载过程:java中对象的创建本文介绍的对象创建过程仅限于普通Java对象,不包括数组和Class对象。 1. 虚拟机遇到一条new指令时,首先去检查该指令的参数能否在常量池中定位到一个类的符号引用,并且检查这个符号引用代表的类是否已被加载、解析和初始化过。如果没有,那必须先执行相应的类加载过程。 2. 在类加载检查通过后,接下来虚拟机将为新生对象分配内存。对象所需内存的大小在类加载完成后便可

2017-07-06 23:55:05 437

转载 java运行时数据区域

Java虚拟机所管理的内存将会包括以下几个运行时数据区域程序计数器(Program Counter Register)它是一块较小的内存空间,它的作用可以看做是当先线程所执行的字节码的信号指示器。每一条JVM线程都有自己的PC寄存器,各条线程之间互不影响,独立存储,这类内存区域被称为“线程私有”内存在任意时刻,一条JVM线程只会执行一个方法的代码。该方法称为该线程的当前方法(Current Meth

2017-07-05 00:20:54 505

原创 gradle基础

安装1、确保已经安装jdk,用java -version判断一下 2、从Gradle官网下载并进行解压 - 配置环境变量,GRADLE_HOME - 添加到path,%GRADLE_HOME%\bin; - 验证是否安装成功,gradle -v 官网下载Binary-only和Complete (with docs and sources)都可以。构建脚本概要Gradle构建中的两个基本概

2017-06-20 01:28:02 569

原创 groovy基础

与java比较 - Groovy完全兼容java的语法 - 分号是可选的 - 类、方法默认是public的 - 编译器给属性自动添加getter/setter方法 - 属性可以直接用点号获取 - 最后一个表达式的值会被作为返回值 - ==等同于equals(),不会有NullPointerExceptionspublic class Person{//类、方法默认是public的

2017-06-09 14:14:49 498

原创 Spring Boot数据库基础操作

使用Spring-Data-JPA组件操作数据库。 JPA(Java Persistence API)定义了一系列对象持久化的标准,目前实现这一规范的产品有Hibernate、TopLink等。 Spring-Data-JPA是Spring对Hibernate的整合。添加依赖 <dependency> <groupId>org.springframework

2017-06-08 18:27:29 721

原创 Spring Boot 的控制器--Controller

Controller基础@RestController处理http请求,其实相当于@Controller和@ResponseBody组合。 @RequestMapping配置url映射使用模板templates1、加maven依赖: <dependency> <groupId>org.springframework.boot</groupId>

2017-06-08 14:45:17 2504

原创 SpringBoot入门

Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。Spring Boot化繁为简,简化配置,微服务的入门级微框架,spring的微服务是springcloud。Spring Boot特点: 1. 创建独立的Spring应用程序 2. 嵌入的Tomcat

2017-06-07 00:49:55 426

原创 css基础

CSS 概述CSS 指层叠样式表 (Cascading Style Sheets) 样式定义如何显示 HTML 元素 样式通常存储在样式表中 把样式添加到 HTML 4.0 中,是为了解决内容与表现分离的问题 外部样式表可以极大提高工作效率 外部样式表通常存储在 CSS 文件中 多个样式定义可层叠为一基础基础语法<head><style type="text/css"> 选择器

2017-06-06 12:30:14 452

原创 html基础

一、html什么是 HTML? HTML 是用来描述网页的一种语言。 HTML 指的是超文本标记语言 (Hyper Text Markup Language) HTML 不是一种编程语言,而是一种标记语言 (markup language) 标记语言是一套标记标签 (markup tag) HTML 使用标记标签来描述网页加载的顺序,浏览器在获取了一个html文档时,会 自上而下

2017-06-06 09:42:33 359

原创 android 深入activity

相关类简介一、ActivityManagerService 简称AMS,是Android内核的核心功能之一,在系统启动SystemServer时启动此服务。 AMS提供的功能主要包括以下几个方面: 1。对于Android四大组件(activity service broadcast content provider)的管理,包括启动,生命周期管理等 2.进程OOM adj以级LR

2017-05-22 00:35:47 318

转载 从ViewRootImpl类分析View绘制的流程

【转载请注明出处:从ViewRootImpl类分析View绘制的流程 CSDN 废墟的树】从上两篇博客 《从setContentView方法分析Android加载布局流程》 和 《从LayoutInflater分析XML布局解析成View的树形结构的过程》 中我们了解到Activity视图UI是怎么添加到Activity的根布局DecorView上面的。我们知道Activity中的

2017-05-22 00:02:52 356

原创 android解决quick documentation(Ctrl+Q)慢的问题

看图 很久才出来。解决办法第一步:去C:\Users\Administrator.AndroidStudio2.3\config\options下找到jdk.table.xml并打开。 第二步: 将javadocpath修改为你自己下载sdk文档路径,如我的<javadocPath> <root type="composite"> <root typ

2017-05-18 21:55:51 725

原创 android Log.isLoggable使用

android 动态控制logcat日志开关,通过Log.isLoggable(TAG,level)方法动态控制。 此API可以实现不更换APK,在出问题的手机上就直接能抓到有效log,能提升不少工作效率。 该方法说明:/** * Checks to see whether or not a log for the specified tag is loggable at the speci

2017-05-17 23:46:11 1361

原创 android service详解

基础用法对于service而言,一般由线程来执行其内的工作。1、startService方式必需重写onStartCommand方法。请注意,onStartCommand() 方法必须返回整型数。整型数是一个值,用于描述系统应该如何在服务终止的情况下继续运行服务(如上所述,IntentService 的默认实现将为您处理这种情况,不过您可以对其进行修改)。从 onStartCommand() 返

2017-05-17 22:57:55 440

转载 java之策略模式

转载自java之策略模式在阎宏博士的《JAVA与模式》一书中开头是这样描述策略(Strategy)模式的:  策略模式属于对象的行为模式。其用意是针对一组算法,将每一个算法封装到具有共同接口的独立的类中,从而使得它们可以相互替换。策略模式使得算法可以在不影响到客户端的情况下发生变化。策略模式的结构  策略模式是对算法的包装,是把使用算法的责任和算

2017-04-18 22:13:26 212

转载 java之桥接模式

转载自java之桥接模式桥接模式是一种结构型模式,它主要应对的是:由于实际的需要,某个类具有两个或两个以上的维度变化,如果只是用继承将无法实现这种需要,或者使得设计变得相当臃肿。      桥接模式的做法是把变化部分抽象出来,使变化部分与主类分离开来,从而将多个维度的变化彻底分离。最后,提供一个管理类来组合不同维度上的变化,通过这种组合来满足业务的需要。举个例子

2017-04-18 22:10:58 314

转载 java之组合模式

转载自java之组合模式定义(GoF《设计模式》):     将对象组合成树形结构以表示“部分整体”的层次结构。组合模式使得用户对单个对象和使用具有一致性。及角色:  1.Component 是组合中的对象声明接口,在适当的情况下,实现所有类共有接口的默认行为。声明一个接口用于访问和管理Component子部件。  2.Leaf 在组合中表示叶子结点对象,叶

2017-04-18 22:07:59 211

转载 java之工厂模式

转载自java中的工厂模式一、工厂模式介绍工厂模式专门负责将大量有共同接口的类实例化。工厂模式可以动态决定将哪一个类实例化,不必事先知道每次要实例化哪一个类。工厂模式的几种形态:(1)简单工厂(Simple Factory)模式,又称静态工厂方法模式(Static Factory Method Pattern)。(2)工厂方法(Factory Method)

2017-04-18 17:50:19 239

原创 ubuntu16.0.2LTS下编译OpenJDK7

前言原本以为搭建一个编译环境很简单,理想很丰满,现实很骨感,前前后后花了一周时间,不水了,水多了都是泪。Win10下安装ubuntu虚拟机按照[VMware Ubuntu安装详细过程](http://blog.csdn.net/u013142781/article/details/50529030)一步一步操作即可。下载jdk本次编译选择的是OpenJDK7u,官方源码包:https://jdk

2017-03-24 00:49:51 2247

原创 从NestedScrollView解读NestedScroll

前言CoordinatorLayout已出来好久了,该知识点是一个android工程师需必会的,其实研读源码还能够开拓思维,大家有时间都看看源码。以最新v4包25.1.1版本忠的NestedScrollView为例说明。NestedScroll包含两部分:NestedScrollingParent和NestedScrollingChild。源码解读习惯性的,我们从响应触摸事件的子视图说起。对于子视

2017-03-17 00:03:48 1615

原创 android MotionEvent.ACTION_CANCEL情景分析

今天在温习ViewGroup的dispatchTouchEvent理解这篇文章的时候,偶然间发现了MotionEvent.ACTION_CANCEL使用的情景,温故而知新,说的就是这了。 还是直入主题吧。 情景:ScrollView中有一个Button。手指触下Button区域进行滑动的过程中,Button会收到ScrollView传给Button的MotionEvent.ACTION_CANC

2016-12-02 16:01:47 6121

原创 https浅析

单向验证:生成证书:keytool -genkey -alias zhy_server -keyalg RSA -keystore zhy_server.jks -validity 3600 -storepass 123456 -ext san=ip:192.168.1.113(你本地的ip地址)tomcat配置:<Connector SSLEnabled="true" acceptCount="1

2016-10-19 14:14:10 1278

原创 java基础之反射

java数据类型都有一个相应的Class对应。对象是表示或封装一些数据。一个类被加载后,JVM会创建一个对应该类的Class对象,类的整个结构信息会放到对应的Class对象中。这个Class对象就像一面镜子一样,通过这面镜子我可以看到对应类的全部信息。 String path = "com.test.user"; Class clazz = Class

2016-10-18 16:59:19 238

转载 Java注解Annotation基础

本文转载自java注解基础从JDK5开始,Java增加了Annotation(注解),Annotation是代码里的特殊标记,这些标记可以在编译、类加载、运行时被读取,并执行相应的处理。通过使用Annotation,开发人员可以在不改变原有逻辑的情况下,在源文件中嵌入一些补充的信息。代码分析工具、开发工具和部署工具可以通过这些补充信息进行验证、处理或者进行部署。Annotation

2016-10-11 22:32:37 653

原创 ViewGroup的dispatchTouchEvent理解

ViewGroup的dispatchTouchEvent理解以下图例子说明,OFramelayout在最外层 图1.1 view的层级关系结论1: dispatchTouchEvent()返回false,后续的ACTION_MOVE、ACTION_UP等收不到。注:dispatchTouchEvent()中判断手势是 ACTION_DOWN时,返回false,则后续的触摸事件收不到,如果返

2016-09-06 00:20:06 5715

转载 java 装饰器模式

本文转载自《JAVA与模式》之装饰模式在阎宏博士的《JAVA与模式》一书中开头是这样描述装饰(Decorator)模式的:  装饰模式又名包装(Wrapper)模式。装饰模式以对客户端透明的方式扩展对象的功能,是继承关系的一个替代方案。装饰模式的结构  装饰模式以对客户透明的方式动态地给一个对象附加上更多的责任。换言之,客户端并不会觉得对象在装饰前和装饰

2016-05-17 10:57:37 436

原创 android ScrollView触摸点源码解读

触摸事件相关的方法为OnTouchEvent(MotionEvent e),所以请先了解下MotionEvent,这里有篇讲的不错,[Android MotionEvent详解](http://ztelur.github.io/2016/03/16/Android-MotionEvent%E8%AF%A6%E8%A7%A3/)。再习读下..\sdk\samples\android-23\input

2016-05-12 23:12:06 527

转载 java单例模式

转载自如何正确地写出单例模式单例模式算是设计模式中最容易理解,也是最容易手写代码的模式了吧。但是其中的坑却不少,所以也常作为面试题来考。本文主要对几种单例写法的整理,并分析其优缺点。很多都是一些老生常谈的问题,但如果你不知道如何创建一个线程安全的单例,不知道什么是双检锁,那这篇文章可能会帮助到你。懒汉式,线程不安全当被问到要实现一个单例模式时,很多人的第一反应是写出如下

2016-05-05 23:33:00 296

转载 java适配器模式

转载自《java与模式》之适配器模式在阎宏博士的《JAVA与模式》一书中开头是这样描述适配器(Adapter)模式的:  适配器模式把一个类的接口变换成客户端所期待的另一种接口,从而使原本因接口不匹配而无法在一起工作的两个类能够在一起工作。适配器模式的用途  用电器做例子,笔记本电脑的插头一般都是三相的,即除了阳极、阴极外,还有一个地极。而有些地

2016-05-05 17:51:19 245

转载 java观察者模式

转载自《java与模式》之观察者模式《JAVA与模式》之观察者模式在阎宏博士的《JAVA与模式》一书中开头是这样描述观察者(Observer)模式的:  观察者模式是对象的行为模式,又叫发布-订阅(Publish/Subscribe)模式、模型-视图(Model/View)模式、源-监听器(Source/Listener)模式或从属者(Dependents)模式。

2016-04-28 23:03:02 369

原创 android ImageView 解读

ImageView是android中控件使用频繁的控件之一。解读源码,有助于解答一些常见的问题,如TextView设置的左边图时drawable为什么要setBound。我们都知道自定义view一般需实现两个方法:onMeasure()和onDraw()方法。所以我们从这两个方面解读。1. onMeasure()首先上源码:@Override protected void onMeas

2016-04-15 23:23:52 906

转载 android 数据库更新

Andoird的SQLiteOpenHelper类中有一个onUpgrade方法。帮助文档中只是说当数据库升级时该方法被触发。经过实践,解决了我一连串的疑问:1. 帮助文档里说的“数据库升级”是指什么?你开发了一个程序,当前是1.0版本。该程序用到了数据库。到1.1版本时,你在数据库的某个表中增加了一个字段。那么软件1.0版本用的数据库在软件1.1版本就要被升级了。

2016-02-21 21:07:08 481

原创 android筛选菜单实现

前言由于android M的popupwindow与之前版本不一致,笔者找不到能够代码监听物理返回键的方式,故另寻方式实现筛选菜单。5.0及之前的版本可用popupwindow实现,详情请参考popupwindow用法。本篇采用Dialog实现。实现步骤1、设置主题一般设置如下 true #00000000 @and

2016-02-21 00:21:32 4866

原创 java volatile详解

本篇来自java并发编程实战关于volatile的总结。要说volatile,先得明白内存可见性。那我们就从内存可见性说起。一、内存可见性可见性是一种复杂的属性,因为可见性中的错误总是会违背我们的直觉。在单线程环境中,如果向某个变量先写入值,然后在没有其他写入操作的情况下读取这个变量,那么总能得到相同的值。这看起来很自然。然而,当读操作和写操作在不同的线程中执行时,情况却并非如此,这听

2015-12-27 23:25:51 3623

原创 android notification总结

以前都是直接构造一个通知显示,现在新的api通过builder构建一个通知,有必要学习下。一、基本用法基本步骤还是跟以前一样:1、新建PendingIntent2、NotificationCompat.Builder调用setContentIntent(PendingIntent)3、设置图标、文本、标题4、NotificationManager调用notify()方法

2015-12-23 00:04:55 1344

原创 android之文件存储路径

存储在内部还是外部所有的Android设备均有两个文件存储区域:"internal" 与 "external" 。 这两个名称来自于早先的Android系统,当时大多设备都内置了不可变的内存(internal storage)及一个类似于SD card(external storage)这样的可卸载的存储部件。之后有一些设备将"internal" 与 "external" 都做成了不可卸载的内

2015-12-16 20:35:51 1041

原创 android popupwindow用法

一、基本用法一般做法,新建类继承popupwindow。例 /** * popupwindow基本用法 * Created by Administrator on 2015/11/25. */public class DemoBasePop extends PopupWindow { private LinearLayout linear_layout; privat

2015-12-14 23:14:29 716

原创 android 适配之wrap_content

一般而言,dp用在控件宽高上,sp用在文字显示上。开发中设计稿上会标上控件的宽高,文字的大小。而设置不同系统字体大小会出现适配问题,如文字显示不全。当设置系统字体大小为小,效果图为:当设置系统字体大小为大,效果图为:当系统字体大小为大,文字显示不全。解决的方式使用wrap_content,用内容来决定控件的大小。

2015-12-09 22:36:13 1148

原创 android加载本地文件数据

对于一些不变的数据,可以放数据库中,也可以放文本中。这里介绍读取文本中数据。activity代码:package com.example.textjson;import android.app.Activity;import android.os.Bundle;import android.util.Log;import java.io.*;public class MyA

2015-12-03 22:05:11 586

原创 android状态栏变色

现在大多数应用都适配到了5.0以上,将状态栏嵌入进我们的应用是必须的。那就来说说怎样使状态栏变色吧。1、对于api 5.0及以上根据你的品牌特征修改调色板,从而自定义 Material 主题。你可以通过主题属性调整 action bar 和状态栏的颜色,就像下图一样:系统组件拥有新的设计和触摸反馈动画。你可以自定义调色板,反馈动画和 Activity 切换动画。Ma

2015-11-28 22:29:41 734

gradle基础

gradle的基础知识

2017-06-20

Spring Boot基础

Spring Boot入门,基础

2017-06-08

activity研究

activity启动过程研究

2017-05-22

android service基本用法

service基本用法

2017-05-17

dispatchTouchEvent研究

dispatchTouchEvent研究

2016-12-02

value属性动画

value属性动画

2015-06-05

仿写scrollview

仿写scrollview

2015-06-01

自定义虚线

自定义view实现虚线,自定义属性的用法都有

2015-04-14

仿写linearlayout

实现了linearlayout的横向排布

2015-04-03

自定义属性demo

自定义属性demo

2014-06-27

自定义属性代码

我的博客示例,我的博客示例,我的博客示例,我的博客示例,我的博客示例

2014-05-11

空空如也

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

TA关注的人

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