山楂片的博客

山楂片的博客

山楂片的博客

马上订阅 山楂片的博客 RSS 更新: https://szp15.com/index.xml

Java学习笔记

2019年4月11日 22:08

该学习笔记着重于Java相较于C++等编程语言的独特之处。内容主要来自 The Java™ TutorialsJAVA8 官网笔记教程

语言基础

变量

变量分为以下4种类型,其中前2种合称为字段

  • 实例变量(非静态字段)
  • 类变量(静态字段)
  • 局部变量
  • 参数,包括构造器和异常处理器

一个类型的字段、方法和嵌套类型统称为成员。合法的标识符由大小写敏感的字母、数字、$_组成,其中数字不能作为第一个字符,不建议使用$。不建议以_开头。标识符不能与关键字相同。

建议:对于变量一般采用驼峰命名法,即首字母小写后续单词首字母大写;对于常量一般全部大写,_分隔各个单词。

基本数据类型

共有8种基本类型byte(1字节)、short(2字节)、int(4字节)、long(8字节)、float(4字节)、double(8字节)、booleanchar2字节)。intlong的包装器IntegerLong提供了诸如compareUnsigneddivideUnsigned之类的无符号操作。java.math.BigDecimal提供了精确的实数。基本数据类型不存在无符号类型,除了boolean之外的基础数据类型大小固定。此外,双引号括住的字符串默认是java.lang.String类,它是不可变的。

默认值

未被初始化的字段会被初始化为0(基本数据类型)或者null(对象)。局部变量不会自动初始化,访问未被初始化的局部变量将导致编译错误。不建议依赖自动初始化。

字面常量

字面常量代表一个固定值,可以直接向基本类型的变量赋值(无需new)。

整型字面常量

若后缀为L或者l,则其类型为long,否则为int。建议使用大写L,避免和数字1搞混。可用int类型的字面常量初始化byteshortintlonglong类型的字面常量只可初始化long。默认为10进制。0X或者0x前缀表示16进制;0B或者0b表示2进制;0开头的表示8进制。

注意: 大小超过int类型的字面常量却未指明是long类型是一个编译错误。

浮点型常量

若后缀为F或者f,则其类型为float;若不存在后缀或后缀为D或者d,则其类型为double

字符和字符串常量

charString类型可以存储任何Unicode(UTF-16)的字符。可直接在源代码中使用这些字符,也可以\uXXXX(XXXX为4位16进制数字)转义。使用单引号代表字符;使用双引号代表字符串。

此外还有转义序列,如\b(退格符)、\t(水平制表符)、\n(换行符)、\f(换页符)、\r(回车符)、\"(双引号)、\'(单引号)、\\(反斜杠符)。

null字面常量可赋值给任何非基本数据类型变量。<typename>.class用于得到类型本身(其类型为Class),这被称作类字面常量class literal)。

在数字字面常量中使用下线符

可以使用_分割数字(包括整型和浮点型常量),增加代码可读性,只允许在两个数字之间插入一个或多个_

数组

Java的数组定长。里面的每一项目称为元素,通过下标索引(从0开始)。通过<type>[] <identifier>;定义一个可以引用数组的变量(数组大小不是类型的一部分)。通过new <type>[<length>]来创建数组(内容会被0初始化)。可以用{...

剩余内容已隐藏

查看完整文章以阅读更多