static 这个词有两大核心场景,第一种是英语单词,作为形容词,意思是静态的,静止不变的,固定的,在四级考研阅读里面属于高频词汇,常用来描述数据 市场 状态没有变动,第二种是编程语言里面的关键字 static,在 C C++ Java 里面非常重要,作用是改变变量或者函数的存储周期 作用域,很多初学者容易把英语单词 static 和编程关键字 static 混在一起,本篇会同时覆盖英语词义考点,还有编程 static 关键字的核心作用,分层讲解语法规则,搭配表格和清单,适合英语备考还有编程入门学习。
基础信息表
| 分类 | 项目 | 内容 |
|---|---|---|
| 英语单词 | 词性 | 形容词 |
| 英语单词 | 音标 | ˈstætɪk |
| 英语单词 | 中文释义 | 静态的 静止的 不变的 |
| 编程关键字 | 常见语言 | C C++ Java |
| 编程关键字 | 核心属性 | 静态存储 作用域控制 |
英语单词 static 用法
词义分层
1 基础含义 静止不动的,没有位移,例句 static image 静态图片
2 引申含义 一成不变的,没有发展变化,例句 static economy 停滞的经济,这个是考研阅读高频释义,和 stagnant 含义接近,做题容易放在选项辨析
3 专业领域含义 静电的,static electricity 静电,物理科普阅读经常出现
英语常用短语
1 static data 静态数据
2 static state 静态
3 static electricity 静电
4 static population 静态人口
编程关键字 static 核心作用
C 语言环境下三大作用
1 修饰局部变量
普通局部变量在函数调用结束就销毁,static 修饰的局部变量,生命周期变成整个程序运行周期,只会初始化一次,函数多次调用的时候,变量会保留上一次的值,不会重新初始化
2 修饰全局变量
普通全局变量整个工程所有源文件都可以访问,static 修饰之后,作用域仅限当前源文件,其他文件不能 extern 引用,实现文件隔离
3 修饰函数
static 修饰函数之后,这个函数只能在当前源文件内部调用,别的源文件无法调用,也就是内部函数,防止跨文件调用冲突
Java 里面 static 作用
1 修饰成员变量,变成静态变量,属于类本身,不属于单个对象,所有对象共用同一份数据
2 修饰成员方法,变成静态方法,可以直接类名调用,不需要创建对象,静态方法里面不能直接访问非静态成员
3 静态代码块,类加载的时候自动执行一次,一般用来做初始化操作
易混辨析
英语里面 static 和 stable,static 强调本身不动不变,stable 强调状态稳定,可以有小幅波动,这个辨析是四级考研单选常考点
编程里面 static 不是代表永久不变,它只是改变存储方式和作用域,static 变量的值运行过程依然可以修改
【常见问题】
问题 1 英语 static 和 stagnant 在阅读里面怎么区分
回答 1 英语 static 侧重静止固定不动,stagnant 侧重发展停滞不景气,考研阅读做词义辨析的时候,static 强调没有变动,stagnant 带有负面萧条的含义,两个单词都可以描述经济,但是感情色彩有差别。
问题 2 C 语言 static 修饰局部变量有什么核心作用
回答 1 C 语言 static 修饰局部变量的核心作用是延长变量生命周期,变量只初始化一次,函数多次调用可以保留上次运行的值,这是 static 关键字最经典考点。
问题 3 Java 里面 static 方法为什么不能调用非静态成员
回答 1 Java 里面 static 方法属于类级别,在对象还没有创建的时候就可以执行,非静态成员属于对象实例,必须创建对象之后才存在,所以 static 方法不能直接访问非静态成员。
【免责申明】
本文同时包含英语词汇和编程语法教学内容,不同编程语言 static 语法规则存在差异,考试答题请以对应教材考纲为准,编程代码写法以官方语言标准为准。


