关键字
顾名思义,这些字符肯定有一些特殊的含义,不能随意使用。在java程序中关键字会被赋予特殊的含义例如Class,它就代表java语言中的类。
标识符
概念:就是在写代码时候自定义的一些名称。
主要体现在类名,变量名,函数名,接口名的命名上面。类似于我们每个人的姓名,姓名的不同也直接体现了每个人的不同,也方便认识和每个人交流。
函数的main是一种特殊的标识符,要特别注意。(它主要特殊在为主函数的一个标志,直接被定义好了)
标识符的组成规则:
1.由字母、数字、下划线_、美元$组成的;
2.数字不能直接开头,严格区分大小写,不能使用java自带类名称以及关键字(main等);
3.一般来说标识符都是用英文单词来命名,这样不仅体现严密性也很好的体现出了可读性。
标识符的命名方法:
a.小驼峰式命名(如果一个标识符是由多个单词组成的一个词,那么除了第一个单词首字母小写外,其他单词首字母大写 )主要应用在哪些地方:变量名 函数名
b.大驼峰式命名(如果一个标识符是由多个单词组成的,那么所有单词的首字母大写)主要应用在哪些地方:类 接口
c.全大写命名(如果一个标识符是由多个单词组成的,那么每一个单词都要大写,单词与单词之间用_连接)主要应用在哪些地方:定义常量
注释
注释这个功能还是非常重要的,好的注释方便与其他人对自己的代码认识和参考。这就相当于自我介绍一样,对于提高程序的可读性有质的帮助。
3种注释类型
//单行注释
/…/多行注释
/**…*/文档注释
常量
就是一些直接出现在程序中的量,一般存在于常量池中。一般的常量分为下面类型
整数(2,8,10,16进制之分),浮点数,字符常量(单引号),字符串常量(双引号),布尔(true或者false),空(null关键字)
常量数据一定是在变量空间当中吗?不是,所有的常量都在常量池当中,变量空间当中存的就是常量在常量池中的地址!
变量
根据字面意思它是变化的数据
变量的本质:存储一些计算当中产生的一些临时行数据,变量就是进程中产生的临时性存储区域(大概意思就是这个区域的相同类型数据,并不唯一,可以变化。),定义变量之后内存会产生一个随机地址赋予这个变量。变量数据在空间中变化时一定要是可兼容的(LOL攻击力的增长)大致确保它是一种类型的。
变量中始终存储的是常量的地址(常量池中常量的地址)。变量在创建以后,系统会给这个零时性的存储区域分配一个物理地址相当于一个指针。
int a=3的具体实现过程如下图所示:
图中有一个变量-地址表是指实质上变量值中存的时常量在常量池中的地址当然比较两个变量时也是对各自的变量池中的地址进行比较如果地址相同那么这两个数相同。
两个变量的比较和强转
两个变量的比较如下图所示
强转(强转会使数据损失)如下图所示