https://www.songma.com/
- 微***
- 访客数:55530
- TA的活跃度
-
近30天登录:11907
商品总评价:0
资讯总评论:0
发表文章:507
- Activity的生命周期和启动模式——深度学习
- 2019-02-24 21:30:00
- 一.典型情况下的生命周期onCreat: 表示Activity正在被创。再次方法中,我们可以做少量初始化工作,例如调用setContentView去加载界面布局资源、初始化Activity所需数据等。onRestart:表示Activity正在重新启动。一般情况下,当Activity从不可见变为可见
- 手把手讲解 Android Hook入门Demo
- 2019-02-24 21:29:44
- 前言手把手讲解系列文章,是我写给各位看官,也是写给我自己的。文章可能过分详细,但是这是为了帮助到尽量多的人,毕竟工作5,6年,不能老吸血,也到了回馈开源的时候.这个系列的文章:1、用浅显易懂的讲解方式,讲解一门技术的实用价值2、详细书写源码的追踪,源码截图,绘制类的结构图,尽量详细地解释原理的探究过
- Java基础系列-throw、throws关键字
- 2019-02-24 21:29:29
- 原创文章,转载请标注出处:《Java基础系列 throw、throws关键字》一、概述throw和throws就是异常相关的关键字,在java中异常机制是一个非常重要的机制,我们需要重点掌握。既然说到了异常,简单形容下异常机制很有必要,这也对后文的讲述提供前提。二、Java异常机制在Java中表示异
- 使用python排八字 计算八字的相合相冲五行分值等
- 2019-02-24 21:29:23
- 简介八字术是一种古老的算命术。它运用阴阳、五行、干支、八卦等理论,把人的出生年月日时转化为八个字,进而推算人的富贵贫贱、祸福吉凶、穷通寿天、名利地位、家庭六亲等方面的情况八字源自古代的中国,是一种利用天干和地支来精确记录年、月、日、时的方式,由“年干,年支”、“月干,月支”、“日干,日支”、“时干,
- 记 Android 的一次面试(初级中级水平)
- 2019-02-24 21:29:19
- ring ring ring...(这次电话面共43分钟)面试官:我是xxx的,刚才应该有人和你打过招呼了我:嗯嗯对,已经有同事和我打过招呼了。面试官:好的,请先简单自己详情一下我:我是大专毕业,工作有三年多了,现在自考本中,之前在三家公司工作过,第一家是和师兄一起创业的外包性质的公司,第二家搞金融
- ButterKnife 是如何通过 Gradle Plugin 来生成 R2 类的原理分析
- 2019-02-24 21:29:12
- 一、学习目标本节的学习目标是分析 butterknife 利用 Gradle Plugin 生成 R2.java 文件的过程。新建工程,引入 butterknife ,并在 library 中使用 butterknife。分析为何需要生成 R2.java 文件。R2.java 文件的生成。分析 R.
- 用Kotlin自己设置一个"蜘蛛网图"
- 2019-02-24 21:29:07
- 前言趁着这几天比较清闲就理解了一下Kotlin,Google在2017年就已经推出Kotlin作为Android开发官方语言,它相比于java最大的优势就是简洁。其实在最初我是抗拒去学习Kotlin的,可能是忠于对java的一种情怀吧,但在初步理解了Kotlin之后我立即决定去学习这门语言,由于Ko
- Android网络编程(一)传输层协议 UDP、TCP
- 2019-02-24 21:29:03
- 前言相信计算机专业的朋友在大学都学过《计算机网络》这门课程,但据我个人理解计算机专业普通大学生对计算机网络的理解浅之又浅,很多人说这门学科没用,开发的时候也用不着,其实这样想是不对的,说一下我个人的体会,之前老是听别人说OkHttp怎样这么好用,但用完之后感觉和其余框架没多大区别啊,于是就想着去专研
- Android网络编程(三)HTTP、HTTPS
- 2019-02-24 21:28:46
- 前言据我个人理解,很多工作很久的开发者对HTTP的了解非常的片面甚至有些偏差,经常把HTTP和TCP混淆,所以我认为我有必要将这两个概念进行澄清,前两篇文章我们形容了传输层协议TCP、UDP以及对应的Socket编程,从这篇文章我们开始转战应用层,我将会连续推出关于应用层的几篇文章,包括应用层协议H
- 多线程系列(二)线程间通信
- 2019-02-24 21:28:31
- 前言上一篇文章我们叙述了少量多线程的基础,想要深入理解线程只掌握这些只是是远远不够的,这篇文章我将为大家带来多线程中略微高级一点的内容:线程间通信,以及线程间通信所带来的安全问题。1 概述什么是线程间通信呢?我们来看一下线程间通信比较官方的解释:多个线程解决同一资源,但是任务不同什么意思呢?其实说的
- Typescript 中枚举(上)
- 2019-02-24 21:28:23
- 可以在初始化枚举时对 Up 赋值,枚举好处是给我们一种不可以修改的集合可以用来作为配置选项,我们无法在随后动态修改enum Direction { Up = 1, Down, Left, Right,}这是枚举编译后的 js 文件,编译后的枚举var Direction;(f
- LeetCode算法题-Convert BST to Greater Tree(Java实现)
- 2019-02-24 21:28:15
- 这是悦乐书的第255次升级,第268篇原创01 看题和准备今天详情的是LeetCode算法题中Easy级别的第122题(顺位题号是538)。给定二进制搜索树(BST),将其转换为更大树,使原始BST的每个键都更改为原始键加上所有键的总和大于BST中的原始键。例如:输入:二进制搜索树的根,如下所示:
- Spring Cloud Alibaba基础教程:Nacos的集群部署
- 2019-02-24 21:28:03
- 前情回顾:《Spring Cloud Alibaba基础教程:使用Nacos实现服务注册与发现》《Spring Cloud Alibaba基础教程:支持的几种服务消费方式》《Spring Cloud Alibaba基础教程:使用Nacos作为配置中心》《Spring Cloud Alibaba基础教
- 读懂 Dagger2 源码
- 2019-02-24 21:27:54
- 了解 Dagger2 的源码Dagger2 帮助我们将被注入类自动地注入到目标类,有利解耦,从而让维护项目的依赖关系变得轻松。通过代码实现一下 dagger 是如何实现依赖注入,我们创立一个类 DataManager 用作被注入的类。public class DataManager { pri
- 从源码角度深入了解Glide(中)
- 2019-02-24 21:27:29
- glide_logo.png上两一篇文章从源码角度深入了解Glide(上)中,我们理解了Glide框架中的少量用法,并且分析了Glide的with方法和load方法,因为 限制字数篇幅起因into方法留到本篇文章分析,废话不多说,接下来马上开始分析。into方法通过上一小节的分析,经过load方法之
- 从源码角度深入了解Glide(下)
- 2019-02-24 21:27:23
- glide_logo.png上两篇文章从源码角度深入了解Glide(上)和从源码角度深入了解Glide(中)中,我们已经把Glide加载图片的基本流程走了一遍,想必你已经对Glide的加载原理有了新的认识并且见识到了Glide源码的复杂逻辑,在我们感叹Glide源码复杂的同时我们也忽略了Glide加
- 为什么不能加个狗狗专用的接口呢?
- 2019-02-24 21:27:17
- 博主某日在github闲逛的时候, 发现了一个有意思的网站推荐: https://shibe.online/ (你每次打开, 都会看到不一样的狗狗图片), 可以把它看做是DogBook这个网站提供了一个接口, http://shibe.online/api/shibes , 最有用的参数是count
- 高效Java第六条消除过期的对象引用无意识的对象保持
- 2019-02-24 21:27:04
- 问题的引出这段程序有一个“内存泄露”,随着GC活动的添加,或者者因为内存占用的不断添加,程序性能降低会逐步体现出来。在极端的情况下,这种内存泄露会导致磁盘交换,甚至导致程序失败(OutOfMemoryError),但是这种失败情况相比照较少见。 内存泄露的地方:一个栈先是增长,而后再收缩,那么,从栈
- java编程思想泛型对混入的详细讨论
- 2019-02-24 21:26:55
- Java基础系列-Date类
- 2019-02-24 21:26:23
- 原创文章,转载请标注出处:《Java基础系列 equals方法和hashCode方法》一、概述Date类是从JDK1.1就开始存在的老类,其提供了针对日期进行操作的诸多方法,但其却一直饱受诟病,不同的起始编号,国际化的低支持,JDK官方也认识到这个问题,后端提出使用Calendar类进行日期操作,日