# JavaKotlinAndroidGuide **Repository Path**: kotlin0911/JavaKotlinAndroidGuide ## Basic Information - **Project Name**: JavaKotlinAndroidGuide - **Description**: 这是一份关于 Java 、Kotlin 、 Android 的学习指南 - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 3 - **Forks**: 1 - **Created**: 2020-09-19 - **Last Updated**: 2024-07-15 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ![](logo/logo.png) 这是一份关于 Java、Kotlin、Android 的学习指南 本指南以 Java & Kotlin 的基础语法知识作为开始,涵盖了大部分的语言知识点,帮助初学者入门 对于已入门者,可以看下本指南对于 Java 集合框架的详细源码注解,以此开始学习之路由浅入深的步伐 对于已具备了基础语法知识的读者,可以再看下本指南介绍关于 Git 如何使用的章节,以此学会版本控制 再之后,Android 章节的内容包括:四大组件、权限系统、官方框架、自定义View、多线程机制、IPC机制、第三方框架、开源应用、开源库发布等从浅到深的知识,涵盖了一位 Android 开发者从初学到精通的道路上应该了解的知识点或者会遇到的问题 希望本指南对你会有所帮助,欢迎 star ------ #### 一、Java 知识点 * [Java 重拾](https://github.com/leavesC/JavaKotlinAndroidGuide) * [重拾Java(0)-基础知识点](recollect/重拾Java(0)-基础知识点.md) * [重拾Java(1)-基本数据类型与字面值](recollect/重拾Java(1)-基本数据类型与字面值.md) * [重拾Java(2)-运算符](recollect/重拾Java(2)-运算符.md) * [重拾Java(3)-异常处理](recollect/重拾Java(3)-异常处理.md) * [重拾Java(4)-线程](recollect/重拾Java(4)-线程.md) * [重拾Java(5)-枚举](recollect/重拾Java(5)-枚举.md) * [重拾Java(6)-注解](recollect/重拾Java(6)-注解.md) * [重拾Java(7)-泛型](recollect/重拾Java(7)-泛型.md) * [重拾Java(8)-反射](recollect/重拾Java(8)-反射.md) * [重拾Java(9)-Lambda表达式](recollect/重拾Java(9)-Lambda表达式.md) * [Java 集合框架](https://github.com/leavesC/JavaKotlinAndroidGuide) * [Java 集合框架源码解析之数组与链表](collections/Java集合框架源码解析之数组与链表.md) * [Java 集合框架源码解析之ArrayList](collections/Java集合框架源码解析之ArrayList.md) * [Java 集合框架源码解析之LinkedList](collections/Java集合框架源码解析之LinkedList.md) * [Java 集合框架源码解析之HashMap](collections/Java集合框架源码解析之HashMap.md) * [Java 集合框架源码解析之LinkedHashMap](collections/Java集合框架源码解析之LinkedHashMap.md) * [Java 集合框架源码解析之HashSet](collections/Java集合框架源码解析之HashSet.md) * [Java 集合框架源码解析之LinkedHashSet](collections/Java集合框架源码解析之LinkedHashSet.md) * [ArrayList 源码详细注释](sourceCode/ArrayList.java) * [LinkedList 源码详细注释](sourceCode/LinkedList.java) * [HashMap 源码详细注释](sourceCode/HashMap.java) * [LinkedHashMap 源码详细注释](sourceCode/LinkedHashMap.java) * [HashSet 源码详细注释](sourceCode/HashSet.java) * [LinkedHashSet 源码详细注释](sourceCode/LinkedHashSet.java) ------ #### 二、Kotlin 知识点 * [Kotlin 入门教程](https://github.com/leavesC/JavaKotlinAndroidGuide) * [基础](kotlin) * [变量、数据类型、函数](kotlin/1_变量、数据类型、函数.md) * [包、类型别名、修饰符](kotlin/2_Package、修饰符.md) * [数组、字符串模板](kotlin/3_数组、字符串模板.md) * [条件循环、区间、返回和跳转](kotlin/4_条件循环、区间、返回和跳转.md) * [类、接口、对象](kotlin) * [类的基本概念](kotlin/5_类的基本概念.md) * [抽象类、数据类、密封类、枚举类、匿名内部类、内部类、嵌套类](kotlin/6_抽象类、数据类、密封类、枚举类、匿名内部类、内部类、嵌套类.md) * [接口](kotlin/7_接口.md) * [继承](kotlin/8_继承.md) * [可空性](kotlin) * [空安全](kotlin/9_空安全.md) * [类型的检查与转换](kotlin/10_类型的检查与转换.md) * [集合](kotlin) * [集合](kotlin/11_集合.md) * [函数和Lambda](kotlin) * [扩展函数和扩展属性](kotlin/12_扩展函数和扩展属性.md) * [命名参数、默认参数值、可变参数、局部函数](kotlin/13_命名参数、默认参数值、可变参数、局部函数.md) * [Lambda表达式](kotlin/14_Lambda表达式.md) * [with与apply函数](kotlin/15_with与apply函数.md) * [函数操作符](kotlin/16_函数操作符.md) * [其他](kotlin) * [异常](kotlin/17_异常.md) * [运算符重载](kotlin/18_运算符重载.md) * [中缀调用、解构声明](kotlin/19_中缀调用、解构声明.md) * [对象表达式与对象声明](kotlin/20_对象表达式与对象声明.md) * [委托](kotlin/21_委托.md) * [注解](kotlin/22_注解.md) ------ #### 三、Android 知识点 * [Android 开源库](https://github.com/leavesC/JavaKotlinAndroidGuide) * [OkHttp 网络请求调试利器 - Monitor](https://github.com/leavesC/Monitor) * [一个小巧而强大的 Key-Value 管理框架 - DoKV](https://github.com/leavesC/DoKV) * [Android 开源应用](https://github.com/leavesC/JavaKotlinAndroidGuide) * [一个 IM 应用](https://github.com/leavesC/Chat) * [一个纯 Kotlin 的工具类App](https://github.com/leavesC/Activity) * [两个小游戏 + 一个阅读类应用,适合初学者](https://github.com/leavesC/SmallApp) * [Android 框架学习](https://github.com/leavesC/JavaKotlinAndroidGuide) * [基于 ViewModel+LiveData+Retrofit+RxJava 封装的网络请求框架](https://github.com/leavesC/ViewModel_Retrofit_RxJava) * [Android APT 实例讲解](https://github.com/leavesC/DoKV) * [Android DataBinding 从入门到进阶](https://github.com/leavesC/DataBindingSamples) * [Retrofit2 与服务端实例讲解](https://github.com/leavesC/Retrofit2Samples) * [Gradle 常用配置总结](https://github.com/leavesC/GradleSamples) * [RxJava2 入门详细笔记](notes/RxJava2入门详细笔记.md) * [Dagger2 入门笔记](https://github.com/leavesC/Dagger2Samples) * [Gson 使用详解](notes/AndroidGson使用详解.md) * [Android 自定义View基础](https://github.com/leavesC/JavaKotlinAndroidGuide) * [Android View 事件分发机制详解](other/Android事件分发机制详解.md) * [Android 解决 View 的滑动冲突](other/Android解决View的滑动冲突.md) * [Android 侧边栏滑动索引 View](https://github.com/leavesC/LetterIndexView) * [Android 仿360悬浮球与加速球](https://github.com/leavesC/FloatBall) * [Android 自定义View合辑,持续更新中](https://github.com/leavesC/CustomView) * [计划表](https://github.com/leavesC/CustomView) * [跳跃小球(贝塞尔曲线-3)](https://github.com/leavesC/CustomView) * [带文本的圆形波浪(贝塞尔曲线-2)](https://github.com/leavesC/CustomView) * [波浪(贝塞尔曲线-1)](https://github.com/leavesC/CustomView) * [仿QQ邮箱下拉刷新](https://github.com/leavesC/CustomView) * [太极](https://github.com/leavesC/CustomView) * [时钟](https://github.com/leavesC/CustomView) * [饼状图](https://github.com/leavesC/CustomView) * [下雨](https://github.com/leavesC/CustomView) * [Android 集合框架](https://github.com/leavesC/JavaKotlinAndroidGuide) * [Android 集合框架源码解析之SparseArray](collections_android/SparseArray源码解析.md) * [SparseArray 源码详细注释](collections_android/SparseArray.java) * [Android 多线程机制](https://github.com/leavesC/JavaKotlinAndroidGuide) * [Android 多线程之Handler、Looper与MessageQueue源码解析](multithreading/Android多线程之Handler、Looper与MessageQueue源码解析.md) * [Android 多线程之HandlerThread源码解析](multithreading/Android多线程之HandlerThread源码解析.md) * [Android 多线程之IntentService源码解析](multithreading/Android多线程之IntentService源码解析.md) * [Android 多线程之AsyncTask源码解析](multithreading/Android多线程之AsyncTask源码解析.md) * [Android HandlerThread 源码详细注释](sourceCode/HandlerThread.java) * [Android IntentService 源码详细注释](sourceCode/IntentService.java) * [Android AsyncTask 源码详细注释](sourceCode/AsyncTask.java) * [Android IPC 机制](https://github.com/leavesC/JavaKotlinAndroidGuide) * [AndroidIPC机制(1)-进程和线程](https://github.com/leavesC/IPCSamples) * [AndroidIPC机制(2)-序列化机制](https://github.com/leavesC/IPCSamples) * [AndroidIPC机制(3)-AIDL](https://github.com/leavesC/IPCSamples) * [AndroidIPC机制(4)-Messenger](https://github.com/leavesC/IPCSamples) * [AndroidIPC机制(5)-Binder连接池](https://github.com/leavesC/IPCSamples) * [Android 方案实现](https://github.com/leavesC/JavaKotlinAndroidGuide) * [在Android设备上搭建Web服务器](https://github.com/leavesC/AndroidServer) * [通过 Wifi 实现无网络传输文件](https://github.com/leavesC/WifiFileTransfer) * [通过 Wifi Direct 实现无网络传输文件](https://github.com/leavesC/WifiP2P) * [Android 工具类库](https://github.com/leavesC/AndroidUtils) * [Android 扫描并连接蓝牙音响设备](https://github.com/leavesC/BluetoothDemo) * [Android 解决软键盘和表情面板切换时的跳闪问题](https://github.com/leavesC/Keyboard) * [Android 获取应用 Crash 信息的方法](other/Android获取应用Crash信息的方法.md) * [Android 权限系统](https://github.com/leavesC/JavaKotlinAndroidGuide) * [Android 系统权限](other/Android系统权限.md) * [Android Permission 大全](other/AndroidPermission访问权限大全.md) * [Android 6.0 运行时权限解析](other/Android6.0运行时权限解析.md) * [Android 运行时权限封装](https://github.com/leavesC/PermissionSteward) * [Android 基础](https://github.com/leavesC/JavaKotlinAndroidGuide) * [Android 应用基础知识](other/Android应用基础知识.md) * [Android 内存泄漏分析](other/Android内存泄漏分析.md) * [Android 进程和线程](other/Android进程和线程.md) * [Android Fragment使用详解](notes/AndroidFragment使用详解.md) * [Android Dialog使用详解](notes/AndroidDialog使用详解.md) * [Android Notification的使用](notes/AndroidNotification的使用.md) * [Android ConstraintLayout 使用详解](notes/AndroidConstraintLayout使用详解.md) * [Android ConstraintLayout 1.1.2版本的新特性](notes/约束布局ConstraintLayout1.1.2版本的新特性.md) * [Android 四大组件](https://github.com/leavesC/JavaKotlinAndroidGuide) * [Activity 使用详解](other/AndroidActivity使用详解.md) * [Activity 标签属性](other/AndroidActivity标签属性.md) * [Service 使用详解](other/AndroidService使用详解.md) * [BroadcastReceiver 使用详解](other/AndroidBroadcastReceiver使用详解.md) * [ContentProvider 使用详解](other/AndroidContentProvider基本用法.md) ------ #### 四、Git教程详解 * [Git教程详解(1)](git/Git教程详解(1).md) * [Git教程详解(2)](git/Git教程详解(2).md) ------ #### 五、工具类 * [高精度计算类 BigDecimalUtil](code/util/BigDecimalUtil.java) * [精度截取类 DecimalFormatUtil](code/util/DecimalFormatUtil.java) * [日期计算类 LocalDateUtil](code/util/LocalDateUtil.java) * [随机数生成类 RandomUtil](code/util/RandomUtil.java)