变量、常量及方法

关于Java标识符的定义,需要注意以下几点:

  • 所有的标识符都应该以字母(A-Z/a-z),美元符($)或者下划线(_)开始.
  • 字符之后可以是字母(A-Z/a-z),美元符($),下划线(_)或数字的任何字符组合.
  • 关键字不能用作标识符.
  • 标识符是大小写敏感的.

  • 关键字:
    • const和go关键字虽然已经不在使用,但是他们还是被保留下来了。
    • true,false,null 虽然被很多人误认为是关键字,但是实际上他们只是字面而已。

  • 变量:
    • 局部变量:没有特殊的关键字将变量标记为局部变量,这完全取决于声明变量的位置——它位于方法的两个大括号之间
      1. 在方法执行时创建,当它们执行完成后,变量将会被销毁。
      2. 局部变量只对声明它们的方法可见,对于类的其他部分来说它们是不可见的。
      3. 局部变量没有默认值,所以局部变量被声明后,必须经过初始化,才可以使用。
    • 类变量(静态域): 类变量是使用static关键字修饰的域。这告诉编译器无论这个类有多少个实例,这个变量只有一个副本。
    • 成员变量(非静态域):从技术层面来说,对象将它们各自的状态存在“非静态域”中,也就是没有使用static关键字修饰的域。非静态域也被称为实例变量,因为对于类的每个实例(换句话说,就是每个对象)来说,它们的值都是独立的。
    • 变量属于标识符,因此必须符合标识符的命名规范。
    • 变量的命名必须是有意义的,做到名如其意。
    • 变量名最好用英文名词,禁止使用拼音。
    • 变量名需要用小驼峰命名法,首字母小写,后面的单词需首字母大写,来用区分相邻单词。如name, bookTitle等。

  • 常量:
    • 常量在定义的时候,就需要对常量进行初始化。
    • 常量一旦初始化之后,就不能再次对其赋值。
    • final关键字不仅可以用来修饰基本数据类型的常量,还可以用来修饰对象的引用或者方法。
    • final关键字与static关键字同时使用。
    • 常量名需要全部大写,相邻单词之间用下划线(_)隔开。如 final int PI = 3.1415927;等

  • 函数/方法:
修饰符 返回值类型 方法名(参数类型 参数名) {
    方法体
    return 返回值;
}
  • 修饰符:这是可选的,告诉编译器如何调用该方法。定义了该方法的访问类型。
  • 返回值类型: 就是return之后的返回值的类型,有些方法可能没有返回值,用关键字void来表示。
  • 方法名:就是方法的名字,必须符合一定的命名规范。
  • 参数:由参数类型和参数名称组成。参数名是一个变量,用于接收调用方法时传入的数据。
  • 方法体:被封装的独立代码块,是方法的核心部分,处理重要的业务逻辑。
  • 方法名需要用小驼峰命名法。
  • 建议方法体遵循单一职责原则,即每个方法就仅仅做一件事情,这样可以增加可读性和可维护性。

  • 基本数据类型

For type byte, the default value is zero, that is, the value of (byte)0.
For type short, the default value is zero, that is, the value of (short)0.
For type int, the default value is zero, that is, 0.
For type long, the default value is zero, that is, 0L.
For type float, the default value is positive zero, that is, 0.0f.
For type double, the default value is positive zero, that is, 0.0d.
For type char, the default value is the null character, that is, '\u0000'.
For type boolean, the default value is false.[/quote]

以上摘自《Java Language Specification Second Edition》CHAPTER 4

In java, an int is 32 bits. A byte is 8 bits.

  • 堆 是所有线程共享的内存区域,栈 是每个线程独享的;所以基本类型的实例变量在堆上创建,局部变量在栈上创建。

  • 内置数据类型:
    Java提供了八种基本类型,其中六种数字类型(四种整数型,两种浮点型),一个字符类型,一个布尔型。
类型名 类型意义 位数(bit) 默认值 最大值 最小值
byte 字节型 8 0 127(2^7-1) -128(-2^7)
short 短整型 16 0 32767(2^15-1) -32768(2^15)
int 整型 32 0 2147483647(2^31-1) -2147483648(2^31)
long 长整型 64 0 9223372036854775807(2^63-1) -9223372036854775807(2^63)
float 单精度浮点型 32 0.0f
double 双精度浮点型 64 0.0d
boolean 布尔型 1 false true(1) false(0)
char 字符型 16 \u0000 \uffff(65,53) \u0000(0)

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 202,607评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,047评论 2 379
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 149,496评论 0 335
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,405评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,400评论 5 364
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,479评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,883评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,535评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,743评论 1 295
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,544评论 2 319
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,612评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,309评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,881评论 3 306
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,891评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,136评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,783评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,316评论 2 342

推荐阅读更多精彩内容