- 博客(21)
- 收藏
- 关注
原创 go语言--笔记--接口
Go 语言规范(Language Specification)定义接收者类型类型T的方法集类型*T的方法集包含包含不包含包含关键推论:如果接口方法要求指针接收者,只有*T能实现该接口,T本身不能。// Incrementer 接口要求修改状态的方法// Counter 计数器类型// Value 使用值接收者:T 和 *T 的方法集都包含此方法// Increment 使用指针接收者:只有 *T 的方法集包含此方法*c++
2026-06-01 23:57:51
441
4
原创 go语言--笔记--封装、组合(继承)
Go语言通过独特的机制实现了面向对象的特性:封装、组合。封装采用命名约定而非关键字,通过首字母大小写控制访问权限,封装粒度是包级别而非类型级别。组合通过嵌入机制实现代码复用,不同于传统继承,嵌入是语法糖而非运行时机制,零开销且更灵活。Go还提供了工厂函数、接口隔离、Functional Options等高级封装技巧,以及嵌入接口、横向组合等组合模式,使代码更模块化且易于维护。这些设计体现了Go语言简洁、高效和贴近硬件的哲学。
2026-05-19 21:32:31
450
原创 go语言--笔记--工厂模式
Go语言中的工厂模式是一种创建对象的封装方式,通过普通函数(通常命名为New...)代替直接的结构体实例化。这种模式主要解决三个工程痛点:封装复杂初始化逻辑、实现多态创建以及统一管理对象生命周期。Go的特殊性在于没有构造函数,工厂函数成为管理对象创建的主要手段。工厂模式适用于以下场景:需要参数校验、依赖其他组件、隐藏具体实现、对象复用或复杂初始化流程。在Go中,通过小写结构体+大写工厂函数实现强约束,确保对象创建后处于有效状态。
2026-04-20 23:14:57
389
原创 简单弹窗网页音乐表白代码
💖浪漫表白应用使用指南 这是一款专为表白设计的Windows应用,包含以下特色功能: 自动弹出温馨表白窗口,含爱心图标和可定制消息 精美网页展示动态粒子爱心动画和爱心雨效果 支持背景音乐自动播放 完全可定制的内容配置 使用说明: 解压后直接运行exe文件 所有文件需放在同一英文路径目录下 可修改config.json自定义弹窗和网页内容 添加background.mp3作为背景音乐 注意事项: 使用英文路径避免兼容问题 可能需要管理员权限运行 首次运行时需允许防火墙访问 常见问题解决方案已包含在指南中,建
2026-04-14 23:47:42
403
原创 pac+本地代理+360兼容模式+js脚本注入
360浏览器兼容模式脚本注入技术方案 本文介绍了一种针对360浏览器兼容模式(IE内核)的脚本注入解决方案。由于360兼容模式与标准IE浏览器存在差异,传统方法如C#框架、C++框架BHO等在360环境下失效。本方案创新性地采用PAC+本地代理的组合方式实现功能,主要包含四大模块: PAC服务模块:动态生成代理配置脚本,智能路由浏览器流量 代理服务器模块:作为流量处理中枢,实现HTTPS中间人攻击和响应篡改 JS脚本管理模块:提供脚本全生命周期管理功能 起点注入代理模块:协调各模块工作 方案突破性地解决了3
2026-04-13 14:38:14
455
原创 平板使用usb线使用win7的PC端网络
之前做过adb_gnirehte来帮助平板通过usb线使用pc的网络,但是在win7中不行,win7缺少驱动,最后研究决定使用abd+go代理去实现这个功能,这样win7只需要兼容abd的驱动,go使用17版本的就好了。采用 ADB Reverse + 本地 HTTP 代理 的组合方案:
2026-04-09 14:35:11
406
原创 go语言--笔记--Go语言结构体的方法
Go语言结构体方法详解:方法通过接收者参数绑定到特定类型,实现面向对象行为。值接收者操作副本,指针接收者操作原始变量。方法调用自动转换规则:值变量可调用指针方法(自动取址),指针变量可调用值方法(自动解引用)。方法本质是语法糖,底层转换为带接收者的函数。方法集决定接口实现:指针类型包含值方法,但值类型不包含指针方法。选择接收者类型需考虑修改需求、结构体大小和性能因素。
2026-04-08 23:51:24
327
原创 go语言--笔记--结构体
Go语言结构体深度解析:从内存布局到高效编程 本文系统探讨了Go语言结构体的核心特性与实践技巧。首先阐述了Go独特的组合式设计哲学,强调通过嵌入而非继承实现代码复用。详细讲解了结构体的多种声明方式、初始化方法及内存分配机制,重点剖析了内存对齐规则及其对性能的影响。文章深入底层原理,揭示了结构体地址与首字段的关系,展示了空结构体的特殊处理方式。同时解析了结构体标签的元数据机制和严格的类型转换规则。通过实际案例演示了如何优化结构体布局以减少内存浪费,并介绍了利用unsafe包实现高性能协议解析的技巧。这些知识对
2026-04-08 23:47:19
315
原创 ADB + gnirehtet USB线 反向代理流量至电脑
ADB + gnirehtet 是一种“系统级网络接管方案”,通过 Android VPN + TUN 虚拟网卡,拦截平板全部 IP 流量,并通过 ADB 隧道“反向代理”转发至 PC 出口上网。 大白话说就是可以用usb线让平板使用PC端电脑的流量上网。
2026-04-03 18:00:22
437
原创 简单弹窗网页音乐表白代码
这是一款精心打造的浪漫表白应用,通过温馨的弹窗和精美的网页,为你传递最真挚的情感。无论是表达爱意、纪念特殊日子,还是给TA一个惊喜,这款应用都能帮你完美传达心意。
2026-02-26 19:47:56
838
原创 Go语言数组底层结构详解
内存连续:元素在内存中紧密排列,地址连续类型包含长度[5]int和[10]int是不同的类型编译时确定:大小在编译时已知,可以栈分配值语义:赋值和传参复制整个数组零值初始化:声明后自动初始化为零值缓存友好:连续内存布局对CPU缓存友好切片的基础:切片底层引用数组性能优势:相比切片,数组访问少一次间接寻址。
2025-12-04 20:02:27
428
原创 原码、反码、补码
首先在计算机中,一个字节指的是8个比特位,计算机就是通过字节储存二进制的。其中,原码、反码和补码是计算机中用于表示有符号整数的三种不同的二进制表示方法
2025-03-08 11:14:09
1262
原创 Java-多线程(常用)
我们下载到电脑桌面的QQ程序只是静态的代码,QQ通常是一个可执行文件(在 Windows 系统上可能是 .exe 文件),它是静态的代码,还没有开始运行。这个可执行文件包含了 QQ 程序的指令和数据,但此时它们并没有被执行,因此不构成进程或线程。当我们双击启动的时候,就会形成一个进程(实例),这个时候你还可以再次双击,再形成一个进程(类似你要登录两个QQ账号)。登录成功后,你可以进行视频通话,或者语音通话等等,这些就是进程中的功能就可以说是线程。
2024-05-09 11:13:26
893
原创 转义字符\(正则表达式)
这样说可能比较抽象,我换总说法,就是\d是一个完整的字符,一个我们在正则表达式中用来判断是否是一个数字的字符,但是你直接写\d代表着不是我们需要的那个字符,而是表示将d转义的一个字符,你需要先将\转义,也就是说\\,才代表一个\,然后再加上d,才表示为/d。这里面的 \ 是没有转义意义的\,所以当我们想表示 . 的时候,首先先把 \ 转义了,用\\表示符号\,符号\加上.也就是\.这样的一个符号才能表示 .。因为\是转义字符,直接用\d,代表着是将字符d转义为其他意思,但d没有其他意思,那么就会报错。
2024-03-30 16:53:10
10337
原创 ArrayList初始容量
当我们向ArrayList添加元素时,如果长度超过了当前容量,ArrayList会自动增加内部数组的大小,以适应更多的元素。我在网上找了很久,有说ArrayList初始容量为0的,有说为10的,还有说是在add添加一个元素以后容量为10的。所以,初始容量是为了提前分配足够的内存空间,以避免频繁的扩容操作。语句创建ArrayList时,会为其分配一个默认的初始容量,通常是10。首先:我们得知道,在Java中,ArrayList是一个动态数组,其初始容量和长度是不同的概念。最大容量是Integer的最大值。
2024-03-24 17:35:29
411
原创 学生信息管理系统(C语言)
其实一个软件或者系统,都是各种功能组合在一起形成的,将对象的数据以及功能函数写好,就能形成一个简单的系统了。做个记录吧,记录以前第一次写出这比较完整的代码,记录一下以前心情。下面是以前的一个作业,c语言做一个学生信息管理系统。
2024-03-22 15:34:45
4420
3
原创 双色球(Java)
投注号码由6个红色球号码和1个蓝色球号码组成。红色球号码从1-33中选择;蓝色球号码从1-16中选择。以上是学习Java中做的第一个有意思的小游戏,记录一下。
2024-03-22 15:22:23
332
原创 进制转换C++
当然我用了long int类型的数组来存储16进制数,但是long int的大小仍然有限,如果16进制数太大,可能会超出long int的表示范围。所以一般对于数字特别大的数据,一般是用string类型获取数据,并将其转变为2进制,再用二进制转为所需的进制类型。bitset将整数转换为二进制表示;利用输出流实现简单,进制转换。hex表示16进制;dec表示10进制;
2024-03-21 22:40:40
1376
原创 C++对数函数 log() 操作
而log是对数函数 ,格式是log底数(x),如果没设底数,及只有log,那就是以e为底。首先得先了解这个函数exp(n)值为e^n次方;记得加头文件#include<math.h>
2024-03-21 22:30:00
2076
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅