diff --git a/blogs/Android/SharedPreferences.md b/blogs/Android/SharedPreferences.md index 8fbdb2c..2bd9004 100644 --- a/blogs/Android/SharedPreferences.md +++ b/blogs/Android/SharedPreferences.md @@ -84,7 +84,7 @@ private static ArrayMap> sSharedPr sSharedPrefsCache 是一个 ArrayMap,它存储的是包名和 packagePrefs 的映射关系,而 packagePrefs 存储的是 SharedPreferences 文件与 SharedPreferences 实例对象之间的映射关系。 -这里为什么要把 packageName 作为 key 呢?那是因为一个进程可以有多个应用程序,所以需要用包名来区分它们,在这里感谢 @水晶虾饺 的指正和淳淳教诲。 +这里为什么要把 packageName 作为 key 呢?那是因为一个进程可以有多个 Android 应用,所以需要用包名来区分它们,在这里感谢 @水晶虾饺 的指正和淳淳教诲。 这里,可以稍微总结一下,sSharedPrefsCache 会保存加载到内存中的 SharedPreferences 对象,当用户需要获取 SP 对象的时候,首先会在 sSharedPrefsCache 中查找,如果没找到,就创建一个新的 SP 对象添加到 sSharedPrefsCache 中,并且以当前应用的包名为 key。 diff --git a/blogs/JVM/JVM 是如何实现 invokedynamic 的?.md b/blogs/JVM/JVM 是如何实现 invokedynamic 的?.md new file mode 100644 index 0000000..6f6efff --- /dev/null +++ b/blogs/JVM/JVM 是如何实现 invokedynamic 的?.md @@ -0,0 +1,4 @@ +--- +JVM 是如何实现 invokedynamic 的? +--- + diff --git a/blogs/Java/并发/并发编程的源头.md b/blogs/Java/并发/并发编程的源头.md new file mode 100644 index 0000000..e17eee3 --- /dev/null +++ b/blogs/Java/并发/并发编程的源头.md @@ -0,0 +1,4 @@ +--- +并发编程 Bug 的源头 +--- +