Java语言进阶
像程序那样思考
这个作者很懒,什么都没留下…
展开
-
Android复习资料——Java知识点汇总(一)
接触 Android 开发也有一段时间了,前段时间便开始想抽空整理一些知识点,通过笔记整理的方式减少自己重复学习的时间成本和提高自身的效率。目前先是总结了部分 Java 的知识点,这就是本文的主要分享内容。 想特意申明的一点是,这个总结更多的是从本人自己的编程基础和侧重点出发,所以在内容上会有选择性的忽略以及侧重点,参考的博客和图文有很多,没办法一一列出,如果有引用不当的部分会立即删除,望大家见...原创 2019-06-24 14:22:23 · 138 阅读 · 0 评论 -
十年Android程序员:注解快速入门和实用分析(二)
2.2 编译时注解运行时注解**RUNTIME如上2.1所示,大多数时候实在运行时使用反射来实现所需效果,这很大程度上影响效率,如果BufferKnife的每个View注入不可能如何实现。实际上,ButterKnife使用的是编译时注解***CLASS***,如下***图X2.2***,是ButterKnife的@BindView注解,它是一个编译时注解,在编译时生成对应java代码,实现注入。...原创 2019-07-03 17:20:20 · 134 阅读 · 0 评论 -
十年Android程序员:注解快速入门和实用分析(一)
文章较长,欢迎收藏后浅斟慢酌。主要介绍和分析了 RUNTIME 和 CLASS 下两种注解的使用,也欢迎讨论留言。首先什么是注解?@Override就是注解,它的作用是: 1、检查是否正确的重写了父类中的方法。 2、标明代码,这是一个重写的方法。1、体现在于:检查子类重写的方法名与参数类型是否正确;检查方法private/final/static等不能被重写。实际上@Overrid...原创 2019-07-03 17:19:18 · 124 阅读 · 0 评论 -
Android:Dagger2原理及使用详解(三)
目录一:Dagger2是什么?二:为什么要有Dagger2三:Dagger2如何使用基本的概念如何使用Dagger2高级用法(1)构造方法需要其他参数时候(2) 模块之间的依赖关系(3) @Named注解使用(4) @Singleton注解(5)自定义Scoped(6)Subcomponent(7)lazy 和 Provider四: ...原创 2019-07-02 17:35:05 · 473 阅读 · 0 评论 -
Android:Dagger2原理及使用详解(二)
目录一:Dagger2是什么?二:为什么要有Dagger2三:Dagger2如何使用基本的概念如何使用Dagger2高级用法(1)构造方法需要其他参数时候(2) 模块之间的依赖关系(3) @Named注解使用(4) @Singleton注解(5)自定义Scoped(6)Subcomponent(7)lazy 和 Provider四: ...原创 2019-07-02 17:33:03 · 450 阅读 · 0 评论 -
Android:Dagger2原理及使用详解(一)
目录一:Dagger2是什么?二:为什么要有Dagger2三:Dagger2如何使用基本的概念如何使用Dagger2高级用法(1)构造方法需要其他参数时候(2) 模块之间的依赖关系(3) @Named注解使用(4) @Singleton注解(5)自定义Scoped(6)Subcomponent(7)lazy 和 Provider四: ...原创 2019-07-02 17:29:25 · 1292 阅读 · 1 评论 -
8年Android开发架构师详解:Android反射机制(程序员必看)
什么是反射机制?JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制(注意关键词:运行状态)换句话说,Java程序可以加载一个运行时才得知名称的class,获悉其完整构造(但不包括methods定义),并生成其对象实体、或对其fields设值、...原创 2019-07-01 21:00:58 · 509 阅读 · 0 评论 -
Android-Java-I/O流概述
IO:I:Input输入 O:Output输出IO流:IO:用于处理设备上数据的一种技术,处理设备上数据包括(Input / Output) ,设备指的是:内存,硬盘,U盘,打印机,等等…流:流指的是系统的资源,各个操作系统本身就支持(内存<---->硬盘,U盘,打印机,等等…)的传输功能,Java语言只是去调用流操作系统的资源来完成流的传输一.IO流用来处理设备之间数据的传...原创 2019-07-01 14:51:36 · 142 阅读 · 0 评论 -
从放弃到入门,8年Android架构师详解——RxJava2.0
前言终于到了讲RxJava这一期,RxJava是我个人非常喜欢的一个开源库,它很好的将链式编程风格和异步结合在一起。RxJava其实已经推出很久了,可以说是已经很火了,但是目前仍然还有相当一部分Android开发者没有使用过,甚至说是想用,却不知道怎么用,或者不知道自己的项目哪里可以用到,本着让广大开发者理解并且上手项目,从放弃到入门,故推出这边文章。学习RxJava2.0之前需不需要学习Rx...原创 2019-06-27 15:55:01 · 229 阅读 · 0 评论 -
Android类加载实现与原理,8年Android架构师深入分析
java中常用的classLoader说到android中的classLoader,就不能不先说说java中的classLoader是什么。所谓classLoader就是负责将编译好的class文件加载到指定位置的实现类。具体来说,我们编写java代码时,需要将其编译成.class文件,最终运行时就需要将这些class文件加载到内存才能运行,而加载这些class文件的方法就可以成为class...转载 2019-06-26 17:58:26 · 226 阅读 · 0 评论 -
最重磅!泛型原理与Android网络应用——Java语言进阶篇
引入看一段常见的代码记得以前我们使用的时候都需要强转类型,现在这里居然提示这是不必要的 why?发生了什么?什么时候发生的?我们打开这个方法,如下@SuppressWarnings("TypeParameterUnusedInFormals") @Override public <T extends View> T findViewById(@IdRes int id) ...转载 2019-06-25 20:16:33 · 190 阅读 · 0 评论 -
十年Android程序员:序列化总结
前言公园里,一位仙风鹤骨的老者在打太极,一招一式都仙气十足,一个年轻人走过去:“大爷,太极这玩意儿花拳绣腿,你练它干啥?”老者淡淡一笑:“年轻人,你还没有领悟到太极的真谛,这样,你用最大力气打我试试。”于是年轻人用力打了老头一拳,被讹了八万六。从段子就能看出来,今天这篇博客又是一碗炒冷饭。序列化使用很简单,但是其中的一些细节并不是所有人都清楚。在日常的应用开发中,我们可能需要让某些对象离开内存...原创 2019-07-04 15:44:05 · 186 阅读 · 0 评论