JavaSE入门学习5:Java基础语法之keyword,标识符,凝视,常量和变量
一keyword
keyword概述:Java语言中有一些具有特殊用途的词被称为keyword。keyword对Java的编译器有着特殊的意义。在程
序中应用时一定要谨慎。
keyword特点:组成keyword的字母所有小写。
keyword注意事项:goto和const作为保留字存在,当前并不使用。
Java中经常使用的50个keyword(48个加2个保留字,就当背英文单词啦):
keyword 描写叙述
abstract 抽象方法。抽象类的修饰符
assert 断言条件是否满足
boolean 布尔数据类型
break 跳出循环或者label代码段
byte 8-bit 有符号数据类型
case switch语句的一个条件
catch 和try搭配扑捉异常信息
char 16-bit Unicode字符数据类型
class 定义类
const 未使用
continue 不运行循环体剩余部分
default switch语句中的默认分支
do 循环语句,循环体至少会运行一次
double 64-bit双精度浮点数
else if条件不成立时运行的分支
enum 枚举类型
extends 表示一个类是还有一个类的子类
final 表示一个值在初始化之后就不能再改变了。表示方法不能被重写。或者一个类不能有子类。
finally 为了完毕运行的代码而设计的,主要是为了程序的健壮性和完整性。不管有没有异常发生都运行代码。
float 32-bit单精度浮点数
for for循环语句
goto 未使用
if 条件语句
implements 表示一个类实现了接口
import 导入类
instanceof 測试一个对象是否是某个类的实例
int 32位整型数
interface 接口,一种抽象的类型,仅有方法和常量的定义
long 64位整型数
native 表示方法用非java代码实现
new 分配新的类实例
package 一系列相关类组成一个包
private 表示私有字段,或者方法等。仅仅能从类内部訪问
protected 表示字段仅仅能通过类或者其子类訪问子类或者在同一个包内的其它类
public 表示共同拥有属性或者方法
return 方法返回值
short 16位数字
static 表示在类级别定义,全部实例共享的
strictfp 浮点数比較使用严格的规则
super 表示基类
switch 选择语句
synchronized 表示同一时间仅仅能由一个线程訪问的代码块
this 表示调用当前实例或者调用还有一个构造函数
throw 抛出异常
throws 定义方法可能抛出的异常
transient 修饰不要序列化的字段
try 表示代码块要做异常处理或者和finally配合表示是否抛出异常都运行finally中的代码
void 标记方法不返回不论什么值
volatile 标记字段可能会被多个线程同一时候訪问,而不做同步
while while循环
二标识符
标识符概述:Java对各种变量。类,接口。方法等起名字时使用的字符序列。
组成规则:1英文大写和小写字母2数字字符3美元符($)和下划线(_)。
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
使用标识符时。须要遵守几条规则:
1标识符能够由字母、数字、下划线(_)、美元符($)组成。但不能包括 @、%、空格等其他特殊字符,不能以数字
开头。比方:123name 就是不合法的。
2标识符不能是 Java keyword和保留字(Java预留的keyword,以后的升级版本号中有可能作为keyword),但能够包括关
键字和保留字。如:不能够使用 void 作为标识符,可是 Myvoid 能够。
3标识符是严格区分大写和小写的。 所以。一定要分清楚和是两个不同的标识符。
4标识符的命名最好能反映出其作用,做到见名知意。
不合法的标识符:
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
合法的标识符:
标识符命名的常见类型:
1包(事实上就是目录,用于解决同样类名进行区分的问题),所有小写。
单级:
举例:student
多级:
举例:student.number
2类或接口:
一个单词:单词的首字母必须大写。
举例:Student
多个单词:每一个单词的首字母必须大写。
举例:HelloWorld
3方法和变量:
一个单词:单词的首字母必须小写。
举例:main
多个单词:从第二个单词開始,每一个单词的首字母必须大写。
举例:showAllName
4常量:
一个单词:单词字母必须所有大写。
举例:PI
多个单词:每一个单字母必须大写。用_隔开 。
举例:STUDENT_MAX_AGE
三凝视
凝视概述:在编敲代码时,常常须要加入一些凝视,用以描写叙述某段代码的作用。一般来说,对于一份规范的程序
源码而言,凝视应该占到源码的 1/3 以上。因此,凝视是程序源码的重要组成部分,一定要加以重视。
Java中凝视分类及格式:
Java中凝视有三种类型:单行凝视、多行凝视、文档凝视。
1单行凝视格式://凝视文字
2多行凝视格式:/*凝视文字*/,须要注意的是多行凝视不能嵌套使用,而单行是能够的。
3文档凝视:/**凝视文字*/。这个凝视的作用的是被javadoc工具解析生成一个说明书。
凝视的作用:
1解释说明程序,提高程序的可阅读性;
2能够帮助我们调试程序。
看一个样例:
四常量和变量
常量概述:在程序运行的过程中其值不能够发生改变。所谓常量,我们能够理解为是一种特殊的变量,它的值被
设定后,在程序执行过程中不同意改变。
Java中常量分类:
1字面值常量
A字符串常量:用双引號括起来的内容。
举例:"hello" "world"
B整数常量:全部的整数。
举例:100 300
C小数常量:全部的小数。
举例:10.23
D字符常量:用单引號括起来的常量。
举例:'A' 'C' 'O'
E布尔常量:比較特殊,仅仅有true和false
F空常量:null
2自己定义常量
语法格式:final 常量名 = 值;
程序中使用常量能够提高代码的可维护性。比如。在项目开发时,我们须要指定用户的性别,此时能够定义一个
常量 SEX。赋值为 "男"。在须要指定用户性别的地方直接调用此常量就可以。避免了因为用户的不规范赋值导致程序出
错的情况。
举例:
变量
变量概述:在程序的运行过程中,其值是能够在一定范围内发生改变的量。
在Java中,我们通过三个元素描写叙述变量:变量类型、变量名以及变量值,当中变量名是标识符。
变量的定义格式:
A:数据类型 变量名 = 初始化值;
B:数据类型 变量名;
变量名 = 初始化值;
Java语言是一种强类型语言。
通俗点说就是,在Java中存储的数据都是有类型的,并且必须在编译时就确定其类
型。 String 是一种常见的引用数据类型。用来表示字符串。
在程序开发中,非常多操作都要使用字符串来完毕。比如系
统中的username、password、电子邮箱等。这个String引用类型是特殊的。
Java中有两类数据类型:两类十一种
在Java的领域里。基本数据类型变量存的是数据本身,而引用类型变量存的是保存数据的空间地址。
这个我们以
后的学习中逐渐体会到。
基本数据类型
A:整数 占用字节数
byte 1
short 2
int 4
long 8
B:浮点数
float 4
double 8
C:字符
char 2
D:布尔
boolean 1(并不确定)
使用变量须要的注意事项:
1作用域:变量定义在哪一级大括号里,哪个大括号的范围就是这个变量的作用域。同样的作用域中不能定义两
个同名变量。
2初始化值:没有初始化的值不能直接使用。
3在一行上建议仅仅定义一个变量,能够定义多个。但不建议。
4Java 中的变量须要先声明后使用。
5变量中每次仅仅能赋一个值。但能够改动多次。
6main 方法中定义的变量必须先赋值,然后才干输出。
在Java程序中。不同的基本数据类型的数据之间常常须要进行相互转换。
我们定义的变量的基本数据类型时须要注意:
1整数默认是int类型,浮点数默认是double。
2长整数要加L或者l(建议使用L)。
3单精度的浮点数要加F或者f(建议使用F)。
(1)boolean类型不參与转换,由于不能够以0或非0的整数取代false和true。
这一点和其它的高级程序设计语言不
同。一定要注意。
(2)默认转换
A:从小到大
B:byte,short,char -- int -- long -- float -- double
C:byte,short,char之间不相互转换。直接转成int类型參与运算。
(3)强制转换
A:从大到小
B:可能会有精度的损失。一般不建议这样使用。
C:格式:
目标数据类型 变量名 = (目标数据类型) (被转换的数据);
思考题和面试题
A:以下两种方式有差别吗?
float f1 = 12.345f;
float f2 = (float)12.345;
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" style="font-size:18px">
B:以下的程序有问题吗,假设有,在哪里呢?
byte b1 = 3;
byte b2 = 4;
byte b3 = b1 + b2;
byte b4 = 3 + 4;
C:以下的操作结果是什么呢?
byte a = 130;
byte b = (byte)130;
D:字符參与运算
是查找ASCII里面的值,查ASCII表就可以
'a'97
'A'65
'0'48
System.out.println('a');
System.out.println('a' + 1);
E:字符串參与运算
这里事实上是字符串的连接
System.out.println("hello"+'a'+1);
System.out.println('a'+1+"hello");
System.out.println("5+5="+5+5);
System.out.println(5+5+"=5+5");
上面两个题的输出输出是:
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
先到这里,若有错误的地方,请指正。
JavaSE入门学习5:Java基础语法之keyword,标识符,凝视,常量和变量的更多相关文章
- 2 Java基础语法(keyword,标识符,凝视,常量,进制转换,变量,数据类型,数据类型转换)
1:keyword(掌握) (1)被Java语言赋予特定含义的单词 (2)特点: 所有小写. (3)注意事项: A:goto和const作为保留字存在. B:类似于Notepad++这种高级记事本会对 ...
- java学习笔记 --- java基础语法
一.java标识符,关键字,保留字 1.标识符 用来增强程序阅读性自定义的名字.类名,变量名,方法名等都可以被称为标识符 标识符的组成: 1.由数字(0-9),字母(a-z,A-Z),下划线(_),美 ...
- java学习路线图-----java基础学习路线图(J2SE学习路线图)
安装JDK和开发软件跳过,网上太多了,不做总结,以下是我总结的学习路线图,欢迎补充. JAVA基础语法 注释,标识符命名规则及Java中的关键字 Java基本数据类型 Java运算符与表达式 Java ...
- JavaSE入门学习7:Java基础语法之语句(下)
继续接着Java基础语法来:JavaSE入门学习5:Java基础语法(一)和JavaSE入门学习6:Java基础语法(二). 语句 Java经常使用的3种循环:while.do...while,for ...
- JavaSE入门学习6:Java基础语法之运算符和语句(上)
继续接着上篇:JavaSE入门学习5:Java基础语法(一)来看Java的基础语法. 五运算符 运算符是一种"功能"符号,用以通知Java进行相关的运算.比方.我们须要将变量age ...
- Java基础语法入门01
Java基础语法入门01 学习java你要先进行去了解JDK,JRE,JVM JDK Java开发工具包 JRE Java语言开发的运行环境 JVM Java虚拟机,用于Java语言的跨平台所用. 当 ...
- 057 01 Android 零基础入门 01 Java基础语法 06 Java一维数组 04 案例:求整型数组的数组元素的元素值累加和
057 01 Android 零基础入门 01 Java基础语法 06 Java一维数组 04 案例:求整型数组的数组元素的元素值累加和 本文知识点:求整型数组的数组元素的元素值累加和 案例:求整型数 ...
- 056 01 Android 零基础入门 01 Java基础语法 06 Java一维数组 03 一维数组的应用
056 01 Android 零基础入门 01 Java基础语法 06 Java一维数组 03 一维数组的应用 本文知识点:数组的实际应用 程序开发中如何应用数组? 程序代码及其运行结果: 不同数据类 ...
- 055 01 Android 零基础入门 01 Java基础语法 06 Java一维数组 02 数组的概念
055 01 Android 零基础入门 01 Java基础语法 06 Java一维数组 02 数组的概念 本文知识点:数组的概念 数组的声明创建.初始化 在学习数组的声明创建.初始化前,我们可以和之 ...
随机推荐
- tensorboard及summary data
(新手上路,如果有不对的地方,望指正.另外有没有小伙伴一起学习交流啊?) tensorboard为tensorflow提供了可视化,它的重要性不言而喻. tensorboard是通过读取eve ...
- router-link的使用方法
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...
- 大项目之网上书城(九)——订单Demo
目录 大项目之网上书城(九)--订单Demo 主要改动 1.OrderServiceImpl 代码 2.OrderDaoImpl 代码 3.OrderitemDaoImpl 代码 4.orderite ...
- [Python3网络爬虫开发实战] 1.3.1-lxml的安装
lxml是Python的一个解析库,支持HTML和XML的解析,支持XPath解析方式,而且解析效率非常高.本节中,我们了解一下lxml的安装方式,这主要从Windows.Linux和Mac三大平台来 ...
- 零基础入门学习Python(36)--类和对象:给大家介绍对象
知识点 Python3 面向对象 Python从设计之初就已经是一门面向对象的语言,正因为如此,在Python中创建一个类和对象是很容易的.本章节我们将详细介绍Python的面向对象编程. 如果你以前 ...
- 零基础入门学习Python(6)--Python之常用操作符
前言 Python当中常用操作符,有分为以下几类.幂运算(**),正负号(+,-),算术操作符(+,-,*,/,//,%),比较操作符(<,<=,>,>=,==,!=),逻辑运 ...
- 将一个list中的元素的某一属性取出来单独放到一个list里面
有很多时候我们会遇到这样的场景,就是要将一个list中的某一个元素中的某一属性单独拿出来放在一个新的list里面,这中时候,我们就可以用以下的方法来进行实现: List<DTO> item ...
- 初学数位DP
所谓数位dp,字面意思就是在数位上进行dp,数位的含义:一个数有个位.十位.百位.千位.等等,数的每一位就是数位. 数位DP一般应用于: 求出给定区间[A,B]内,符合条件P[i]的数 i 的个数. ...
- 集训第五周 动态规划 B题LIS
Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u Submit Status Des ...
- h-ui.admin.pro.iframe头部和标签Tab修改CSS
原效果:头部高度偏高,tab标签不太好看 修改后:缩小高度,调整tab标签css样式 百度网盘链接:https://pan.baidu.com/s/1qknPNAMGL7BFUIsleOF9M ...