Java字符串 在 Java 中,String、StringBuffer 和 StringBuilder 都是用于处理字符串的类,但它们在性能、线程安全和使用场景上有所不同。下面详细介绍它们的区别和使用场景: 1. String 不可变性:String 是不可变的,一旦创建,其值就不能改变。每次对 String 进行修改操作(如拼接、替换等),都会创建一个新的 String 对象。 线程安全:由于不可变性,Str 2024-11-20 Java #Java
Linux中文件的查找 在使用linux时,经常需要进行文件查找。其中查找的命令主要有find和grep。他们都具有查找功能,但是查找的方向不一致。 find 查找 主要用于查找文件和目录。 可以根据多种条件(如文件名、大小、修改时间等)来查找文件。 适用于文件系统的搜索 命令格式1find [路径] [表达式] 路径:指定要搜索的目录或文件路径。 表达式:指定查找条件,如 -name、-type、-mtime 等 2024-11-18 Linux > 常见命令 #Linux
Linux压缩和解压缩命令 1. 介绍在Linux操作系统中,压缩文件夹是一种非常常见且有用的操作。通过压缩文件夹,可以将多个文件和子文件夹打包成一个压缩文件,从而方便传输、存储和备份。本文将详细介绍如何在Linux中使用不同的命令和工具来压缩文件文件夹。 2. 使用tar命令压缩文件/文件夹2.1 使用tar命令压缩在Linux中,tar命令是一个用于打包文件和目录的常用工具。它可以将多个文件和目录打包成一个压缩 2024-11-17 Linux > 常见命令 #Linux
计算机网络-传输层 传输层1 传输层的定义TCP/IP中有两个具有代表性的传输层协议,它们分别是TCP和UDP。TCP在传输层提供可靠的通信传输,而UDP在传输层不提供可靠传输,而是尽最大能力传输,常被用于让广播和细节控制交给应用的通信传输。总之,根据通信的具体特征,选择合适的传输层协议是非常重要的。 在网络层提到在IP的首部有一个协议字段,来标识网络层上一层采用的是哪一种传输层协议,这里我们使用Wir 2024-11-08 计算机网络 #基础
RemoteCallbackList分析 对于RemoteCallbackList的使用,本博客不再介绍。网上很多博客都有相关的描述。本文主要是对我们为什么要这样或者那样去使用RemoteCallbackList做一个分析,学习一下源码时怎么封装的 首先带着几个问题去学习会更加深刻: 为什么beginBroadcast和finishBroadcast要成对使用? 为什么我们使用RemoteCallbackList中的unregister 2024-10-31 Android > IPC #Android
Handler分析(转载) 前言做 Android 开发肯定离不开跟 Handler 打交道,它通常被我们用来做主线程与子线程之间的通信工具,而 Handler 作为 Android 中消息机制的重要一员也确实给我们的开发带来了极大的便利。 可以说只要有异步线程与主线程通信的地方就一定会有 Handler。 那么,Handler 的通信机制的背后的原理是什么? 本文带你揭晓。 注意:本文所展示的系统源码基于 Androi 2024-10-22 Android 进阶 #Android
Handler 常见问题分析 1. 一个线程有几个 Handler?一个线程可以有无数个handler。 2. 一个线程有几个 Looper?如何保证?123456private static void prepare(boolean quitAllowed) { if (sThreadLocal.get() != null) { throw new RuntimeException 2024-10-21 Android 进阶 #Android
内存管理 内存管理1.内存的基础知识1.1存储单元内存的作用:存放数据。程序执行前需要先放到内存中才能被CFPU处理。 意义:缓和CPU与硬盘之间的速度矛盾。 存储单元:内存中的最小存储单位。可以理解成内存中的一个个的小房间。 内存地址从0开始(逻辑地址),每个地址对应一个存储单元。 计算机分为“字节编码”和“字长编码” 如果是字节编码的计算机,每个存储单元的大小是1B(byte),也就是8个二进制位( 2024-09-11 #操作系统
android 源码的编译-1 我们顺利的将AOSP下载了下来后,很多时候我们不仅仅需要去查看源码,还有以下的几个需求: 定制Android系统 将最新版本的Android系统刷入到自己的Android设备中 将整个系统源码导入到Android Studio中 动态调试Android系统源码 (不一定需要导入全部的源码,部分源码也可以调试) 源码编译相关名词: Makefile: make命令执行时,需要一个 Makef 2024-03-19 Android 进阶 #Android
framework初识 Framework初识什么是 Android Framework开发? Android Framework开发是指针对Android操作系统框架层进行的软件开发工作。这一层次是Android平台的核心部分,它为应用程序开发者提供了APIs和系统服务,并定义了应用程序如何与系统交互的标准机制。 在Android Framework开发中,开发者可能涉及的工作内容包括但不限于: 系统服务开发: 2024-02-29 Android 进阶 #Android