1. 注释
1.1 关于注释
平时我们编写代码,在代码量比较少的时候,我们还能看懂自己写的,但当项目结构复杂起来,我们就需要用到注释了。
- 注释并不会被执行,它能够帮助看代码的人更好地理解代码
- 书写注释是一个非常好的习惯。强推大家在学习之初就养成写注释的习惯,这将使你受益终生。
1.2 Java中的注释
来个小彩蛋,下面这个是不是很nice呀!我呢,就只摘取了这一个,实际上还有好多好多很有意思的,有兴趣的小伙伴们可以直接搜索“有趣的代码注释”。
# ___====-_ _-====___
# _--^^^#####// \\#####^^^--_
# _-^##########// ( ) \\##########^-_
# -############// |\^^/| \\############-
# _/############// (@::@) \\############\_
# /#############(( \\// ))#############\
# -###############\\ (oo) //###############-
# -#################\\ / VV \ //#################-
# -###################\\/ \//###################-
# _#/|##########/\######( /\ )######/\##########|\#_
# |/ |#/\#/\#/\/ \#/\##\ | | /##/\#/ \/\#/\#/\#| \|
# ` |/ V V ` V \#\| | | |/#/ V ' V V \| '
# ` ` ` ` / | | | | \ ' ' ' '
# ( | | | | )
# __\ | | | | /__
# (vvv(VVV)(VVV)vvv)
# 神兽保佑
# 代码无BUG!
2. 标识符
2.1 关键字
abstract | assert | boolean | break | byte |
---|---|---|---|---|
case | catch | char | class | const |
continue | default | do | double | else |
enum | extends | final | finally | float |
for | goto | if | implements | import |
instanceof | int | interface | long | native |
new | package | private | protected | public |
return | strictfp | short | static | super |
switch | synchronized | this | throw | throws |
transient | try | void | volatile | while |
看到这么多的关键字,是不是瞬间有些头大呢?其实啊,这些我们也不需要一下子给它全记住,随着学习的深入,我们在不断练习的过程中,不需要刻意地去背,就能够记住。
2.2 标识符命名规则
Java 中所有的组成部分都需要名字。类名、变量名以及方法名等都被称为标识符。简单来说,凡是可以由自己命名的地方都叫做标识符。标识符在命名的时候要注意以下几点:
- 所有的标识符都应该以字母,$,或下划线“_”开始
- 首字符之后可以是以上三种或数字的任何字符组合
- 命名中不能出现Java关键字
- 标识符大小写敏感
- 可以使用中文命名,但一般不建议这样去使用,也不建议使用拼音,这样很low哎。
注意哟!在变量命名的时候,一定要用有意义的的单词,不要随随便便来个x,y,z。虽然像x,y,z这类的,在写代码的时候,会很方便,但是到后期再看代码的时候,极有可能不知道它们代表什么意思,反而会花费更多的时间。所以,还是一开始就给它整好叭~~
3. 数据类型
3.1 基本描述
Java是一种强类型语言。
什么是强类型语言呢?
要求变量的使用严格符合规定,所有的变量都必须先定义后使用。
3.2 分类
Java的数据类型分为两大类:
- 基本类型(primitive type)
- 引用类型(reference type)
3.3 拓展
- 整数拓展——进制
- 二进制:以0b开头
- 八进制:以0开头
- 十六进制:以0x开头
- 浮点数拓展
先来看几行简单的代码叭!
运行后是什么结果呢?
是不是觉得有些匪夷所思呢?事实上,这是由于浮点数自身的特点所引起的。浮点数啊,有这么一些特点:有限,离散,表示近似值,接近但不等于。
大家来想这么一个问题,银行业务要怎么表示钱的多少呢?
实际上,在银行业务中,我们可以用数据工具类BigDecimal去进行表示。对于该类,目前还用不到,之后会详细说明,感兴趣的小伙伴可以现在就去找找相关资料~~ - 字符拓展
- 字符类型与整型变量可以相互转换。所有的字符本质上还是数字。
说到这里,咱们就来聊聊编码表。
Unicode(统一码、万国码、单一码)
它是一种在计算机上使用的字符编码,为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求。
大概来说,Unicode编码系统可分为编码方式和实现方式两个层次。
- 编码方式
使用16位的编码空间,也就是每个字符占用2个字节 - 实现方式
Unicode的实现方式不同于编码方式。一个字符的Unicode编码是确定的,但在实际传输的过程中,由于不同的平台的设计不一定一样,以及出于节省空间的目的,对Unicode编码的实现方式有所不同。
Unicode的实现方式称为Unicode转换格式(Unicode Translation Format,简称为UTF)。
平时,我们经常碰到的,应该就是UTF-8了。UTF-8(8位元Universal Character Set / Unicode Transformation Format)是一种针对Unicode的可变长度字符编码,可以用来表示Unicode标准中的任何字符,且其编码中的第一个字节仍与ASCII相容,这使得原来处理ASCII字符的软件无需或只需做少部分修改,即可继续使用。故而,它逐渐成为电子邮件,网页以及其他储存或传送文字的应用中,优先采用的编码。
4. 类型转换
- 强制转换
当高级别转换为低级别时使用,语法格式:(类型)变量名 - 自动转换
低级别转换为高级别
注意点
3. 不能对布尔值进行转换
4. 不能把对象类型转换为不相干的类型
5. 高级别转换为低级别时,强制转换
6. 转换的时候可能存在内存溢出,或者精度问题!
7. 级别
低------------------------------------------------->高
byte , short , char->int->long->float->double
8. 运算中,不同类型的数据先转化为同一类型,然后再进行运算