首页
学习
活动
专区
工具
TVP
发布

中国Android研究院

专栏成员
60
文章
82426
阅读量
23
订阅数
绝对干货 | Kotlin内联类工作原理及使用案例,看完你会回来谢我的
内联类有一些或多或少明显的限制:需要在主构造函数中精确指定一个属性,如value所示。您不能在一个内联类中包装多个值。内联类中也禁止包含init块,并且不能具有带有幕后字段的属性。内联类可以具有简单的可计算属性,但是我们将在本文后面看到。
吴延宝
2020-12-30
1.3K0
最强总结 | Java-Kotlin双译手册,收藏必备
这篇文章梳理了我们平时开发中,最常用的Java代码对应的Kotlin实现,初学者可以当做实践手册,查找和阅读都非常方便,一眼就能看出来。 打印日志 Java System.out.print("Amit Shekhar"); System.out.println("Amit Shekhar"); Kotlin print("Amit Shekhar") println("Amit Shekhar") ---- 常量与变量 Java String name = "Amit Shekhar"; final St
吴延宝
2020-12-14
4010
最强总结 | 带你快速搞定kotlin开发(中篇)
正如上面注释所写到的,Kotlin 中的类可以有一个 主构造器 (primary constructor), 以及一个或多个 次构造器 (secondary constructor). 主构造器是类头部的一部分, 位于类名称(以及可选的类型参数)之后,并且有一点与Java不同,就是在主构造器中我们可以直接声明成员属性。
吴延宝
2020-11-25
6860
最强总结 | 带你快速搞定kotlin开发(上篇)
可以看到函数的声明是通过fun关键字的,函数的参数类型和参数名的位置跟Java是相反的,中间使用 : 分隔,函数的返回类型是放在最后的,当然也是使用 : 进行分割的,如果没有返回值的时候可以省略或者使用Unit,相当于Java的void。
吴延宝
2020-11-25
5410
【深度揭秘】为什么很多语言的数组下标是从0开始的?
首先,恭喜你,能够点进来看的,已经领先60%的开发者了。 因为很多人看到标题可能觉得数组从0开始这不本来就这样吗?有什么看头,索性看都不会看,但是你点进来了,说明你还是保持了好奇心的,是具备成为专家的潜力的,这对技术行业来说非常重要。
吴延宝
2020-09-08
1.1K1
听了他讲的泛型,我就明白为什么他的工资比我多30万了!
Java是怎么实现泛型的?不错,类型擦除。Java编译器将源码编译成字节码的时候会将你在源码中声明的类型进行擦除,比如:
吴延宝
2019-12-19
5800
千万别告诉别人,这是我从高工那偷听来的Java方法分派策略
我们知道Java有一大特性就是多态。讲到多态不得不想再深层次的研究下多态中的方法分派到底是采用什么样的策略的。
吴延宝
2019-12-19
3280
你说你是高工,匿名内部类有我玩得6吗?
匿名内部类大家肯定都很熟悉,如果你是做Android开发的一定再熟悉不过了,因为你学Android的时候写的第二行代码一定是setOnClickListener,第一行代码一般是findViewById。
吴延宝
2019-12-19
5260
你说你是高工,String有多长也不知道?
String类是由final修饰的,所以是不能被继承的①,我们在对字符串进行比较时,一般是期望对比其中的字符串是否一样,所以这里我们不能用"=="进行字符串的比较,而是需要使用"equals()"方法②,因为使用==进行比较时,是比较的对象,只有指向同一个字符串对象的才会是true,否则就算字符串值相同也可能出现不相等的情况。
吴延宝
2019-12-19
3370
你说你是高工,char都没搞明白?!
可能很多人对Java中最简单的Char类型根本不屑一顾,不就是一个字符吗?能玩出什么花来?真的是这样吗?真不一定,我见过的几个所谓的高工对char的理解可能都是在比较浅的水平。今天我就带大家从高工的角度思考这个简单的Java类型Char。
吴延宝
2019-12-10
5900
Java 编程技巧之数据结构
编写代码的"老司机"也是如此,"老司机"之所以被称为"老司机",原因也是"无他,唯手熟尔"。编码过程中踩过的坑多了,获得的编码经验也就多了,总结的编码技巧也就更多了。总结的编码技巧多了,凡事又能够举一反三,编码的速度自然就上来了。笔者从数据结构的角度,整理了一些 Java 编程技巧,以供大家学习参考。
吴延宝
2019-10-15
1.2K0
把 Android App 逆向分为几步?三步
逆向在很多领域都有应用,比如如今爬虫技术已经遍地走,甚至不用写代码都可以爬取数据,导致前端开发的反爬意识也逐步提升。因此 JS、Android 等领域的逆向,已经成为爬虫开发者必备的技能之一。
吴延宝
2019-10-09
1.9K0
谈一谈Android内存
或许,因为开发周期的原因;因为自身知识水平的原因;因为经验的原因;又或者是你接了个烂摊子。我们写出了并不太理想的代码,这都是可以接受的,只要你会去持续优化,这些问题都会得到改善。而有些人是心有余而力不足,“我也想优化,可是怎么去优化呢?”。本篇文章将给你带来一点启示,让你从力不从心到知道怎么去入手优化。
吴延宝
2019-01-09
6260
进阶必备-Android Click事件是怎么触发的?
阅读本篇文章前,假设你已经阅读前一篇文章上一篇链接。 由于有同学问到onClick和touch事件的关系,这里就从源码的角度分析下onClick和onLongClick与onTouchEvent事件是怎么关联的。本文将通过View.java、TextView.java、Button.java的源码作为例子分析。
吴延宝
2018-10-18
2.1K0
3分钟了解Java双亲委派机制
在介绍双亲委派机制的时候,不得不提ClassLoader。说ClassLoader之前,我们得先了解下Java的基本知识。 Java是运行在Java的虚拟机(JVM)中的,但是它是怎么就运行在JVM中了呢?我们在IDE中编写的Java源代码被编译器编译成.class的字节码文件。然后由我们得ClassLoader负责将这些class问价加载到JVM中去执行。 JVM中提供了三层的ClassLoader:
吴延宝
2018-10-18
4.6K1
面向切面编程(AOP)在Android中的应用
AOP,字面翻译为面向切面编程。它是一种编程思想,不是什么新技术。可以这么理解,在Android开发过程中,我们经常会在我们的具体业务代码中加入全局性、系统性的与具体业务无关的代码。比如埋点、动态申请权限等等。AOP的思想就是将这些与业务无关的系统性的功能解耦出来,让代码看起来更清晰一点。使用AOP思想与正常程序流程的对比我们可以通过下面示例图片有个基础的认识:
吴延宝
2018-10-18
2.3K0
哪些情况下的对象会被垃圾回收机制处理掉
Java的虚拟机本身是蛮复杂的,我们不仔细讲细节。我们只针对我们平时最关心的堆中的哪些对象会被GC回收。我们这样思考,既然GC要回收这块内存,那总得有个方法让GC可以判断哪些对象时可以被回收而哪些是不能被回收的吧?这就引出了下面常见的两种判断方法。
吴延宝
2018-09-10
6.9K0
没有更多了
社区活动
【纪录片】中国数据库前世今生
穿越半个世纪,探寻中国数据库50年的发展历程
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档