自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(145)
  • 资源 (8)
  • 收藏
  • 关注

原创 java之final

在 Java 编程中,final关键字用于声明不可改变的实体。它可以用于变量、方法和类,分别表示变量不可变、方法不可重写以及类不可继承。

2024-09-14 09:48:52 470

原创 定义常量的几种方法及优缺点

在 Java 中定义常量的几种常见方法包括使用final关键字、枚举(enum)、接口常量以及注解(@interface)。每种方法都有其优缺点,适用于不同的场景。

2024-09-14 09:37:41 853

原创 java之static

在 Java 编程中,static关键字用于定义类级别的成员和方法,而不是实例级别的。理解static关键字的使用及其含义对于编写高效、清晰的代码非常重要。

2024-09-13 23:25:50 499

原创 okhttpp 中onResponse方法中,Response 对象只能读取一次怎么办

在使用 OkHttp 进行网络请求时,Response 对象只能读取一次,这是。:根据实际需求选择合适的保存方式,例如存储在内存、文件或数据库中。为了能够多次使用响应数据,你需要在第一次读取时将其保存下来。:如果在多线程环境中使用保存的响应内容,请确保线程安全。这样就可以确保在 OkHttp 请求中多次使用响应内容。:因为它会消耗流中的所有字节并关闭流。

2024-09-13 09:54:04 379

原创 Android之常见CPU架构

在开发 Android 应用时,了解这些架构的位数有助于更好地优化应用的性能和兼容性。

2024-09-13 00:22:12 1069

原创 android之ActivityThread

ActivityThread 是 Android 框架中的一个核心类,负责管理应用程序的主线程(UI 线程)以及应用程序的生命周期事件。了解它的工作原理对于理解 Android 应用程序的运行机制是非常有帮助的。

2024-09-11 00:03:19 354

原创 锁之synchronized 与volatile lock的异同

synchronized 和 Lock都能确保线程对共享资源的原子性操作和可见性。synchronized 和 volatile都能确保共享变量的可见性。

2024-09-10 00:01:28 825

原创 Android之性能优化

性能优化是 Android 开发中非常重要的一部分。优化应用性能不仅可以提升用户体验,还可以减少设备资源的消耗。

2024-09-09 09:52:16 1065

原创 自定义view中常用到哪些方法作用分别是什么

在 Android 开发中,自定义 View 是一种常用的技术,允许开发者创建具有独特外观和行为的 UI 组件。自定义 View 通常涉及重写一些关键的方法,以实现特定的绘制和交互逻辑。

2024-09-07 22:45:10 941

原创 Android之外部存储可以访问哪些文件夹

在 Android 中,外部存储提供了一些标准的公共文件夹,用于存储特定类型的文件。通过使用 Environment 类和适当的权限管理,可以方便地访问和管理这些文件夹。对于需要长期保留的文件,如照片、视频和文档,外部存储是一个理想的选择。

2024-09-07 22:44:23 847

原创 组件化是如何进行通信的

组件化是一种常见的设计方法,它将应用程序分解为独立的、可重用的组件。组件化之间的通信是实现模块化应用程序的关键。

2024-09-06 00:07:39 363

原创 Android之LiveTemplate注释模板

最后点击Apply和ok,至此注释模板就完成了,可以新建类,通过输入Abbreviation的名字,然后回车就可以使用了。在Expression中选择向下箭头,刷动鼠标,date的话,选择date(),同理,time的话,选择time(),其中Abbreviation 是快捷键,Description 模板描述, date是日期,time是时间。我是放在Android下的,然后点击右侧(新版本的话不在右侧)加号,选好之后,点击ok就行,如图。点击+(加号)之后,如图。

2024-09-06 00:06:54 537

原创 序列化和反序列化之Serializable与Parcelable的异同

在 Android 开发中,序列化和反序列化是将对象转换为字节流以及从字节流还原对象的过程。Java 提供了 Serializable 接口,而 Android 提供了 Parcelable 接口来实现这一功能。

2024-09-05 00:06:28 869

原创 Android之SharedPreferences(SP)

SharedPreferences 是 Android 提供的一种轻量级的数据存储方式,主要用于存储简单的键值对(key-value pairs)。它非常适合保存应用的配置信息、用户设置、应用状态等小型数据。

2024-09-05 00:04:53 1433

原创 okhttp,retrofit,rxjava 是如何配合工作的 作用分别是什么

OkHttp、Retrofit 和 RxJava 是 Android 开发中常用的三种库,它们各自有不同的作用,并且可以很好地配合工作来实现网络请求和响应的处理。

2024-09-04 15:29:36 725

原创 okhttp 拦截器用过那些? 什么情况下用的?如何使用?

OkHttp 是一个强大的 HTTP 客户端,广泛用于 Android 开发中。拦截器(Interceptor)是 OkHttp 的一个核心功能,允许开发者在请求和响应的生命周期中插入自定义逻辑。拦截器可以用于多种场景,如日志记录、添加公共请求头、处理缓存、重试策略等。

2024-09-04 15:28:59 793

原创 Android之Handler是如何保证延迟发送的

在 Android 中,Handler 是用于在不同线程之间传递和处理消息的工具。它可以用于定时任务、延迟执行任务等。Handler 如何保证延迟发送消息的核心在于其与 MessageQueue 和 Looper 的协同工作。

2024-09-03 22:37:55 724

原创 Android之Handler的post方法和sendMessage的区别

Handler 类在 Android 中用于在不同线程之间传递消息和执行代码。它提供了两种主要的方式来执行任务:通过 post 方法和通过 sendMessage 方法。

2024-09-03 22:34:17 440

原创 Android之同一个Thread线程里只能有一个Looper?(ThreadLocal)

每个线程只能有一个 Looper 实例

2024-09-02 23:51:36 1060

原创 Android之电量优化

在 Android 应用开发中,电量优化是一个非常重要的方面,因为用户对设备电量的敏感性很高。

2024-09-02 23:36:58 1058

原创 andorid动画之呼吸效果

在 Android 中实现呼吸效果的动画可以通过多种方式来实现,最常见的方法是使用 ObjectAnimator 和 AnimatorSet。呼吸效果通常指的是一个视图的大小或透明度在一定时间内逐渐增大和减小,模拟出一种呼吸的感觉。

2024-08-27 23:35:15 202

原创 Thread与HandlerThread的异同

在 Android 开发中,Thread 和 HandlerThread 都是用于执行后台任务的工具,但它们有不同的设计目的和使用场景。

2024-08-26 22:30:54 847

原创 线程之为什么弃用 AsyncTask

AsyncTask 是 Android 提供的一个用于在后台线程执行任务并在主线程更新 UI 的类。然而,从 Android 11 (API level 30) 开始,AsyncTask 已被弃用(deprecated),并且在未来的 Android 版本中可能会被移除。因此,尽管在旧版本的 Android 中你仍然可以使用 AsyncTask,但不建议在新的开发项目中继续使用它。

2024-08-25 17:38:34 1081

原创 面向对象的特征有哪些方面

面向对象编程(Object-Oriented Programming,OOP)是一种编程范式,基于“对象”的概念来设计和构建软件系统。OOP有几个核心特征,这些特征帮助开发者构建模块化、可重用和可维护的代码。

2024-08-20 21:38:28 485

原创 生产者-消费者模式之生产者大于消费者如何处理

在生产者-消费者模式中(Handler),生产者生成数据并将其放入一个共享的数据缓冲区,而消费者从该缓冲区中取出数据进行处理。这种模式通常用于解决多线程环境中的数据同步问题。

2024-08-20 21:22:09 555

原创 HarmonyOS之准备工作软件

如果想预览的话,需要先保存,然后点击PreViewer,进行查看页面变化。安装 傻瓜式安装(我下载这个版本安装时不需要其他操作,直接Next)选择EmptyAbility,然后点击Next。下载模拟器或者链接真机运行。

2024-08-19 11:16:03 369

原创 并行与并发区别

并行指的是同时执行多个任务。这通常涉及多处理器或多核系统,每个处理器或核心同时执行不同的任务。并发指的是在同一时间段内处理多个任务。这并不意味着这些任务必须同时执行,而是它们的执行在时间上交替进行。并行和并发虽然都涉及多任务处理,但它们在执行方式、硬件需求和应用场景上有明显的区别。并行注重任务的同时执行,通常需要多处理器支持;而并发注重任务的交替执行,可以在单处理器系统上实现。理解这两个概念的区别对于设计和优化多任务处理系统至关重要。

2024-08-19 11:15:35 406

原创 Android之内容提供者(ContentProvider)

内容提供者(ContentProvider)是Android四大组件之一,用于在不同应用之间共享数据。内容提供者通过统一资源标识符(URI)来标识数据,并使用一套标准的接口来访问和操作数据。它是Android系统中实现跨应用数据共享的主要方式。

2024-08-17 00:04:05 1125

原创 Android之广播(Broadcast)

广播(Broadcast)是Android四大组件之一,是Android中用于消息传递的重要机制,通过广播,应用程序可以在不同组件之间或不同应用之间传递消息。广播机制允许应用程序发送和接收系统范围或应用范围的消息。广播的主要用途包括通知应用程序特定事件的发生,例如设备启动、电池电量低、网络状态变化等。

2024-08-17 00:03:17 1053

原创 Android之Service与IntentService区别

在Android开发中,Service是一个可以在后台执行长时间运行操作的组件。主要有两种类型的Service:普通Service和IntentService。

2024-08-16 07:27:20 1114

原创 Android之service两种启动方式的异同

在Android中,Service有两种主要的启动方式:启动服务(Started Service)和绑定服务(Bound Service)。这两种方式在使用场景、生命周期管理和交互方式上有明显的区别。

2024-08-16 07:26:11 485

原创 Android之Room与GreenDAO区别

Room:如果你需要一个易于使用、官方支持、与Jetpack组件无缝集成的ORM框架,Room是一个很好的选择。它提供了编译时检查、简洁的注解和强大的迁移机制,适合大多数常见的应用场景。GreenDAO:如果你对性能有较高的要求,并且愿意花时间学习和配置代码生成器,GreenDAO是一个不错的选择。它在大量数据操作的场景下表现出色,但学习曲线稍陡。

2024-08-15 00:10:50 718

原创 Android drawable与mipmap区别

在Android开发中,drawable和mipmap是两种资源目录,用于存放不同类型的资源。了解它们的区别对于正确地组织和使用资源非常重要。

2024-08-15 00:09:44 452

原创 Java之垃圾回收中对象互相引用如何解决

在Java中,垃圾回收(Garbage Collection, GC)机制会自动管理内存,回收不再使用的对象。然而,当两个对象互相引用时,如果它们都不再被其他活动对象引用,GC仍然可以回收它们。这是因为Java的GC算法(如标记-清除算法、标记-压缩算法和分代收集算法)能够检测到这种情况.。

2024-08-14 12:39:48 409

原创 Android之约束布局、相对布局、线性布局的区别

ConstraintLayout:适用于复杂布局,减少嵌套,提高性能。需要一定的学习成本,但设计工具支持良好。RelativeLayout:适用于简单布局,使用直观,但在复杂布局中可能导致性能问题和代码复杂度增加。LinearLayout:,适用于简单的垂直或水平排列,layout_weight属性可以灵活分配空间。

2024-08-14 12:37:54 437

原创 Java比较两个对象为什么要重写equals()和hashCode()

在 Java 和 Kotlin 中,默认的 equals() 和 hashCode() 方法继承自 Object 类,它们的默认行为可能并不能满足你比较两个对象的需求。

2024-08-13 16:17:22 1002

原创 Java之 equals()与==

在Java中,equals()方法和==运算符用于比较对象,但它们的用途和行为有所不同。

2024-08-13 16:15:12 292

原创 Android之集成Unity及互相调用

Unity官方文档DemoUnity与原生交互之AndroidStudio篇——Unity导出Android工程,导入AndroidStudio打包APK全流程Unity3D与Android交互问题一Error: Unity.IL2CPP.Building.BuilderFailedException: Build failed with 0 successful nodes and 0 failed onesError: Internal build system error. BuildPr

2024-08-12 17:28:25 1463

原创 Android之如何动态获取View的宽高

ViewTreeObserver.OnGlobalLayoutListener:适用于监听视图树的全局布局事件。onWindowFocusChanged:适用于自定义视图,当视图获取到焦点时获取宽高。post:适用于将任务放入消息队列,在视图布局完成后执行。onLayout:适用于自定义视图,当视图完成布局时获取宽高。

2024-08-12 11:42:49 734

原创 常用的加密算法有哪些

加密算法是信息安全领域的重要组成部分,用于保护数据的机密性、完整性和真实性

2024-08-11 00:13:53 775

RxJava 操作符使用

RxJava 操作符、线程调度 观察者 RxJava是一种事件驱动的基于异步数据流的编程模式,整个数据流就像一条河流,它可以被观测(监听),过滤,操控或者与其他数据流合并为一条新的数据流。三要素Rxjava原理 基于 一种扩展的观察者模式的响应式编程框架RxJava原理可总结为:被观察者 (Observable) 通过 订阅(Subscribe) 按顺序发送事件 给观察者 (Observer), 观察者(Observer) 按顺序接收事件 & 作出对应的响应动作。

2024-03-27

ContentProviderDemo.7z

ContentProvider 使用 增 insert 删 delete 改 update 查 query 方法实现, SQLIte数据库创建等 侧重点在于进程间通信。

2023-07-17

Messenger 进程间通信

Messenger 实现进程间通信 可以翻译为信使,通过它可以实现在不同进程中传递Message 对象。 是一种轻量级的 IPC 方案。 Messenger 底层是通过AIDL实现的。 一次处理一个请求,不存在并发情况。

2023-07-12

CrashHandler

Android 应用不可避免的会发生crash 即崩溃,无论程序写的多好,都会不可避免的发生崩溃,可能是由底层引起的,也有可能是写的代码引起的。当crash发生时,系统会kill掉正在执行的程序,现象是程序闪退或提升用户已停止运行。出现这种情况,开发者却无法得到程序为何crash。Android 提供了处理这类问题的方法。 java的Thread中有一个UncaughtExceptionHandler接口,该接口的作用主要是为 了 当 Thread 因未捕获的异常而突然终止时,调用处理程序。 崩溃信息捕获,

2023-07-04

ActivityDemo.7z

3个ActivityA和C为默认启动模式(standard)B为singleTask 生命周期调用顺序 A——>B——>C——>B A——>B——>B 生命周期调用顺序

2023-05-15

面试技巧(文档).7z

面试技巧、面试指南、模板、单面、群面、自我介绍、问题回答、中文、英文等

2023-05-11

apache-maven-3.8.5-bin.7z

apache-maven-3.8.5-bin.7z 解压就可用,方便快捷,另外还得配置环境变量

2022-07-25

Ubuntu 机械臂(睿尔曼)与摄像头(奥比中光、RealSense)标定教程(眼在手上)

Ubuntu系统下机械臂(睿尔曼)与摄像头(奥比中光、RealSense)标定教程(眼在手上) ROS系统搭建 系统:Ubuntu 18.04 ROS:melodic OpenCV 库:OpenCV 3.2.0 Realsense D435: Marker 标记识别:Aruco 功能包 手眼标定:easy_handeye 功能包 Moveit! RM 机械臂 ROS 功能包 Catkin-tools 工具包 各个库的搭建、测试 资源包下载 问题

2022-07-16

Ubuntu系统下ROS机械臂(睿尔曼)与摄像头标定(RealSense)教程

Ubuntu系统下ROS机械臂(睿尔曼)与摄像头标定(RealSense)教程(眼在手上) ROS系统搭建 系统:Ubuntu 18.04 ROS:melodic OpenCV 库:OpenCV 3.2.0 Realsense D435: Marker 标记识别:Aruco 功能包 手眼标定:easy_handeye 功能包 Moveit! RM 机械臂 ROS 功能包 Catkin-tools 工具包 各个库的搭建、测试 资源包下载

2022-07-15

commons-math3-3.6.1-API文档中文版

math3是Apache下的一款进行数学计算的一款java开源工具。 math3是一款非常好用的工具,里面提供了各种运算的方法及类,方便大家调用。 apache-commons-math3是java的一种科学计算类库,实现科学计算功能的类库其他语言如python、scala都有很多而且很容易找到资料,java可能是由于这方面的需求不多,所以相关的资料较少,详细的使用还是需要自己去研究官方文档了(https://java-matrix.org/)。 由于在写算法时,经常遇到矩阵的运算,如数组转化为矩阵,矩阵的逆,矩阵的转置,矩阵的乘法,矩阵转为数组等等。 支持java5到java8 支持以二维数组的形式存储密集数据 支持大量密集数据的块存储 支持DOK形式的稀疏数据存储(键值对字典) 支持double、BigDecimal、String、Object、Complex Numbers等数据类型 支持二维矩阵 支持常用的矩阵操作、如矩阵转置、矩阵求逆、加减乘除 支持LU和QR分解等。

2022-07-15

Ubuntu18.04 清华、阿里云、中科大、网易源

一般情况下使用Ubuntu默认的软件源已经足够了, 但有默认的软件源的速度一般很慢,有时候甚至会连接失败。下面博主就介绍一些 Ubuntu 的国内软件源和一些第三方软件源。 国内软件源 Ubuntu18.04 清华、阿里云、中科大、网易 源

2022-07-12

省市区 数据china_address.json

Android 省市区三级联动(本地数据) 通过遍历集合(省、市、区3个集合)然后将数据加入集合中, 然后配置WheelView等属性方法, 点击事件设置,弹窗位置、方式、动画等

2019-12-24

mpsdk-installer-2-15-1.exe

Zebra(斑马)打印机开发Demo包括(Android、IOS、PC等)Demo、文档(英文的)等。 首先下载安装软件,软件名称为:mpsdk-installer-2-15-1.exe,安装成功之后,在你的安装目录下有你需要的资源

2019-12-03

请求工具之Postman

专门测试 API 的工具。 Postman 提供功能强大的 Web API 和 HTTP 请求的调试,它能够发送任何类型的HTTP 请求 (GET, POST, PUT, DELETE…),并且能附带任何数量的参数和 Headers。支持不同的认证机制(Basic,Digest,Oauth),接收到的相应语法高亮(HTML,JSON或XML)。不仅如此,它还提供测试数据和环境配置数据的导入导出,付费的 Post Cloud 用户还能够创建自己的 Team Library 用来团队协作式的测试,并能够将自己的测试收藏夹和用例数据分享给团队。

2018-05-31

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除