你不知道的Static
Static静态字段,静态方法,静态代码块
壹 简介
一些场景下会要求一个类的多个实例共享一个成员变量;有时候想定义一些不和具体对象关联、不需要new就调用的方法
举例:Console类的WriteLine,MessageBox的Show。这个时候就要使用静态。
所谓静态方法、静态成员是类的方法、类的成员,他不归属于任何一个对象。因此不用new出来,直接类型.静态方法()就能用了。
贰 特征
1、static变量不需要new就可以直接通过类名调用。static变量是共享的内存空间,非static变量则是对象隔离的。
2、static 方法中无法使用this关键字,因为static独立于对象存在,不是任何人的唯一。
3、static成员中只能访问static成员,不能直接访问非static成员。非static成员可以访问static成员。
叁 静态代码块
1. 示例
class MyTest{ static MyTest() { Console.WriteLine("静态代码块"); } public MyTest() { Console.WriteLine("构造方法"); } }MyTest t1 = new MyTest(); MyTest t2 = new MyTest(); public class MyJingTaiDaimaKuai { public static int i = test1();//最开始执行 public int age = test2();//new的时候先执行成员变量的初始化,再执行构造函数 static MyJingTaiDaimaKuai() { Console.WriteLine("静态代码块");//再执行 } public MyJingTaiDaimaKuai() { Console.WriteLine("构造函数"); } public static int test1() { Console.WriteLine("test1"); return 3; } public static int test2() { Console.WriteLine("test2"); return 333; } }MyJingTaiDaimaKuai a1 = new MyJingTaiDaimaKuai();Console.WriteLine(a1.age);MyJingTaiDaimaKuai a2 = new MyJingTaiDaimaKuai();Console.WriteLine(a2.age);你不知道的Static的更多相关文章
- 你不知道的JavaScript--Item1 严格模式
本文转自[阮一峰博客]:http://www.ruanyifeng.com/blog/2013/01/javascript_strict_mode.html 一.概述 除了正常运行模式,ECMAscr ...
- 你不知道的JavaScript(下卷) (Kyle Simpson 著)
第一部分 起步上路 第1章 深入编程 1.1 代码 1.2 表达式 1.3 实践 1.3.1 输出 1.3.2 输入 1.4 运算符 1.5 值与类型 1.6 代码注释 1.7 变量 1.8 块 1. ...
- Java你不知道的那些事儿—Java隐藏特性(上)
每种语言都很强大,不管你是像我一样的初学者还是有过N年项目经验的大神,总会有你不知道的东西.就其语言本身而言,比如Java,也许你用Java开发了好几年,对其可以说是烂熟于心,但你能保证Java所有的 ...
- 从头认识java-特辑-你不知道的main函数
这一章节我们来讨论一下main函数. 对于这个函数大家都不陌生,并且都习以为常.可是当中有一些东西,还是值得我们去总结的. 1.普通的main package com.ray.test; public ...
- Java你不知道的那些事儿—Java隐藏特性
转载自:http://www.cnblogs.com/lanxuezaipiao/p/3460373.html 每 种语言都很强大,不管你是像我一样的初学者还是有过N年项目经验的大神,总会有你不知道的 ...
- Java并发编程 - Runnbale、Future、Callable 你不知道的那点事(二)
Java并发编程 - Runnbale.Future.Callable 你不知道的那点事(一)大致说明了一下 Runnable.Future.Callable 接口之间的关系,也说明了一些内部常用的方 ...
- Java优先队列PriorityQueue的各种打开方式以及一些你不知道的细节
目录 Java优先队列PriorityQueue的各种打开方式以及一些你不知道的细节 优先队列的默认用法-从小到大排序 对String类用优先队列从大到小排序 通过自定义比较器对自定义的类进行从小到大 ...
- static,你还敢用吗?(二)
为了压系统,昨天小组在测试环境模拟了一大批订单数据.今天上午查看记录的账单计息日志,发现了一大堆的MySqlException MySql.Data.MySqlClient.MySqlExceptio ...
- const,static,extern 简介
const,static,extern 简介 一.const与宏的区别: const简介:之前常用的字符串常量,一般是抽成宏,但是苹果不推荐我们抽成宏,推荐我们使用const常量. 执行时刻:宏是预编 ...
随机推荐
- 关于解决乱码问题的一点探索之二(涉及Unicode(utf-16)和GBK)
在上篇日志中(链接),我们讨论了utf-8编码和GBK编码之间转化的乱码问题,这一篇我们讨论Unicode(utf-16编码方式)与GBK编码之间转换的乱码问题. 在Windows系统 ...
- 【beta】Scrum站立会议第5次....11.7
小组名称:nice! 组长:李权 成员:于淼 刘芳芳韩媛媛 宫丽君 项目内容:约跑app(约吧) 时间:2016.11.7 12:00——12:30 地点:传媒西楼220室 本次对beta阶段的 ...
- 爬虫学习之-urlparse之urljoin()
首先导入模块,用help查看相关文档 >>> from urlparse import urljoin >>> help(urljoin) Help on func ...
- 规则引擎之easyRules
规则引擎听起来是蛮高深的一个词语,但透过现象看本质,Martin Fowler 有如下言: You can build a simple rules engine yourself. All you ...
- Django之ORM其他骚操作
Django ORM执行原生SQL # extra # 在QuerySet的基础上继续执行子语句 # extra(self, select=None, where=None, params=None, ...
- shit Rap & mock api
shit Rap & mock api https://thx.github.io/RAP/study.html https://github.com/thx/RAP/wiki/quick_g ...
- Using the command line to manage files on HDFS--转载
原文地址:http://zh.hortonworks.com/hadoop-tutorial/using-commandline-manage-files-hdfs/ In this tutorial ...
- java利用poi读取excel异常问题
最近一个web工程需要完成一个小功能,利用文件上传然后读取文件内容写入到数据库,这里是操作的excel文件,excel文件分两种后缀,03版本的xls和之后的xlsx,现在大家一般都拿非常好用的插件直 ...
- QT 主窗口和子窗口相互切换示例
QT 主窗口和子窗口相互切换示例 文件列表: SubWidget.h #ifndef SUBWIDGET_H #define SUBWIDGET_H #include <QtWidgets/QW ...
- windows2016上如何通过攻击ETERNALBLUE获得meterpreter反弹
windows2016上如何通过攻击ETERNALBLUE获得meterpreter反弹 译:by backlion 0x00前言 当微软发布MS17-010漏洞的补丁时,该漏洞影响的范围是从Win ...