静态属性

  1. 语法定义
  • 权限修饰符 static 数据类型 属性名称
  • public static int age;
  1. 使用方法
  • 类名.属性名
  1. 引入静态属性的意义
  • 实现数据共享
  1. 静态属性特点
  • 声明为static的属性也被成为类属性
  • 当创建一个对象时,并不产生static属性的拷贝
  • 该类所有的实例共享一个static属性
  • 在类装载时,只分配一块存储空间,所有此类的对象都可以操控此块存储空间
  1. 静态属性属于类而不属于对象,为不同的对象所共用
  • 类名.公有静态属性名
  • 对象名.公有静态属性名
  1. 静态属性值一旦改变,所有类的对象均共享改变
  2. 对静态属性的初始化不用构造方法

静态方法

  1. 语法
    权限修饰符 static 返回值类型 方法名 (参数列表){ }
    public static void main(String[] args) { }
  2. 使用方法 类名.方法名(实参列表)
  3. 作用:访问静态属性(属性一般为私有)
  4. 规则:
  • 仅能直接调用其他的static类型的方法
  • 只能访问static类型的属性
  • 不能以任何方式使用this 或 super
  1. 特点:不调用就不执行(static方法独立于任何实例,因此static方法必须被实现,而不是抽象的
  2. java的类库中大量的静态方法(Math等)

静态代码块

  1. 静态属性初始化比较简单时,可以在属性定义时进行。如果初始化过程相对比较复杂时,需要用到静态代码块
  2. 语法
    static {
    代码块
    }
  3. 功能:初始化静态变量(显式的静态变量初始化)
  4. 特点:仅在该类被加载时执行一次(只执行一次)
  5. 涉及到继承的时候,会先初始化父类的static代码块,然后是子类 代码块
  6. 顺序
  • 父类的静态代码块
  • 子类的静态代码块
  • 父类的构造方法
  • 子类的构造方法
扩展
  1. 对比
  • 静态代码块
    static {
    方法体
    }
  • 非静态代码块
    {
    方法体
    }
  1. 执行顺序
  • 静态属性和静态代码块(按照定义顺序,在类被加载的时候只执行一次)
  • 非静态属性和非静态代码块(按照定义顺序,在类被实例化的时候执行)
  • 构造方法

静态类

  1. 通常一个普通类是不允许声明为静态的,只有一个内部类才可以
  2. 声明为静态的内部类可以直接作为一个普通类来使用,不需要实例化一个外部类(可以直接在声明的类里面实例化内容,不用实例化外层的类)

枚举(enum)

  1. 枚举的本质就是一个class
public enum Color {RED,GREEN,BLUE,YELLOW;//RED(),GREEN(),BLUE(),YELLOW;
}
  • 枚举的成员就是枚举对象,只不过他们是静态常量(也是变量)
  • 枚举可以添加构造方法
  • 枚举不可以实例化(编译器会自动为其构造放啊加上private)
  • 通只为枚举提供get方法,而不提供set方法
  • 枚举中不允许用 = 赋值
  • 可以继承接口,不能继承类
  1. 枚举特点:数值稳定,个数有限

Java——static修饰符 枚举相关推荐

  1. java反编译工具gd gson,浅谈Android中static修饰符,及Gson转String实例

    肯定会很奇怪,为什么要把Gson和Static放一起去讲,因为在开发中,json这个东西是很常用的,不管是格式,还是数据的传递,还是我们与后台之间的交互,都离不开JSON,而今天,是在帮一个同行用ts ...

  2. java static 修饰_「static」JAVA static是什么?修饰符总结整理 - seo实验室

    static 对java中修饰符的总结整理,尤其是static的理解,static总是忘记 其他修饰符修饰的变量有效范围如下: 类内 package内 子类 其他package private yes ...

  3. 10.0_[Java 封装]-抽象/封装/构造/重载/ static 修饰符

    ################################################## 目录 抽象编程 面向对象设计的过程 类和对象的关系 为什么使用面向对象 this 关键字 类的成员 ...

  4. Java中static修饰符的作用

    近日在做网络通信服务器和客户端的Java语言开发,碰到了获取客户端长连接Channel对象,利用唯一对象Client的获取方法getSingleClientInstance(),以为可以得到,但是显示 ...

  5. java static修饰方法_浅析Java中static修饰符

    1.概述 static关键字的中文意思是静态的,该修饰符可以修饰字段.方法.内部类.使用该关键字修饰的内容,在面向对象中static修饰的内容是隶属于类,而不是直接隶属于对象的,所以static修饰的 ...

  6. java(5)---static修饰符

    static修饰符 static修饰符的特点: 1):static修饰的成员(字段/方法),随着所在类的加载而加载. 当JVM把字节码加载进JVM的时候,static修饰的成员已经在内存中存在了. 2 ...

  7. java访问修饰符详解——学java,零基础不怕,不只要理论,更要实践+项目,a href=http://www.bjweixin.com太原维信科技提供 /a...

    java访问修饰符详解--学java,零基础不怕,不只要理论,更要实践+项目 <a href=http://www.bjweixin.com>太原维信科技提供 </a> pub ...

  8. Java访问修饰符(访问控制符)

    Java 通过修饰符来控制类.属性和方法的访问权限和其他功能,通常放在语句的最前端.例如: public class className { // body of class } private bo ...

  9. 3分钟弄明白JAVA三大修饰符

    3分钟弄明白JAVA三大修饰符 JAVA的三个修饰:static,final,abstract,在JAVA语言里无处不在,但是它们都能修饰什么组件,修饰组件的含义又有什么限制,总是混淆.所以来总结对比 ...

  10. 抑制java对修饰符的检查_Java 7对抑制异常的支持

    抑制java对修饰符的检查 在JDK 7中 ,向Throwable类( Exception和Error类的父类)添加了一个新的构造函数和两个新方法. 添加了新的构造函数和两个新方法以支持"抑 ...

最新文章

  1. iOS开发中用到的一些第三方库
  2. 庞锋 OpenCV 视频 学习进度备忘
  3. 【QGIS入门实战精品教程】14.1:QGIS如何加载各种在线地图?
  4. 线程安全问题的 3 种解决方案!
  5. 在Solaris 下使用Os Watcher 监控Oracle
  6. Vue3学习笔记- NPM包管理工具
  7. mac 2k显示器字体发虚_精准色彩体验-优派VP2785-2K
  8. 银监局计算机英语面试题及答案,2012年国家公务员银监局面试真题及参考答案...
  9. 企业微信小程序可用存储空间不足_微信小程序为什么能帮助企业商家引流?
  10. armbian n1 桌面_Armbian5.89桌面版安装OpenMediaVault教程
  11. 微信APP支付 C#
  12. MS17-010漏洞复现(带win7虚拟机安装,零基础)
  13. 如何设置计算机休眠播放幻灯片,如何设置电脑休眠屏保幻灯片
  14. 传输层常见的协议及端口
  15. 给找机器学习/算法岗工作的同学们的一些建议
  16. 《工业控制系统信息安全防护指南》实施建议 (上)
  17. nao机器人行走速度_基于PID控制的NAO机器人循线行走技术研究
  18. php汽车找车位,六款停车APP吐血实测 竟能找到免费停车场?
  19. SAP BOM物料清单详解
  20. Spring入门须知

热门文章

  1. 黑石集团(Black Stone)黑岩公司(Black Rock)
  2. 汇添富基金总经理张晖:以高质量发展打造中国最受认可的资产管理品牌
  3. Rust: 从csv文件转成kbar的尝试:速度,还有Julia和激情
  4. 【光学】基于matlab GUI带切趾的光线布拉格光栅滤波特性仿真【含Matlab源码 1505期】
  5. 【心音信号】基于matlab GUI心音诊断系统【含Matlab源码 762期】
  6. 【雷达通信】基于matlab雷达数字信号处理【含Matlab源码 281期】
  7. 【优化预测】基于matlab差分算法优化ANN预测【含Matlab源码 151期】
  8. 2中我建的表怎么是小写的_面试官:2个线程交替打印大小写英文字母,你会怎么实现?...
  9. switchyomega规则列表备份_一键备份微博并导出生成PDF,顺便用Python分析微博账号数据...
  10. python运算符解释_Python运算符的详细介绍