类变量和实例变量的命名规范有哪些具体的例子?

你想获取类变量和实例变量命名规范的具体可落地示例,核心遵循 Python PEP 8 规范,两类变量因用途和归属不同,命名风格有明确区分,下面通过「场景分类 + 正面示例 + 反面示例 + 完整代码」的形式详细呈现:

一、通用命名基础(所有变量必遵守,先明确前提)

  1. 风格:小写字母 + 下划线分隔(蛇形命名 snake_case),禁止驼峰命名(如 userName);
  2. 语义:见名知意,避免无意义缩写(如 uid 可接受,x1 不推荐);
  3. 禁用:关键字(class/def)、魔法属性格式(__xxx__)、数字开头、特殊字符(-/@)。

二、类变量命名规范 + 具体示例

类变量是类的共享属性,命名需突出「全局、共享、常量、统计」特性,分 3 类场景:

表格

类变量类型 命名规则 正面示例(推荐) 反面示例(避坑)
普通共享类变量 蛇形命名,体现 "共享 / 统计" 语义 total_users(总用户数)default_timeout(默认超时时间)class_name(班级名称)pass_rate(考试通过率)system_version(系统版本) totalUsers(驼峰命名,不符合 PEP8)tu(无意义缩写,可读性差)123count(数字开头,语法错误)class(关键字,禁用)TotalCount(大驼峰,混淆类名风格)
常量类变量 全大写 + 下划线分隔,体现 "不可修改" MAX_RETRY = 3(最大重试次数)DEFAULT_PORT = 8080(默认端口)SPECIES = "人类"(物种常量)MAX_SCORE = 100(满分分值)ALLOWED_METHODS = ["GET", "POST"](允许的请求方法) maxRetry = 3(驼峰 + 小写,无常量标识)max_score = 3(全小写,无法区分普通变量)MaxScore = 3(混合大小写,不规范)max-score = 3(含连字符,语法错误)
私有类变量 单下划线开头 + 蛇形命名(约定私有,外部不建议访问) _internal_cache(内部缓存)_temp_data(临时存储数据)_grade_mapping(年级映射字典)_debug_mode(调试模式标识) __internal_cache(双下划线,触发名称改写,非必要禁用)_InternalCache(首字母大写,不符合蛇形)_internalCache(驼峰,不规范)internal_cache(无下划线,无法标识私有)
完整代码示例(类变量命名)

python

运行

复制代码
class OrderSystem:
    # 1. 常量类变量(全大写)
    MAX_ORDER_ITEMS = 20  # 订单最大商品数量
    DEFAULT_EXPIRE_HOURS = 24  # 订单默认过期小时数
    PAYMENT_TYPES = ["alipay", "wechat_pay"]  # 支持的支付方式
    MIN_ORDER_AMOUNT = 0.01  # 最小订单金额

    # 2. 普通共享类变量(蛇形命名)
    total_orders = 0  # 系统总订单数
    pending_orders = 0  # 待支付订单数
    completed_orders = 0  # 已完成订单数
    platform_name = "电商小铺"  # 平台名称

    # 3. 私有类变量(单下划线开头)
    _order_status_mapping = {0: "待支付", 1: "已支付", 2: "已取消"}  # 订单状态映射表
    _temp_order_cache = {}  # 临时订单缓存
    _is_maintenance = False  # 系统是否在维护中

    def create_order(self):
        # 修改普通共享类变量
        OrderSystem.total_orders += 1
        OrderSystem.pending_orders += 1

三、实例变量命名规范 + 具体示例

实例变量是单个实例的独有属性,命名需突出「个体特征、实例状态」,分 3 类场景:

表格

实例变量类型 命名规则 正面示例(推荐) 反面示例(避坑)
普通实例变量 蛇形命名,体现 "实例独有" 语义 user_id = 10001(用户唯一 ID)order_id = "ORD20251226"(订单编号)phone_number = "13800138000"(手机号)shipping_address = "北京市朝阳区"(收货地址)register_time = "2025-01-01"(注册时间)is_active = True(是否激活) userID = 10001(驼峰命名,不符合 PEP8)uid = 10001(无意义缩写,可读性差)PhoneNumber = "138..."(大驼峰,混淆类名)1phone(数字开头,语法错误)user-id(含连字符,语法错误)
私有实例变量 单下划线开头 + 蛇形命名(约定私有,外部不建议访问) _password = "e10adc3949ba59abbe56e057f20f883e"(密码哈希)_login_token = "token_123456"(登录令牌)_internal_state = "init"(实例内部状态)_email_verified = False(邮箱是否验证) __password(双下划线,慎用,触发名称改写)_Password(首字母大写,不规范)_loginToken(驼峰,不符合蛇形)password(无下划线,无法标识私有)
强私有实例变量 双下划线开头 + 蛇形命名(慎用,防止子类覆盖) __secret_key = "abc_xyz_123"(加密密钥)__transaction_id = "trans_20251226"(交易流水号)__core_config = {}(核心配置,禁止子类修改) ___secret_key(多下划线,冗余混乱)__SecretKey(混合大小写,不规范)__secret-key(含连字符,语法错误)__secretkey(无下划线,可读性差)
完整代码示例(实例变量命名)

python

运行

复制代码
class User:
    # 类变量(常量)
    MIN_REGISTER_AGE = 18  # 最小注册年龄

    def __init__(self, user_id, username, phone):
        # 1. 普通实例变量(蛇形命名,实例独有)
        self.user_id = user_id  # 用户唯一标识
        self.username = username  # 用户名
        self.phone_number = phone  # 联系电话
        self.age = None  # 年龄
        self.register_time = None  # 注册时间
        self.is_active = True  # 账号是否激活
        self.user_avatar = None  # 用户头像地址
        self.receive_addresses = []  # 收货地址列表

        # 2. 私有实例变量(单下划线开头,类内操作)
        self._email = None  # 邮箱(外部不建议直接访问)
        self._login_count = 0  # 登录次数(内部统计)
        self._email_verified = False  # 邮箱验证状态(内部标识)
        self._last_login_time = None  # 最后登录时间

        # 3. 强私有实例变量(双下划线开头,防止子类覆盖)
        self.__password_hash = None  # 密码哈希值(核心隐私数据)
        self.__secret_token = None  # 用户专属秘钥(禁止子类修改)

    def set_email(self, email):
        # 类内操作私有实例变量
        self._email = email

    def update_password(self, new_password_hash):
        # 类内操作强私有实例变量
        self.__password_hash = new_password_hash

    def add_login_count(self):
        self._login_count += 1

四、避坑补充:易出错的命名场景示例

  1. 禁止类变量与实例变量同名:会导致实例访问时优先读取实例变量,逻辑混乱

    python

    运行

    复制代码
    # 错误示例
    class BadExample:
        name = "默认名称"  # 类变量
        def __init__(self, name):
            self.name = name  # 实例变量与类变量同名,易混淆
    
    # 正确示例
    class GoodExample:
        default_name = "默认名称"  # 类变量(改名避免冲突)
        def __init__(self, name):
            self.name = name  # 实例变量
  2. 可变类型类变量命名:仍遵循类变量规则,语义体现 "集合 / 映射" 特性

    python

    运行

    复制代码
    class Cart:
        DEFAULT_ITEMS = ["环保购物袋"]  # 常量类变量(全大写)
        _hot_recommend_items = ["纸巾", "矿泉水"]  # 私有类变量(单下划线)
        total_cart_count = 0  # 普通类变量(蛇形命名)

总结

表格

变量类型 核心命名规则 经典示例汇总
类变量 普通:蛇形;常量:全大写;私有:单下划线 total_usersMAX_RETRY_internal_cache
实例变量 普通:蛇形;私有:单下划线;强私有:双下划线 phone_number_password__secret_key

这些示例均符合 PEP 8 规范,既能清晰区分变量归属(类 / 实例),又能通过名称直观理解用途,可直接在实际项目中复用。

jDpaTrAcKinG.coM

www.jDpaTrAcKinG.coM

a1b2.jDpaTrAcKinG.coM

sky07.jDpaTrAcKinG.coM

run89.jDpaTrAcKinG.coM

link22.jDpaTrAcKinG.coM

cool56.jDpaTrAcKinG.coM

fast31.jDpaTrAcKinG.coM

star44.jDpaTrAcKinG.coM

zone78.jDpaTrAcKinG.coM

net19.jDpaTrAcKinG.coM

top63.jDpaTrAcKinG.coM

fire27.jDpaTrAcKinG.coM

soft51.jDpaTrAcKinG.coM

page35.jDpaTrAcKinG.coM

live81.jDpaTrAcKinG.coM

data04.jDpaTrAcKinG.coM

tool66.jDpaTrAcKinG.coM

hub29.jDpaTrAcKinG.coM

wave53.jDpaTrAcKinG.coM

peak12.jDpaTrAcKinG.coM

smart77.jDpaTrAcKinG.coM

meta33.jDpaTrAcKinG.coM

flow48.jDpaTrAcKinG.coM

core09.jDpaTrAcKinG.coM

wave21.jDpaTrAcKinG.coM

mint69.jDpaTrAcKinG.coM

tech15.jDpaTrAcKinG.coM

byte42.jDpaTrAcKinG.coM

grid58.jDpaTrAcKinG.coM

pool37.jDpaTrAcKinG.coM

key84.jDpaTrAcKinG.coM

raw06.jDpaTrAcKinG.coM

clip61.jDpaTrAcKinG.coM

nest24.jDpaTrAcKinG.coM

pure55.jDpaTrAcKinG.coM

rack17.jDpaTrAcKinG.coM

dash72.jDpaTrAcKinG.coM

fold39.jDpaTrAcKinG.coM

mint46.jDpaTrAcKinG.coM

iron02.jDpaTrAcKinG.coM

vein64.jDpaTrAcKinG.coM

glow26.jDpaTrAcKinG.coM

path52.jDpaTrAcKinG.coM

hive14.jDpaTrAcKinG.coM

drift79.jDpaTrAcKinG.coM

slot32.jDpaTrAcKinG.coM

bulk49.jDpaTrAcKinG.coM

bond08.jDpaTrAcKinG.coM

gaze67.jDpaTrAcKinG.coM

rust23.jDpaTrAcKinG.coM

veil57.jDpaTrAcKinG.coM

book.jDpaTrAcKinG.coM/article/B2c3D4e5F6.html

book.jDpaTrAcKinG.coM/article/C3d4E5f6G7.html

book.jDpaTrAcKinG.coM/article/D4e5F6g7H8.html

book.jDpaTrAcKinG.coM/article/E5f6G7h8I9.html

book.jDpaTrAcKinG.coM/article/F6g7H8i9J0.html

book.jDpaTrAcKinG.coM/article/G7h8I9j0K1.html

book.jDpaTrAcKinG.coM/article/H8i9J0k1L2.html

book.jDpaTrAcKinG.coM/article/I9j0K1l2M3.html

book.jDpaTrAcKinG.coM/article/J0k1L2m3N4.html

book.jDpaTrAcKinG.coM/article/K1l2M3n4O5.html

book.jDpaTrAcKinG.coM/article/L2m3N4o5P6.html

book.jDpaTrAcKinG.coM/article/M3n4O5p6Q7.html

book.jDpaTrAcKinG.coM/article/N4o5P6q7R8.html

book.jDpaTrAcKinG.coM/article/O5p6Q7r8S9.html

book.jDpaTrAcKinG.coM/article/P6q7R8s9T0.html

book.jDpaTrAcKinG.coM/blog/Q7r8S9t0U1.html

book.jDpaTrAcKinG.coM/blog/R8s9T0u1V2.html

book.jDpaTrAcKinG.coM/blog/S9t0U1v2W3.html

book.jDpaTrAcKinG.coM/blog/T0u1V2w3X4.html

book.jDpaTrAcKinG.coM/blog/U1v2W3x4Y5.html

book.jDpaTrAcKinG.coM/blog/V2w3X4y5Z6.html

book.jDpaTrAcKinG.coM/blog/W3x4Y5z6A7.html

book.jDpaTrAcKinG.coM/blog/X4y5Z6a7B8.html

book.jDpaTrAcKinG.coM/blog/Y5z6A7b8C9.html

book.jDpaTrAcKinG.coM/blog/Z6a7B8c9D0.html

book.jDpaTrAcKinG.coM/article/a7B8c9D0e1.html

book.jDpaTrAcKinG.coM/article/b8C9d0E1f2.html

book.jDpaTrAcKinG.coM/article/c9D0e1F2g3.html

book.jDpaTrAcKinG.coM/article/d0E1f2G3h4.html

book.jDpaTrAcKinG.coM/article/e1F2g3H4i5.html

book.jDpaTrAcKinG.coM/article/f2G3h4I5j6.html

book.jDpaTrAcKinG.coM/article/g3H4i5J6k7.html

book.jDpaTrAcKinG.coM/article/h4I5j6K7l8.html

book.jDpaTrAcKinG.coM/article/i5J6k7L8m9.html

book.jDpaTrAcKinG.coM/article/j6K7l8M9n0.html

book.jDpaTrAcKinG.coM/article/k7L8m9N0o1.html

book.jDpaTrAcKinG.coM/article/l8M9n0O1p2.html

book.jDpaTrAcKinG.coM/article/m9N0o1P2q3.html

book.jDpaTrAcKinG.coM/article/n0O1p2Q3r4.html

book.jDpaTrAcKinG.coM/article/o1P2q3R4s5.html

book.jDpaTrAcKinG.coM/article/p2Q3r4S5t6.html

book.jDpaTrAcKinG.coM/article/q3R4s5T6u7.html

book.jDpaTrAcKinG.coM/article/r4S5t6U7v8.html

book.jDpaTrAcKinG.coM/article/s5T6u7V8w9.html

book.jDpaTrAcKinG.coM/article/t6U7v8W9x0.html

book.jDpaTrAcKinG.coM/article/u7V8w9X0y1.html

book.jDpaTrAcKinG.coM/article/v8W9x0Y1z2.html

book.jDpaTrAcKinG.coM/article/w9X0y1Z2a3.html

book.jDpaTrAcKinG.coM/article/x0Y1z2A3b4.html

bbs.jDpaTrAcKinG.coM/article/A1b2C3d4E5.html

bbs.jDpaTrAcKinG.coM/article/B2c3D4e5F6.html

bbs.jDpaTrAcKinG.coM/article/C3d4E5f6G7.html

bbs.jDpaTrAcKinG.coM/article/D4e5F6g7H8.html

bbs.jDpaTrAcKinG.coM/article/E5f6G7h8I9.html

bbs.jDpaTrAcKinG.coM/article/F6g7H8i9J0.html

bbs.jDpaTrAcKinG.coM/article/G7h8I9j0K1.html

bbs.jDpaTrAcKinG.coM/article/H8i9J0k1L2.html

bbs.jDpaTrAcKinG.coM/article/I9j0K1l2M3.html

bbs.jDpaTrAcKinG.coM/article/J0k1L2m3N4.html

bbs.jDpaTrAcKinG.coM/article/K1l2M3n4O5.html

bbs.jDpaTrAcKinG.coM/article/L2m3N4o5P6.html

bbs.jDpaTrAcKinG.coM/article/M3n4O5p6Q7.html

bbs.jDpaTrAcKinG.coM/article/N4o5P6q7R8.html

bbs.jDpaTrAcKinG.coM/article/O5p6Q7r8S9.html

bbs.jDpaTrAcKinG.coM/article/P6q7R8s9T0.html

bbs.jDpaTrAcKinG.coM/blog/Q7r8S9t0U1.html

bbs.jDpaTrAcKinG.coM/blog/R8s9T0u1V2.html

bbs.jDpaTrAcKinG.coM/blog/S9t0U1v2W3.html

bbs.jDpaTrAcKinG.coM/blog/T0u1V2w3X4.html

bbs.jDpaTrAcKinG.coM/blog/U1v2W3x4Y5.html

bbs.jDpaTrAcKinG.coM/blog/V2w3X4y5Z6.html

bbs.jDpaTrAcKinG.coM/blog/W3x4Y5z6A7.html

bbs.jDpaTrAcKinG.coM/blog/X4y5Z6a7B8.html

bbs.jDpaTrAcKinG.coM/blog/Y5z6A7b8C9.html

bbs.jDpaTrAcKinG.coM/blog/Z6a7B8c9D0.html

bbs.jDpaTrAcKinG.coM/article/a7B8c9D0e1.html

bbs.jDpaTrAcKinG.coM/article/b8C9d0E1f2.html

bbs.jDpaTrAcKinG.coM/article/c9D0e1F2g3.html

bbs.jDpaTrAcKinG.coM/article/d0E1f2G3h4.html

bbs.jDpaTrAcKinG.coM/article/e1F2g3H4i5.html

bbs.jDpaTrAcKinG.coM/article/f2G3h4I5j6.html

bbs.jDpaTrAcKinG.coM/article/g3H4i5J6k7.html

bbs.jDpaTrAcKinG.coM/article/h4I5j6K7l8.html

bbs.jDpaTrAcKinG.coM/article/i5J6k7L8m9.html

bbs.jDpaTrAcKinG.coM/article/j6K7l8M9n0.html

bbs.jDpaTrAcKinG.coM/article/k7L8m9N0o1.html

bbs.jDpaTrAcKinG.coM/article/l8M9n0O1p2.html

bbs.jDpaTrAcKinG.coM/article/m9N0o1P2q3.html

bbs.jDpaTrAcKinG.coM/article/n0O1p2Q3r4.html

bbs.jDpaTrAcKinG.coM/article/o1P2q3R4s5.html

bbs.jDpaTrAcKinG.coM/article/p2Q3r4S5t6.html

bbs.jDpaTrAcKinG.coM/article/q3R4s5T6u7.html

bbs.jDpaTrAcKinG.coM/article/r4S5t6U7v8.html

bbs.jDpaTrAcKinG.coM/article/s5T6u7V8w9.html

bbs.jDpaTrAcKinG.coM/article/t6U7v8W9x0.html

bbs.jDpaTrAcKinG.coM/article/u7V8w9X0y1.html

bbs.jDpaTrAcKinG.coM/article/v8W9x0Y1z2.html

bbs.jDpaTrAcKinG.coM/article/w9X0y1Z2a3.html

bbs.jDpaTrAcKinG.coM/article/x0Y1z2A3b4.html

mp.jDpaTrAcKinG.coM/article/A2b5C7d1E9.html

mp.jDpaTrAcKinG.coM/article/B3c6D8e2F0.html

mp.jDpaTrAcKinG.coM/article/C4d7E9f3G1.html

mp.jDpaTrAcKinG.coM/article/D5e8F0g4H2.html

mp.jDpaTrAcKinG.coM/article/E6f9G1h5I3.html

mp.jDpaTrAcKinG.coM/article/F7g0H2i6J4.html

mp.jDpaTrAcKinG.coM/article/G8h1I3j7K5.html

mp.jDpaTrAcKinG.coM/article/H9i2J4k8L6.html

mp.jDpaTrAcKinG.coM/article/I0j3K5l9M7.html

mp.jDpaTrAcKinG.coM/article/J1k4L6m0N8.html

mp.jDpaTrAcKinG.coM/article/K2l5M7n1O9.html

mp.jDpaTrAcKinG.coM/article/L3m6N8o2P0.html

mp.jDpaTrAcKinG.coM/article/M4n7O9p3Q1.html

mp.jDpaTrAcKinG.coM/article/N5o8P0q4R2.html

mp.jDpaTrAcKinG.coM/article/O6p9Q1r5S3.html

mp.jDpaTrAcKinG.coM/blog/P7q0R2s6T4.html

mp.jDpaTrAcKinG.coM/blog/Q8r1S3t7U5.html

mp.jDpaTrAcKinG.coM/blog/R9s2T4u8V6.html

mp.jDpaTrAcKinG.coM/blog/S0t3U5v9W7.html

mp.jDpaTrAcKinG.coM/blog/T1u4V6w0X8.html

mp.jDpaTrAcKinG.coM/blog/U2v5W7x1Y9.html

mp.jDpaTrAcKinG.coM/blog/V3w6X8y2Z0.html

mp.jDpaTrAcKinG.coM/blog/W4x7Y9z3A1.html

mp.jDpaTrAcKinG.coM/blog/X5y8Z0a4B2.html

mp.jDpaTrAcKinG.coM/blog/Y6z9A1b5C3.html

mp.jDpaTrAcKinG.coM/blog/Z7a0B2c6D4.html

mp.jDpaTrAcKinG.coM/article/a8b1C3d7E5.html

mp.jDpaTrAcKinG.coM/article/b9c2D4e8F6.html

mp.jDpaTrAcKinG.coM/article/c0d3E5f9G7.html

mp.jDpaTrAcKinG.coM/article/d1e4F6g0H8.html

mp.jDpaTrAcKinG.coM/article/e2f5G7h1I9.html

mp.jDpaTrAcKinG.coM/article/f3g6H8i2J0.html

mp.jDpaTrAcKinG.coM/article/g4h7I9j3K1.html

mp.jDpaTrAcKinG.coM/article/h5i8J0k4L2.html

mp.jDpaTrAcKinG.coM/article/i6j9K1l5M3.html

mp.jDpaTrAcKinG.coM/article/j7k0L2m6N4.html

mp.jDpaTrAcKinG.coM/article/k8l1M3n7O5.html

mp.jDpaTrAcKinG.coM/article/l9m2N4o8P6.html

mp.jDpaTrAcKinG.coM/article/m0n3O5p9Q7.html

mp.jDpaTrAcKinG.coM/article/n1o4P6q0R8.html

mp.jDpaTrAcKinG.coM/article/o2p5Q7r1S9.html

mp.jDpaTrAcKinG.coM/article/p3q6R8s2T0.html

mp.jDpaTrAcKinG.coM/article/q4r7S9t3U1.html

mp.jDpaTrAcKinG.coM/article/r5s8T0u4V2.html

mp.jDpaTrAcKinG.coM/article/s6t9U1v5W3.html

mp.jDpaTrAcKinG.coM/article/t7u0V2w6X4.html

mp.jDpaTrAcKinG.coM/article/u8v1W3x7Y5.html

mp.jDpaTrAcKinG.coM/article/v9w2X4y8Z6.html

mp.jDpaTrAcKinG.coM/article/w0x3Y5z9A7.html

mp.jDpaTrAcKinG.coM/article/x1y4Z6a0B8.html

m.jDpaTrAcKinG.coM/article/A3b6C8d2E0.html

m.jDpaTrAcKinG.coM/article/B4c7D9e3F1.html

m.jDpaTrAcKinG.coM/article/C5d8E0f4G2.html

m.jDpaTrAcKinG.coM/article/D6e9F1g5H3.html

m.jDpaTrAcKinG.coM/article/E7f0G2h6I4.html

m.jDpaTrAcKinG.coM/article/F8g1H3i7J5.html

m.jDpaTrAcKinG.coM/article/G9h2I4j8K6.html

m.jDpaTrAcKinG.coM/article/H0i3J5k9L7.html

m.jDpaTrAcKinG.coM/article/I1j4K6l0M8.html

m.jDpaTrAcKinG.coM/article/J2k5L7m1N9.html

m.jDpaTrAcKinG.coM/article/K3l6M8n2O0.html

m.jDpaTrAcKinG.coM/article/L4m7N9o3P1.html

m.jDpaTrAcKinG.coM/article/M5n8O0p4Q2.html

m.jDpaTrAcKinG.coM/article/N6o9P1q5R3.html

m.jDpaTrAcKinG.coM/article/O7p0Q2r6S4.html

m.jDpaTrAcKinG.coM/blog/P8q1R3s7T5.html

m.jDpaTrAcKinG.coM/blog/Q9r2S4t8U6.html

m.jDpaTrAcKinG.coM/blog/R0s3T5u9V7.html

m.jDpaTrAcKinG.coM/blog/S1t4U6v0W8.html

m.jDpaTrAcKinG.coM/blog/T2u5V7w1X9.html

m.jDpaTrAcKinG.coM/blog/U3v6W8x2Y0.html

m.jDpaTrAcKinG.coM/blog/V4w7X9y3Z1.html

m.jDpaTrAcKinG.coM/blog/W5x8Z0a4A2.html

m.jDpaTrAcKinG.coM/blog/X6y9A1b5B3.html

m.jDpaTrAcKinG.coM/blog/Y7z0B2c6C4.html

m.jDpaTrAcKinG.coM/blog/Z8a1C3d7D5.html

m.jDpaTrAcKinG.coM/article/a9b2D4e8E6.html

m.jDpaTrAcKinG.coM/article/b0c3E5f9F7.html

m.jDpaTrAcKinG.coM/article/c1d4F6g0G8.html

m.jDpaTrAcKinG.coM/article/d2e5G7h1H9.html

m.jDpaTrAcKinG.coM/article/e3f6H8i2I0.html

m.jDpaTrAcKinG.coM/article/f4g7I9j3J1.html

m.jDpaTrAcKinG.coM/article/g5h8J0k4K2.html

m.jDpaTrAcKinG.coM/article/h6i9K1l5L3.html

m.jDpaTrAcKinG.coM/article/i7j0L2m6M4.html

m.jDpaTrAcKinG.coM/article/j8k1M3n7N5.html

m.jDpaTrAcKinG.coM/article/k9l2N4o8O6.html

m.jDpaTrAcKinG.coM/article/l0m3O5p9P7.html

m.jDpaTrAcKinG.coM/article/m1n4P6q0Q8.html

m.jDpaTrAcKinG.coM/article/n2o5Q7r1R9.html

m.jDpaTrAcKinG.coM/article/o3p6R8s2S0.html

m.jDpaTrAcKinG.coM/article/p4q7S9t3T1.html

m.jDpaTrAcKinG.coM/article/q5r8T0u4U2.html

m.jDpaTrAcKinG.coM/article/r6s9U1v5V3.html

m.jDpaTrAcKinG.coM/article/s7t0V2w6W4.html

m.jDpaTrAcKinG.coM/article/t8u1W3x7X5.html

m.jDpaTrAcKinG.coM/article/u9v2X4y8Y6.html

m.jDpaTrAcKinG.coM/article/v0w3Y5z9Z7.html

m.jDpaTrAcKinG.coM/article/w1x4Z6a0A8.html

m.jDpaTrAcKinG.coM/article/x2y5A7b1B9.html

相关推荐
吃饱了得干活7 小时前
Spring Cloud Gateway 微服务网关:路由、断言、过滤器
java·spring cloud
lwx572809 小时前
探秘InnoDB:搞懂它的内存、线程、磁盘与日志刷盘策略
java·后端
Flynt11 小时前
从Spring Boot 4.0升到4.1,我在Maven和gRPC上栽了跟头
java·spring boot·后端
plainGeekDev11 小时前
Activity 间传值 → Navigation 参数
android·java·kotlin
plainGeekDev12 小时前
onActivityResult → ActivityResult API
android·java·kotlin
Sunia12 小时前
《AgentX 专栏》10-生产部署:3台2C4G云服务器把企业级Agent真正跑起来的完整方案
java·架构
ZhengEnCi13 小时前
J7A-高级Java工程师面试三道灵魂拷问-深度广度与工程素养的终极检验
java·后端
狼爷1 天前
吃透 Java Function 接口,搞定 99% 的 Stream 场景
java·函数式编程
祎雪双十Gy1 天前
从 DataX 的配置加载说起:我用 FastJson2 做了一个轻量级动态配置管理库
java·后端
小锋java12341 天前
分享一套锋哥原创的SpringBoot4+Vue3宠物领养网站系统
java