2019-04-23

一、标识符

由字母数字 _ 和$组成首位不要是数字

最好符合命名规范


二、关键字

Java中会用到的的有特殊意义的单词,都是小写

goto(易引起程序混乱)和const(c语言中表示常量)为保留字


三、常量

final修饰的变量

与c语言中的const类似

但和c中预编译的DEFINE完全不一样



四、变量

 本质为一块内存

分为基本类型和引用类型

基本类型的内存中的二进制编码为数据本身,引用类型存的二进制编码为内存地址(类似指针)


五、基本数据类型(这段参考了《java虚拟机规范JavaSE 8版》)

1.      整数类型

(1)      byte:8位有符号的二进制补码整数,默认值为0;

(2)      short:16位有符号的二进制补码整数,默认值为0;

(3)      int:32位有符号的二进制补码整数,默认值为0;

(4)      long:64位有符号的二进制补码整数,默认值为0;

2.      浮点数类型

(1)      float:与IEEE754标准的32位单精度的格式和操作相同;

(2)      double:与IEEE754标准的64位双精度的格式和操作相同;

3.      boolean类型:true或false

“虽然Java虚拟机定义了boolean这种数据类型,但是只对它提供了非常有限的支持。在Java虚拟机中没有任何供boolean值专用的字节码指令,Java语言表达式所操作的boolean值,在编译之后都使用Java虚拟机中的int数据类型来代替。”

——摘自《java虚拟机规范JavaSE 8版》

4.      char类型 unsigned两字节正整数Unicode编码

5.     (returnAddress型:指向虚拟机指令的操作码,只存在与虚拟机底层中,java语言中看不到,并且JDK7开始已处于名存实亡状态)

       tips:1.byte short char 的运算在加载到操作数栈时都以int型来运算,因为在虚拟机中没有对应的操作指令

                2.赋值时如果值处于范围内如short a=1是没问题的;

六、运算符:

1.二元运算符:

(1)算术运算符(+-*/%,)

2.一元运算符:自增和自减;

++i先运算再赋值

i++先赋值再运算

tips:测试i++与++i性能


        上面分别在jdk8的版本中和在jdk12版本中的结果,所以在需要自增时,尽量使用i++而不是++i



六、转义字符

\n \t \\ \r \t \b 等

         Tips:关于\r\n

                   Windows中使用\r\n或\n\r来换行, linux中使用\n来换行, mac中使用\r来换         行,使用时注意差异。

(参考https://www.cnblogs.com/xiaotiannet/p/3510586.html)

七、进制转换


二进制0b 八进制0 十六进制0x

二进制字节码可用十六进制来表示

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • DAY 01 JAVA简述 Java是由SUN公司在1995年推出的一门高级编程语言,是现今服务器端的首选编程语言...
    周书达阅读 1,104评论 0 0
  • Win7下如何打开DOS控制台? a:开始--所有程序--附件--命令提示符 b:开始--搜索程序和文件--cmd...
    逍遥叹6阅读 1,727评论 4 12
  • 反射 反射的概述 JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对...
    深拥_66e2阅读 156评论 0 0
  • 一、基础知识:1、JVM、JRE和JDK的区别:JVM(Java Virtual Machine):java虚拟机...
    杀小贼阅读 2,592评论 0 4
  • 我要一纸书信 把思念带给你 喜欢这样 期待着的等待 好让我觉得 一生只够爱一人 又怕时间太久 失去希望 慢慢地熬吧...
    现实主义鼻祖阅读 334评论 4 2

友情链接更多精彩内容