搞懂静态变量static
文章目录
- 1.什么是static?
- 2.static关键字的作用是什么?
- 3.静态变量和非静态变量的区别?
- 4.static可以修饰局部变量吗?
- 5.可以通过this访问静态变量吗?
- 6.静态方法能否调用非静态方法?
- 7.静态变量、普通变量、静态代码块、普通代码块和构造函数的执行顺序是什么?
- 8.静态方法可以被重写吗?
- 9.抽象(abstract)方法能否是静态的(static)?
1.什么是static?
static表示全局或静态的意思,可以用来修饰变量、方法或代码块。
2.static关键字的作用是什么?
没有创建对象时,也可以通过类名调用方法和变量。
3.静态变量和非静态变量的区别?
- 静态变量仅在类初次加载时会被初始化,非静态变量在创建对象时被初始化。
- 静态变量在内存中只有一个副本;非静态变量存在多个副本,各个对象拥有的副本互不影响。
- 静态变量可以通过类和对象访问,非静态变量只能通过对象访问。
- 静态变量存储在方法区,非静态变量存储在堆。
4.static可以修饰局部变量吗?
java语法不允许
5.可以通过this访问静态变量吗?
可以。this代表当前对象,静态变量虽然独立于对象,但所有的静态方法和静态变量都可以通过对象访问。
6.静态方法能否调用非静态方法?
不可以,非静态方法依赖对象的创建。
7.静态变量、普通变量、静态代码块、普通代码块和构造函数的执行顺序是什么?
静态变量 → 静态代码块 → 普通变量 → 普通代码块 → 构造函数
8.静态方法可以被重写吗?
子类可以拥有一个与父类静态方法相同的方法,编译不会报错,但重写不会生效。
方法的重写/覆盖是基于运行时动态绑定的,而static方法是编译时静态绑定的。
9.抽象(abstract)方法能否是静态的(static)?
不能,抽象方法等待重写,而static方法静态时编译,不可重写。
搞懂静态变量static相关推荐
- 静态变量static(C)
static static是C语言关键字之一. static 数据类型用来给变量创建永久存储空间.静态变量在函数间调用时保持他们的值不变. 它的语法结构为: static c_type data_na ...
- 静态变量(static variable)
静态变量(static variable) 我们可以创建具有 块作用域.无链接.静态存储期 的局部静态变量.其与局部自动变量一样,具有相同的作用域,但是程序在离开它们所在函数后,静态变量不会消失,在多 ...
- java 静态全局变量_静态变量static和全局变量global
静态变量static , 全局变量global 静态变量 在java也叫类变量从名字可以看出它是属于某个类的而不是类的实例.它的关键字是static存储在静态存储区,当程序执行,类的代码被加载到内存, ...
- Systemverilog 静态变量 (static) 与 动态变量(automatic) 区别
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 静态变量 Static 动态变量 Automatic 一.静态变量和动态变量的定义 二.静态变量与动态变量应用举例 总结 静 ...
- C语言静态变量static的分析
对C语言静态变量static分析,解释了static为什么在局部变量里面定义的时候不会随着函数执行完毕而销毁,也稍微用解释了静态存储区和动态存储区的小知识 文章目录 学习static前要先认识 sta ...
- 静态变量static的理解
static static是C语言关键字之一. static 数据类型用来给变量创建永久存储空间.静态变量在函数间调用时保持他们的值不变. 它的语法结构为: static c_type data_na ...
- c++ 类中静态变量 static
类中的静态变量 由于声明为static的变量只被初始化一次,因为它们在单独的静态存储中分配了空间,因此类中的静态变量由对象共享.对于不同的对象,不能有相同静态变量的多个副本.也是因为这个原因,静态变量 ...
- php的静态变量static在函数内部
静态变量放在函数内 <?phpheader('content-type:text/html;charset=utf-8');function fun(){static $num=1;$num++ ...
- Java中的类变量(静态变量static的具体用法快速入门))
文章目录 问题分析 修改过后的代码 运行结果 先看一段代码 package study_static;public class Childgame {public static void main(S ...
最新文章
- 【文本分类】A C-LSTM Neural Network for Text Classification
- ADT 怎么删除logcat过滤规则
- 交叉表 列字段排序_PowerBI创建日期表
- 【.Net 学习系列】-- EF Core实践(Code First)
- 为什么都用m3u8_为什么中国人都喜欢用红砖盖房?
- C#——Lambda表达式与泛型委托DEMO
- 来自Riot 的一份游戏美术教程(三):角色设计
- oracle执行脚本顺序执行吗,【ORACLE】记录通过执行Oracle的执行计划查询SQL脚本中的效率问题 - 不及格的飞鱼...
- 用html5播放两个视频,HTML5视频 - 如何进行无缝播放和/或几个视频循环?
- linux dns中文域名,Linux 搭建中文域名的DNS服务器
- dell笔记本插上耳机没有声音_跑男的耳机没有声音,沙溢只用一句话诈出来,不愧是《王牌》常客...
- python中的for语句可以在任意序列_python在循环内任意增加迭代器
- 关于NDK及安装使用
- Qt + 运动控制 (固高运动控制卡)【3】运动控制卡几种常用的回零方式
- [已失效]坦白说(查看好友)抓包教程+解密工具
- Win11系统pin码忘记了怎么办?Win11忘记pin码解决方法
- 双网卡 跃点_关于windows 双网卡和跃点数研究
- 阿里云体验--搭建超级小班课网课系统
- Three.js样条曲线、贝赛尔曲线
- mvn No proxies configured downloading directly
热门文章
- linux加密框架 crypto 算法管理 - 算法查找接口
- C++primer第十章 泛型算法 10.3 定制操作
- MacOS 的 zsh 和 bash 切换
- HEVC 编解码资源
- 生成多个 SSH-Key 、生成多个公钥和私钥
- 解决:Error response from daemon: Cannot restart container xxx: driver failed programming external
- 设置 git pull 无需输入账号和密码
- chrome 谷歌浏览器怎么添加Axure扩展
- Android - AsyncTask你知道多少?
- face++算法工程实习生面试