自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 资源 (11)
  • 问答 (2)
  • 收藏
  • 关注

原创 史上最通俗易懂的BNF词法规则详解:关键字、标识符、运算符与分隔符(java为例)

词法分析是编译过程的第一步,将源代码分解为Token。BNF及其扩展形式(EBNF、ABNF)是描述语法规则的形式化方法,使用符号如::=、|等定义语法结构。词法分析流程包括字符预处理、Token识别和输出。Java中的词法元素主要包括关键字(如if、class)、标识符(用户定义名称)和运算符(如+、&&),它们通过特定规则进行识别和分类。EBNF等语法可用于精确定义这些词法元素的构成规则。

2025-09-09 14:11:47 1037

原创 一次惊心动魄的线上事故:记一次内存泄漏Bug的排查与解决全过程

摘要: 华为手机直播页面OOM问题排查发现,外包团队在Retrofit+OkHttp实现中存在严重错误:每次请求都创建新的OkHttpClient实例,导致连接池失效,线程持续增长。修复方案包括:1) 将OkHttpClient改为单例模式;2) 在页面层添加请求取消机制。问题根源在于对OkHttp连接池机制理解不足,每次新建Client导致连接无法复用,最终线程数暴增引发OOM。该案例凸显了网络请求管理规范的重要性。(149字)

2025-09-03 17:48:23 1067

原创 Android WebView与JSBridge实战详解:从基础配置到高级应用

本文介绍了Android混合开发中WebView与JSBridge的核心应用。首先讲解了WebView基础配置,包括启用JavaScript、DOM存储等设置,以及本地assets目录调试方法。重点分析了JSBridge双向通信实现:原生调用JavaScript通过evaluateJavascript方法获取返回值;JavaScript调用原生则需使用@JavascriptInterface注解。最后针对Vue3项目,提供了打包配置方案以确保资源路径正确。这些技术要点为混合应用开发提供了实用解决方案。

2025-08-12 09:52:36 425

原创 GraalVM 与 JVM:深度对比分析

摘要: 本文对比了GraalVM与传统JVM的核心差异。JVM成熟稳定,支持完整JDK功能但启动慢、内存占用高;GraalVM作为多语言运行时,支持原生镜像编译实现毫秒级启动和低内存消耗,但缺失动态类加载、反射、JNI等JDK特性。两者线程模型一致,GraalVM在多线程性能上略有优势。适用场景方面:JVM适合传统企业应用,GraalVM更适配云原生、Serverless及多语言项目。建议新项目尝试GraalVM原生镜像,现有系统迁移需评估动态特性依赖。

2025-06-30 15:53:06 783

原创 C调用Java深度解析:从JVM创建到方法执行的完整流程

本文详细解析C语言通过JNI调用Java方法的全流程,涵盖六大核心环节:1)JVM初始化与参数配置;2)Java类加载机制;3)方法签名解析与ID获取;4)参数封装与数据类型转换;5)静态/实例方法调用方式;6)返回值处理与资源释放。重点剖析了JNI方法签名规则、异常处理机制和性能优化策略,并针对"类找不到"、"方法调用失败"等常见问题提供解决方案。文章结合真实项目代码,呈现跨语言调用的关键技术要点,适用于嵌入式开发、服务端集成等需要Java与C混合编程的场景。

2025-06-25 16:04:56 2002

原创 深入探讨JavaScript性能瓶颈与优化实践

本文深入剖析JavaScript性能优化,分析函数频繁调用、内存泄漏、DOM操作、网络延迟等常见瓶颈,并提出防抖节流、Web Workers、虚拟滚动、缓存等优化方案。结合电商项目案例,展示了拆分长任务、图片懒加载、Tree Shaking和SSR等落地实践,强调减少主线程阻塞、优化资源加载和利用现代浏览器特性的重要性。文章为提升Web应用性能提供了系统化解决方案,并展望WebAssembly等新技术的发展前景。

2025-06-19 15:47:52 984

原创 零基础也能懂的 Python 开发环境搭建指南

《三步搭建Python开发环境》简明教程:1)安装Python(Windows官网下载勾选PATH,Mac用Homebrew,Linux通常已预装);2)创建虚拟环境(python -m venv myenv)并按系统类型激活;3)运行测试代码验证环境。各系统操作差异已分类说明,完成三步即可获得隔离的开发环境,附流程表格总结和实用贴士。适合Windows/Mac/Linux用户快速部署。

2025-06-16 11:48:35 309

原创 Java异步编程难题拆解:CompletableFuture的实战解析

本文全面介绍了Java异步编程中CompletableFuture的使用方法与实践经验。首先讲解了异步编程的基本概念和Java中的异步支持,然后详细演示了CompletableFuture的基础使用方式,包括创建异步任务、链式调用、组合任务和异常处理。针对实际开发中的常见问题,文章深入分析了线程池配置不当、任务顺序控制、异常捕获和任务堆积等典型场景,并提供了具体解决方案和代码示例。最后还分享了串行异步调用、结果合并、手动完成任务等进阶技巧。通过本文,开发者可以系统地掌握CompletableFuture的核

2025-06-16 10:38:17 813

原创 Android 2025 年保活方案深度评测:哪些手段还有效?哪些已失效?

本文系统分析当前主流Android保活方案的可行性,针对IM/定位类App提供合规稳定的保活策略。随着Android系统对后台限制日益严格,传统方法如双进程守护、1像素Activity等已基本失效。文章对比7种方案,推荐组合使用前台服务(最稳定)、WorkManager心跳(官方支持)、厂商白名单(关键手段)和Push拉活(核心方案)来实现有效保活。其中前台服务需搭配通知栏显示,WorkManager适合兜底检查,而厂商白名单需引导用户手动设置。文末提供Spring Boot推送触发示例,帮助开发者构建完整

2025-06-11 15:36:04 2937

原创 Android插件化技术详解:从原理到实践

插件化是指将应用的部分功能模块封装成独立的插件(Plugin),主程序(Host)可以在运行时动态加载这些插件并调用其功能。插件化技术的核心在于动态加载与解耦合。插件化技术作为Android开发中的高级技能之一,已经在多个大厂项目中得到广泛应用。它不仅提升了应用的灵活性和可维护性,还为热更新、模块化开发提供了强有力的支持。然而,插件化并非万能钥匙,开发者在使用过程中需要注意性能、安全、兼容性等多个方面的问题。选择合适的框架、合理设计插件结构、做好异常处理和版本管理,才能真正发挥插件化的优势。

2025-06-11 09:58:18 738

原创 Android交叉编译实战指南

交叉编译(Cross-Compilation)是指在一个平台上编译出适用于另一个平台的可执行代码的技术。在Android开发中,交叉编译主要用于将应用程序的源代码(如Java、Kotlin或C/C++)转换为可在特定硬件架构(如ARMv7、ARM64、x86等)上运行的二进制文件。我们这次编译的是C项目。

2025-06-06 17:22:16 518

原创 2021-01-24

2020总结工作总结先说工作,今年我换了两次工作,一次是3月疫情过来后,公司业务缩减,开除高级是首选,降低成本的最快方式,很不幸我就是其中一员,无fuck可说,后来在3月13号入职了新公司,原本以为疫情期间还能招聘的公司一定不受疫情影响了,谁知道只是因为下面的人员不知道上面领导的安排,以为公司很稳定,就这样我做了7个月以后又被裁了,是集团公司,加班不是很多,不过是大小周,有点可惜,毕竟频繁的换工作,无论是从业务角度还是技术角度都无法得到很好的提升,这次出来找工作就不那么容易了,又接近年底了,因为之前

2021-01-24 11:31:06 129

原创 git 删除版本控制(文件夹)windows

由于初学把一大堆工程都加入了版本控制,然后百度了半天http://blog.csdn.net/zfphp/article/details/38012551 搜索到了一个这个,可是这个是要已经push过,但是我根本没有push过,下面教一个大家极简单的方法 跟svn一样的,不同的是SVN是循环删除每个子文件夹里的.svn版本控制文件,而git只有一个.git文件,只要删除这个文件即可点击显示隐藏

2015-02-10 10:32:08 9331

原创 android 面试题(广州)

最近一直在面试 面试了几家公司 就发一下 我所记得的大多数公司都出过的题目

2014-09-04 11:29:00 590

android-studio-2023.2.1.4-windows

android-studio-2023.2.1.4版本下载

2023-10-21

android studio 3.5

android studio3.5下载 地址,文件里面是百度网盘下载地址

2019-04-17

android studio 3.1

android studio3.1下载 地址,文件里面是百度网盘下载地址

2018-08-26

Netease.zip

网易安卓右键反编译工具,神器,查看签名,反编译,回编译,不在话下。

2020-04-06

js局部放大图片 html

局部放大是对图片放大 而不是两张图片 具体代码 还是自己看吧 描述要太多 烦

2009-12-08

支付宝移动快捷支付SDK的安装与项目实战开发

支付宝支付SDK集成视频教程 1. 认识支付宝移动支付平台 2. 申请签约支付宝移动支付 3. 运行支付宝SDK提供的示例程序 4. 支付宝SDK示程序例分析 5. 在程序中使用移动快捷支付功能

2018-08-26

gallery3d效果

gallery3d旋转效果,是本地化图片,异步网络下载的自己修改下。。

2013-12-19

android-universal-image-loader

andriod开源异步加载图片,不会出现混排,OOM等情况。。。

2013-12-19

菜鸟宝典(硬件知识,操作系统知识)

一些硬件知识 操作系统 软件编程语言简介 eg:什么是高级语言 (转自INTERNET) 高级语言的语句是梢彩自然语汇,并使用与自然语言相近的语法体系,高级语言编写的程序更易于阅读和理解。高级语言的语句是面向问题的.而不是面向机器的。对问题和其求解的表述比汇编语言更容易理解。这样更加简化了程序的编写和调试,编程序的效率会大大提高。高级语言独立于具体的计算机。又大大增加了通用性和可移植性。

2008-11-04

spring定时器,定时调用任务配置

举个例子吧 可对仓库库存状况定时检查,并执行删除等其他操作

2009-08-30

struts2拦截器

拦截器描述也太多了是一个HTML格式 我还要浪费这么久时间

2008-12-11

日历控件,时间自行选择

一个很炫,功能很强大的日历,包括可自定义显示日历日期或日期日期+时间(时间可自行选择修改format即可),在开发中非常实用,兼容ie,火狐浏览器。

2011-07-27

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

TA关注的人

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