Java——static修饰符 枚举
静态属性
- 语法定义
- 权限修饰符 static 数据类型 属性名称
- public static int age;
- 使用方法
- 类名.属性名
- 引入静态属性的意义
- 实现数据共享
- 静态属性特点
- 声明为static的属性也被成为类属性
- 当创建一个对象时,并不产生static属性的拷贝
- 该类所有的实例共享一个static属性
- 在类装载时,只分配一块存储空间,所有此类的对象都可以操控此块存储空间
- 静态属性属于类而不属于对象,为不同的对象所共用
- 类名.公有静态属性名
- 对象名.公有静态属性名
- 静态属性值一旦改变,所有类的对象均共享改变
- 对静态属性的初始化不用构造方法
静态方法
- 语法
权限修饰符 static 返回值类型 方法名 (参数列表){ }
public static void main(String[] args) { } - 使用方法 类名.方法名(实参列表)
- 作用:访问静态属性(属性一般为私有)
- 规则:
- 仅能直接调用其他的static类型的方法
- 只能访问static类型的属性
- 不能以任何方式使用this 或 super
- 特点:不调用就不执行(static方法独立于任何实例,因此static方法必须被实现,而不是抽象的)
- java的类库中大量的静态方法(Math等)
静态代码块
- 静态属性的初始化比较简单时,可以在属性定义时进行。如果初始化过程相对比较复杂时,需要用到静态代码块
- 语法
static {
代码块
} - 功能:初始化静态变量(显式的静态变量初始化)
- 特点:仅在该类被加载时执行一次(只执行一次)
- 涉及到继承的时候,会先初始化父类的static代码块,然后是子类 代码块
- 顺序
- 父类的静态代码块
- 子类的静态代码块
- 父类的构造方法
- 子类的构造方法
扩展
- 对比
- 静态代码块
static {
方法体
} - 非静态代码块
{
方法体
}
- 执行顺序
- 静态属性和静态代码块(按照定义顺序,在类被加载的时候只执行一次)
- 非静态属性和非静态代码块(按照定义顺序,在类被实例化的时候执行)
- 构造方法
静态类
- 通常一个普通类是不允许声明为静态的,只有一个内部类才可以
- 声明为静态的内部类可以直接作为一个普通类来使用,不需要实例化一个外部类(可以直接在声明的类里面实例化内容,不用实例化外层的类)
枚举(enum)
- 枚举的本质就是一个class
public enum Color {RED,GREEN,BLUE,YELLOW;//RED(),GREEN(),BLUE(),YELLOW;
}
- 枚举的成员就是枚举对象,只不过他们是静态常量(也是变量)
- 枚举可以添加构造方法
- 枚举不可以实例化(编译器会自动为其构造放啊加上private)
- 通只为枚举提供get方法,而不提供set方法
- 枚举中不允许用 = 赋值
- 可以继承接口,不能继承类
- 枚举特点:数值稳定,个数有限
Java——static修饰符 枚举相关推荐
- java反编译工具gd gson,浅谈Android中static修饰符,及Gson转String实例
肯定会很奇怪,为什么要把Gson和Static放一起去讲,因为在开发中,json这个东西是很常用的,不管是格式,还是数据的传递,还是我们与后台之间的交互,都离不开JSON,而今天,是在帮一个同行用ts ...
- java static 修饰_「static」JAVA static是什么?修饰符总结整理 - seo实验室
static 对java中修饰符的总结整理,尤其是static的理解,static总是忘记 其他修饰符修饰的变量有效范围如下: 类内 package内 子类 其他package private yes ...
- 10.0_[Java 封装]-抽象/封装/构造/重载/ static 修饰符
################################################## 目录 抽象编程 面向对象设计的过程 类和对象的关系 为什么使用面向对象 this 关键字 类的成员 ...
- Java中static修饰符的作用
近日在做网络通信服务器和客户端的Java语言开发,碰到了获取客户端长连接Channel对象,利用唯一对象Client的获取方法getSingleClientInstance(),以为可以得到,但是显示 ...
- java static修饰方法_浅析Java中static修饰符
1.概述 static关键字的中文意思是静态的,该修饰符可以修饰字段.方法.内部类.使用该关键字修饰的内容,在面向对象中static修饰的内容是隶属于类,而不是直接隶属于对象的,所以static修饰的 ...
- java(5)---static修饰符
static修饰符 static修饰符的特点: 1):static修饰的成员(字段/方法),随着所在类的加载而加载. 当JVM把字节码加载进JVM的时候,static修饰的成员已经在内存中存在了. 2 ...
- java访问修饰符详解——学java,零基础不怕,不只要理论,更要实践+项目,a href=http://www.bjweixin.com太原维信科技提供 /a...
java访问修饰符详解--学java,零基础不怕,不只要理论,更要实践+项目 <a href=http://www.bjweixin.com>太原维信科技提供 </a> pub ...
- Java访问修饰符(访问控制符)
Java 通过修饰符来控制类.属性和方法的访问权限和其他功能,通常放在语句的最前端.例如: public class className { // body of class } private bo ...
- 3分钟弄明白JAVA三大修饰符
3分钟弄明白JAVA三大修饰符 JAVA的三个修饰:static,final,abstract,在JAVA语言里无处不在,但是它们都能修饰什么组件,修饰组件的含义又有什么限制,总是混淆.所以来总结对比 ...
- 抑制java对修饰符的检查_Java 7对抑制异常的支持
抑制java对修饰符的检查 在JDK 7中 ,向Throwable类( Exception和Error类的父类)添加了一个新的构造函数和两个新方法. 添加了新的构造函数和两个新方法以支持"抑 ...
最新文章
- iOS开发中用到的一些第三方库
- 庞锋 OpenCV 视频 学习进度备忘
- 【QGIS入门实战精品教程】14.1:QGIS如何加载各种在线地图?
- 线程安全问题的 3 种解决方案!
- 在Solaris 下使用Os Watcher 监控Oracle
- Vue3学习笔记- NPM包管理工具
- mac 2k显示器字体发虚_精准色彩体验-优派VP2785-2K
- 银监局计算机英语面试题及答案,2012年国家公务员银监局面试真题及参考答案...
- 企业微信小程序可用存储空间不足_微信小程序为什么能帮助企业商家引流?
- armbian n1 桌面_Armbian5.89桌面版安装OpenMediaVault教程
- 微信APP支付 C#
- MS17-010漏洞复现(带win7虚拟机安装,零基础)
- 如何设置计算机休眠播放幻灯片,如何设置电脑休眠屏保幻灯片
- 传输层常见的协议及端口
- 给找机器学习/算法岗工作的同学们的一些建议
- 《工业控制系统信息安全防护指南》实施建议 (上)
- nao机器人行走速度_基于PID控制的NAO机器人循线行走技术研究
- php汽车找车位,六款停车APP吐血实测 竟能找到免费停车场?
- SAP BOM物料清单详解
- Spring入门须知
热门文章
- 黑石集团(Black Stone)黑岩公司(Black Rock)
- 汇添富基金总经理张晖:以高质量发展打造中国最受认可的资产管理品牌
- Rust: 从csv文件转成kbar的尝试:速度,还有Julia和激情
- 【光学】基于matlab GUI带切趾的光线布拉格光栅滤波特性仿真【含Matlab源码 1505期】
- 【心音信号】基于matlab GUI心音诊断系统【含Matlab源码 762期】
- 【雷达通信】基于matlab雷达数字信号处理【含Matlab源码 281期】
- 【优化预测】基于matlab差分算法优化ANN预测【含Matlab源码 151期】
- 2中我建的表怎么是小写的_面试官:2个线程交替打印大小写英文字母,你会怎么实现?...
- switchyomega规则列表备份_一键备份微博并导出生成PDF,顺便用Python分析微博账号数据...
- python运算符解释_Python运算符的详细介绍