Java学习日记(二):Java语法

本系列为本人学习情况记录,部分内容来自老师课件。本文仅作为自己的学习笔记,所有内容仅代表个人观点,不一定正确。欢迎辩证。



今天的学习内容:

标识符和关键字
二进制及转换 
常量和变量
数据类型
运算符
Scanner的简单使用

整理之后总结了几个重要知识点:

标识符作用及命名规则
关键字及保留字 
基本数据类型及其特点
基本数据类型的转化特点
常量和变量的区别
局部变量和成员变量的区别
运算符的优先级排序

一、标识符作用及命名规则

标识符的作用:用于定义常量、变量、方法、类和包等的名称。
标识符的命名规则:

必须以字母、下划线_、美元符$开头
由字母、下划线_、美元符$、数字组成
不能使用关键字和保留字
大小写敏感
命名最好见名知意
类名和接口命每个单词首字母大写
方法名和变量名第一个单词全小写,其余首字母大写
常量全部单词大写
包名全小写

二、关键字及保留字

关键字:一些有特定含义并有特殊用途的字符串,java关键字全部为小写

关键字
abstractbooleanbreakbytecasecatchcharclassconstcontinue
defaultdodoubleelseextendsfinalfinallyfloatforgoto
ifimplementsimportinstanceofintinterfacelongnativenewpackage
privateprotectedpublicreturnshortstaticstrictfpsuperswitchsynchronized
thisthrowthrowstransienttryvoidvolatilewhileassertenum

保留字:没有定义用途,但保留备用。goto、const


三、基本数据类型及其特点

序号数据类型大小/位可表示的数据范围
1byte(位)8-128~127
2short(短整数)16-215~215-1
3int(整数)32-231~231-1
4Long(长整数)64-263~263-1
5loat(单精度)32-231~231-1
6double(双精度)64-263~263-1
7boolean(布尔类型)如果声明的布尔类型是变量,占4字节(32位),如果是数组类型,占1字节(8位)true、false
8char(字符)160~232

char字符型的特点:

用单引号包裹,’a’、’王’,字符串使用双引号
是无符号型的,可以表示一个整数,不可以表示负数
表示任意在Unicode编码表中存在的单个有效字符符号

boolean类型的特点:

Boolean类型在java中不能和其他类型进行转换,在js中可以转化为01
如果声明的布尔类型是变量,占4字节(32位),如果是数组类型,占1字节(8位)
用于判断,只表示true、false

四、基本数据类型的转化特点

取值范围小的自动转化为取值范围大的
boolean类型不能和其他类型进行转换
自动转换的顺序:byte--short--int--long--float--double
两个数据类型不同的变量相加时,会自动统一数据类型,遵循小转大规则
取值范围大的转化为取值范围小的需要强制转换,若值超过取值范围小的数据类型,数据可能精度损失或溢出,结果不可控

五、常量和变量的区别

常量:
常量是程序运行过程中值不会发生改变的量;

变量:
变量其实是内存中的一块存储空间,使用变量名来访问这块存储空间,定义变量时需要先声明变量的数据类型和名称,系统会根据不同的数据类型给变量分配相应的存储空间,给变量赋值就是往这块存在空间里存入数据。


六、局部变量和成员变量的区别

局部变量:在方法中定义的变量称为 局部变量
成员变量:在方法外,类的内部定义的变量称为 成员变量
静态变量:指静态的成员变量
局部变量和成员变量的区别:

*定义的范围不一样
	局部变量在方法体内,属于方法内部的变量
	成员变量在类中、方法外部,属于类的变量
*成员变量的默认值要依据成员变量的类型来(int = 0,boolean=false ,float = 0.0F ,double =0.0 )
*局部变量没有默认值,必须赋值或初始化。
*作用范围不一样:
	局部变量只能在它所属的方法体内被使用
	成员变量的作用范围在整个类中任何方法中都可以调用。
*局部变量和成员变量如果同名,他们其实是不同的变量,符合各自的运行规则

七、运算符的优先级排序

单目>算术>关系>逻辑>三目>赋值
算术运算符 (++ --) > (* / %) > (+ -)
关系运算符 (> < >= <=) > ( == !=)
逻辑运算符 ! > & >^ >|

八、关于运算符的一些要点

关系运算符返回的是布尔类型
关系运算符(> < >= <=)只针对数值类型,(== !=)针对所有类型
逻辑运算符的操作数是boolean类型
| & ^ 既是逻辑运算符,也是位运算符,根据操作数的类型进行区分
三目条件运算符 X ? Y : Z经常用来代替简单的if-else判断
扩展运算符是指,+=-=/=%=*=,且扩展运算符自带强转
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值