1. static member/field/function
每new一个object即相当于申请了一块内存,用来存放这个object的member/field/function。两个object的member/field不尽相同,同时也许因为如此,导致两个object的function不尽相同,从而这两个object要占据两块内存,而且它们之间没有共享member/field/function。
如果有field/member/function只与class有关,即不会在不同的object中有不同的值或操作,亦即在所有的object中表现都一样,可以将其设置为static。可以将static member/field/function理解为归class所有,即存在于class的内存块中,而不是在object的内存块中。
在调用时,可以直接使用class.staticMember/staticField/staticFunction,当然,用object.staticMember/staticField/staticFunction也行,但这样无法体现member/field/function的static性。
2. static import
精确导入方式:
import static pkg.class/interface.staticMember;
import最后只用写出成员名,就算是function,也不用写出括号或是参数列表。
模糊导入方式:
import static pkg.class/interface.*;
这样可以将class/interface中的staticMember静态导入,在后面的代码中就不用写class/interface.staticMember这么麻烦,直接写staticMember了事。如果是field就直接写staticField,不用写class/interface.staticField;如果是function就直接写staticFunction(),不用写class/interface.staticFunction()。例如:
import static java.lang.System.out;
之后就可以直接写out.println(),不用写System.out.println()。注意,这里out才是static member,println是out的方法,且不是static,所以不能直接写println()。
分享到:
相关推荐
0x0400_0000 0x0500_0000 16 MB Bank0 of Static Read Only Memory Controller (SMC) (16-bit only) 0x0500_0000 0x0600_0000 16 MB Bank1 of SMC 0x0600_0000 0x0700_0000 16 MB Bank2 of SMC 0x0700_0000 0x0800_...
" mov r2, #0x6c\n" // 'l' " mov r3, #0x6c\n" // 'l' " mov r4, #0x6f\n" // 'o' " bl printf\n" " bx lr\n" ); } } ``` 通过这种方式,你可以结合C语言和汇编语言进行混合编程,利用汇编的高效性处理特定...
本文旨在详细介绍 C++0x 中的一些关键特性,包括 `auto` 关键字、`decltype` 关键字、`nullptr` 关键字、`static_assert`、Lambda 表达式、拖尾返回类型 (Trailing Return Types)、R-value 引用等。 #### `auto` ...
static unsigned char seg_code[] = {0x3F, 0x06, 0x5B, 0x4F, 0x66, 0x6D, 0x7D, 0x07, 0x7F, 0x6F}; // 数码管显示每一位对应的段码 LEDseg = seg_code[digit % 10]; // 显示段码 LEDcom = 0x01 (digit / 10); ...
LCD_WR_DATA8(0X0000>>8); LCD_WR_DATA8(0X0000&0XFF); LCD_WR_DATA8(0X009F>>8); LCD_WR_DATA8(0X009F&0XFF); LCD_WR_REG(lcddev.setycmd); LCD_WR_DATA8(0X0000>>8); LCD_WR_DATA8(0X0000...
2. 静态初始化:VL53L0X_StaticInit()函数允许装载用于特定的给定使用状况的模块设置。 3. 参考SPADs校准:为了优化系统的动态特性,需要执行参考SPADs校准。在STMicroelectronics的最终模块测试中,这个校准步骤是...
public static final int blue=0x7f040001; public static final int btb=0x7f040009; public static final int green=0x7f040006; public static final int hese=0x7f040008; public static final int light...
在Microsoft Visual Studio 2010 (VC10)中,C++编译器开始支持C++11标准的一部分,通常称为C++0x。这个版本的编译器引入了许多新特性,极大地增强了C++语言的功能性和现代性。以下是关于VC10中C++0x特性的详细解释:...
### 新C++(C++0x)概览 #### 一、引言 Scott Meyers是一位备受尊敬的软件开发顾问及作者,他在业界以其对C++深入的理解与贡献而闻名。2010年,Meyers发布了关于新C++(C++0x,后正式命名为C++11)的一系列资料,...
ldr r1, =0x7ff /*根据 2410 芯片手册,INTSUBMSK 有 11位可用 */ ldr r0, =INTSUBMSK Create PDF files without this message by purchasing novaPDF printer (http://www.novapdf.com) str r1, [r0] # endif ...
现A先获得执行机会,执行`IpToStr()`,传入的参数是0x0B090A0A,顺序执行完应该返回的指针存储区内容是:“10.10.9.11”。当执行到返回时,失去执行权,调度到B线程执行,B线程传入的参数是0xA8A8A8C0,执行至返回,...
解决 IIS7 及以上版本伪静态程序报错 404 的方法 IIS7 及以上版本的伪静态程序报错 404 是一个常见的问题,特别是在从 IIS6 迁移到 IIS7 或更高版本时。这个问题的出现可能是由于 IIS7 及以上版本对伪静态程序的...
在静态数据区,内存中所有的字节默认值都是0x00。 const const是C语言中的一个限定符,主要用来限定变量的值不能被改变。const变量的值在定义时就被确定,并且不能在以后被改变。例如,const int a = 10;定义了一...
`static_assert`是C++0x提供的一种在编译时验证条件是否成立的方法。这通常用于模板编程中,确保模板参数满足某些约束条件。 #### 示例: ```cpp template void foo() { static_assert(std::is_integral<T>::...
uchar plus[]={0x01,0x03,0x02,0x06,0x04,0x0c,0x08,0x09,0x00}; //电机正转 uchar minu[]={0x08,0x0c,0x04,0x06,0x02,0x03,0x01,0x09,0x00}; //电机反转 sbit key1=P3^1; bit flag; uchar idata *x; void control...
### C++0x 新特性概述 #### 背景介绍 C++0x(后更名为C++11)是C++编程语言的一个重要版本,它引入了许多新的特性和改进,旨在提高开发效率、代码可读性和性能。Scott Meyers是一位著名的软件开发顾问,他在其文章...
- **static_assert**:在编译时检查条件是否成立,主要用于模板元编程中的错误检测。 ##### 7. 模板别名 - **using关键字**:提供了一种更简洁的方式来定义模板类型的别名。 ```cpp template using MyContainer...
今天在win2008+IIS7.5的环境中部署WCF服务后,一直出现无法打开的页面。...处理程序 StaticFile 错误代码 0x8007007e 请求的 URL *** 物理路径 C:/ECG2.0/eWECGService 登录方法 匿名 登录用户 匿名 最可能