Static和static block(静态块)的用法
一、用法:是一个修饰符,用于修饰成员(成员变量 成员函数)被动态所共享
当成员被静态修饰后,就多了一种调用方式,除了可以被对象调用外,还可以直接被类名调用。 类名.静态成员
二、static特点:
1,随着类的加载而加载
2,优先于对象存在 明确一点:静态是先存在的,对象后存在
3,被所有对象所共享
4,可以直接被类名调用
三、静态使用注意事项:
1,静态方法只能访问静态成员
非静态方法既可以访问静态成员,也可以访问非静态
2,静态方法中不可以定义this,super关键字
因为静态优先于对象存在。所以静态方法中不可以出现this,super
3,主函数是静态的
四、静态有利有弊
利:对对象的共享数据进行单独空间的存储,节省空间,没有必要每一个对象都存储一份,还有就是可以直接被类名调用。
弊:生命周期过长。访问出现局限性
五、静态代码块
静态代码块(static block ),不包含在任何方法体中当类被载入时,自动执行静态代码块,且只被执行一次经常用于类属性的初始化。
1. 格式:
static
{
静态代码块中的执行语句。
}
2.特点:随着类的加载而执行,只执行一次,并优先于主函数,用于给类进行初始化。
Static和static block(静态块)的用法的更多相关文章
- this关键字、static关键字、block块、封装类以及继承、import、修饰符的初步了解
this关键字 定义 在类的方法定义中使用this关键字代表使用该方法的引用. this即"自己",代表对象本身,谁调用代表谁.在成员方法中或构造器中隐式的传递. this的两种用 ...
- 9、包、访问控制、import、static、static代码块、final、抽象类、接口、instanceof、多态
1.包 三级命名:公司的尾缀(com).公司名字(baidu).业务(Sale) java.lang:默认包:String.Math,Object,System java.util:工具包 java. ...
- Block 的基本用法
iOS中Block的基础用法 转载自简书 本文简介 本章不会对Block做过多的实现研究.只是讲解基本的用法.纯粹基础知识.结合实际项目怎么去做举例.Block使用场景,可以在两个界面的传值,也可以对 ...
- Block的基本用法
NSString* (^myBlock)(NSString*, int); myBlock = ^(NSString *name, int age){ return [NSString stringW ...
- 牛客网Java刷题知识点之关键字static、static成员变量、static成员方法、static代码块和static内部类
不多说,直接上干货! 牛客网Java刷题知识点之关键字static static代表着什么 在Java中并不存在全局变量的概念,但是我们可以通过static来实现一个“伪全局”的概念,在Java中st ...
- 【C++】const,static和static const类型成员变量声明及其初始化
1)const定义的常量在超出其作用域之后其空间会被释放,而static定义的静态常量在函数执行后不会释放其存储空间 void f1() { ; cout<<x<<endl; ...
- php static 关键字在 函数中的用法
至于在类中声明为 static 的属性和方法,这里不描述php中的变量作用范围的另一个重要特性就是静态变量(static 变量).静态变量仅在局部函数域中存在且只被初始化一次,当程序执行离开此作用域时 ...
- java中this关键字和static关键字和super关键字的用法
this关键字 1. this 关键字是类内部当中对自己的一个引用,可以方便类中方法访问自己的属性: 2.可以返回对象的自己这个类的引用,同时还可以在一个构造函数当中调用另一个构造函数(这里面上面有个 ...
- CSS里Postion几个取值relative、absolute、static、fixed的区别和用法
---恢复内容开始--- static:静态定位,也是postion的默认值,没有定位,元素出现在正常的流中,忽略top\bottom\left\right或者z-index声明. relative: ...
随机推荐
- 关于springmvc中常用的注解,自己也整理一下
1.@Controller 在springMVC中@controller主要用在控制层的类上,之前只知道用注解开发的时候必须加一个@controller ,今天看了别的大佬整理的才知道为什么这么用,控 ...
- [Telegram X]旧版分享 突破被锁群组
Telegram X的锁群是由于 App Store 审核时发现Telegram官方并不限制18+.社会舆论等的讨论:在 版本 5.0.2 (版本号825487096)时就已经封禁该类群组 注:可能由 ...
- CodeForces 604A(浮点数)
这道题需要注意一个点,浮点数的误差问题 判断里的0.3*a[i]换成3*a[i]/10就过了 这个后面还要专门研究一下 #include <iostream> #include <s ...
- 阿里云CentOS7.3配置Java Web应用和Tomcat步骤
阿里云的Linux系统包括CentOS7.3配置了密钥对 怎样将自己ECS实例绑定密钥对,并启用秘钥: https://help.aliyun.com/document_detail/51798.ht ...
- Inter网关做Team的方法
1.到Inter官网上找到相关驱动程序 2.在安装过程中,要求勾选高级网络 3.驱动安装完成后,打开网卡的属性窗口,在“分组”选项卡中,勾中,并输入Team名称 4.选择需要做Team的网卡 5.选择 ...
- JQuery实现获取多个input输入框的值,并存放在一个数组中
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- H5上滑跳转页面
方法一: jquery方法 movePage($('body')); function movePage(dom) { var startY, moveY, moveSpave; dom.on(&qu ...
- Bootstrap学习笔记(排版)
bootstrap简介: ☑ 简单灵活可用于架构流行的用户界面和交互接口的html.css.javascript工具集. ☑ 基于html5.css3的bootstrap,具有大量的诱人特性:友好 ...
- drupal7区块内容对象
区块内容对象
- 【MFC】转:在CHtmlView中判断页面加载完成
在列出别人的代码前,记录下自己的,覆盖父类的OnNavigateComplete2函数即可. typedef struct _tagEventURL { CString strUrl; HANDLE ...