当前位置: 首页 > news >正文

堆栈方法区笔记记录

成员变量分两种:
1)实例变量:没有static修饰,属于对象,存储在堆中,有几个对象就有几份,通过对象点来访问
2)静态变量:由static修饰,属于类,存储在方法区中,只有一份,通过类名点来访问

堆:new出来的对象(包括实例变量)
栈:局部变量(包括方法的参数)
方法区:.class字节码文件(包括静态变量、所有方法)

  1. static:

    1)静态变量:
      1.1)由static修饰
      1.2)属于类,存储在方法区中,只有一份
      1.3)常常通过类名点来访问
      1.4)何时用:所有对象所共享的数据(图片、音频、视频等)
    2)静态方法:
      2.1)由static修饰
      2.2)属于类,存储在方法区中,只有一份
      2.3)常常通过类名点来访问
      2.4)静态方法中没有隐式this传递,所以静态方法中不能直接访问实例成员
      2.5)何时用:方法的操作与对象无关
    3)静态块:
      3.1)由static修饰
      3.2)属于类,在类被加载期间自动执行,一个类只被加载一次,所以静态块也只执行一次
      3.3)何时用:加载/初始化静态资源(图片、音频、视频等)
  2. static final常量:

    1)必须声明同时初始化
    2)常常通过类名点来访问,不能被改变
    3)建议:常量名所有字母都大写,多个单词用_分隔
    4)编译器在编译时会将常量直接替换为具体的值,效率高
    5)何时用:数据永远不变,并且经常使用
http://www.lryc.cn/news/140970.html

相关文章:

  • 新版微信小程序获取用户手机号
  • CSS实践 —— 悬浮盒子阴影加上移效果
  • 安全测试基础知识
  • 列表首屏毫秒级加载与自动滚动定位方案
  • 小区物业业主管理信息系统设计的设计与实现(论文+源码)_kaic
  • Fortran 微分方程求解 --ODEPACK
  • 8路光栅尺磁栅尺编码器或16路高速DI脉冲信号转Modbus TCP网络模块 YL99-RJ45
  • 【Python】函数
  • centos安装MySQL 解压版完整教程(按步骤傻瓜式安装
  • 【后端速成 Vue】第一个 Vue 程序
  • Macbook pro M1 安装Ubuntu教程
  • 前端console.log打印内容与后端请求返回数据不一致
  • SQL入门:多表查询
  • 【C++】进一步认识模板
  • Mysql Oracle 区别
  • 华为OD-第K长的连续字母字符串长度
  • 【编程题】有效三角形的个数
  • 【mysql是怎样运行的】-EXPLAIN详解
  • 数据结构例题代码及其讲解-链表
  • [Open-source tool] 可搭配PHP和SQL的表單開源工具_Form tools(1):簡介和建置
  • 移动数据业务价值链的整合
  • 合并两个链表
  • 测试框架pytest教程(9)跳过测试skip和xfail
  • HTML <textarea> 标签
  • 探索图结构:从基础到算法应用
  • Redis之GEO类型解读
  • uniapp 微信小程序 路由跳转
  • 【android12-linux-5.1】【ST芯片】HAL移植后没调起来
  • Redis Lua脚本执行原理和语法示例
  • 百望云华为云共建零售数字化新生态 聚焦数智新消费升级