JavaSE基础学习第二天内容(关键字 标识符 注释 常量 进制 变量 数据类型)

第二天学习JavaSE,主要内容有:

Java基础语法:

  1. 关键字
  2. 标识符
  3. 注释
  4. 常量
  5. 进制
  6. 变量
  7. 数据类型

1.关键字

关键字概述:被Java语言赋予特定含义的单词。

关键字特点:组成关键字的字母全部小写.

类似Notepad++这样的高级记事本,针对关键字有特殊的颜色标记,非常直观

用于定义数据类型的关键字:class,interface,byte,short,int,long,float,double.char.boolean,void.

用于定义流程控制的关键字:if,else,switch,case,default,while,do,for,break,continue,return.

判断数据真假空的关键字:true,false,null

用于定义访问权限修饰符的关键字:private,protected,public

用于定义类,函数,变量修饰符的关键字:abstract,final,static,synchronized

用于定义类与类之间关系的关键字:extends,implements

用于定义建立实例及引用实例,判断实例的关键字:new,this,super,instanceof

用于异常处理的关键字:try,catch,finally,throw,throws

用于包的关键字:package,import

其他修饰符关键字:native,strictfp(精准浮点),transient,assert。

2.标识符

	标识符概述:就是给类,接口,方法,变量等起名字时使用的字符序列。

	组成规则
		英文大小写字母
		数字字符
		$和_
	
	注意事项
		不能以数字开头
		不能是Java中的关键字
		区分大小写

	标识符常见的命名规则(见名知意)
		包(其实就是文件夹,用于解决相同类名问题)全部小写
		例如:alibaba.taobao.gouwuche(每一个点就是下一级相当于在alibaba/ taobao / gowuche 的文件夹构造)
		
		类或者接口
			一个单词组成:单词的首字母必须大写。
			多个单词组成:每个单词的首字母必须大写。
		
		方法和变量
			一个单词:单词的首字母小写;举例:main,age。
			多个单词:从第二个单词开始,每个单词的首字母大写;举例:studentAge,showAllNames()
		
		常量
			一个单词:全部大写;举例:PI
			多个单词:每个字母都大写,用_隔开;举例:STUDENT_MAX_AGE

3.注释

注释概述:用于解释说明程序的文字。

Java中注释分类格式
	单行注释
		格式: //注释文字
	多行注释
		格式: /*  注释文字  */
	文档注释
		格式:/** 注释文字 */
		目的:被javadoc工具解析生成一个说明书。

如何写注释呢?
	需求:我准备干什么
	分析:我准备怎么干
	实现:使用Java具体格式实现

作用:除了解释说明程序,也可以帮助我们调试程序。

4.常量

常量概述:在程序执行的过程中其值不可以发生改变。

Java中常量分类
	字面值常量
		A:字符串常量(用双引号括起来的内容)
			举例: "hello","world","HelloWorld"
		B:整数常量(所有整数)
			举例:100,200
		C:小数常量(所有小数)
			举例:10.23,110.11
		D:字符常量(用单引号括起来的内容)
			举例:'a','A','0'错误'ab'
		E:布尔常量
			举例:true,false
		F:空常量
			举例:null
	
	自定义常量(先不讲)

5. 进制

进制概述:进制:就是进位制,是人们规定的一种进位方法。 对于任何一种进制--X进制,就表示某一位置上的数运算时是逢X进一位。二进制就是逢二进一,八进制是逢八进一,十进制是逢十进一,十六进制是逢十六进一。

Java针对整数常量提供了4种表现形式
	二进制
		由0,1组成。以0b开头(零b)
	八进制
		由0,1,…7组成。以0开头(零)
	十进制
		由0,1,…9组成。整数默认是十进制的
	十六进制
		由0,1,…9,a,b,c,d,e,f(大小写均可)。以0x开头(零x)
字节:由8个位组成,详细原理见下图
关于字节的规律产生以及二进制转8,16进制的转换如图(刘意老师授课时的图)

在这里插入图片描述
进制之间的转换:
其他进制转换到十进制的方法如图
在这里插入图片描述
十进制转换到其他进制
在这里插入图片描述
进制转换的小技巧
十进制和二进制的快速转换
8421码
8421码是中国大陆的叫法,8421码是BCD代码中最常用的一种。在这种编码方式中每一位二值代码的1都是代表一个固定数值,把每一位的1代表的十进制数加起来,得到的结果就是它所代表的十进制数码。
100转成二进制
101101转成十进制

二进制和八进制,十六进制如何转换:以十进制作为桥梁
二进制到八进制 3位组合
二进制到十六进制 4位组合
练习:100110
8421码的具体操作和任意的x进制到y进制的转换(如图)
在这里插入图片描述
有符号的数据表示法:在计算机内,有符号数有3种表示法:原码、反码和补码。所有数据的运算都是采用补码进行的。
原码
就是二进制定点表示法,即最高位为符号位,“0”表示正,“1”表示负,其余位表示数值的大小。
反码
正数的反码与其原码相同;负数的反码是对其原码逐位取反,但符号位除外。
补码
正数的补码与其原码相同;负数的补码是在其反码的末位加1。
原码反码补码的具体操作形式以及两道练习题:
在这里插入图片描述
两题答案:
在这里插入图片描述

6. 变量

变量的概述
在程序执行的过程中,在某个范围内其值可以发生改变的量。理解:如同数学中的未知数

变量定义的格式
数据类型 变量名 = 初始化值;
注意:格式是固定的,记住格式,以不变应万变

变量的组成规则
A:必须对其进行限定。(使用数据类型进行限定)
B:必须给这个空间去一个名字我们叫它变量名,用来运算
C:一定要给值
变量的定义格式如图:
在这里插入图片描述
使用变量的注意事项
1.作用域:变量定义在哪一级大括号中,哪个大括号的范围就是这个变量的作用域。相同的作用域中不能定义两个同名变量
2.初始化值:没有初始化值不能直接使用。
3.在一行上建议只定义一个变量,可以定义多个,但是不建议
int a, b ;这样可以
int a , int b;这样就不行

7. 数据类型

数据类型的概述
Java语言是强类型语言,对于每一种数据都定义了明确的具体数据类型,在内存总分配了不同大小的内存空间。

基本数据类型

  1. 数值型

    整数类型(byte,short,int,long)
    	byte:1个字节(1kb)-128~127
    	short(短整型):2个字节(2kb)-2^15~(2^15)-1
    	int(整型):4个字节(4kb)-2^31~(2^31)-1
    	long(长整型):8个字节(8kb)-2^63~(2^63)-1
    		为了和int类型区分,以后写long类型后面都加L
    	整数默认:int
    浮点类型(float,double)
    	float(单精度):4个字节(4kb)-3.403E38~3.403E38
    		单精度浮点型为了区分后面加F或f
    	double(双精度):8个字节(8kb)-1.798E308~1.798E308
    	小数默认:double
    		E38的意思是10……38
    字符型(char)
    	char:2个字节(2kb)
    布尔型(boolean)
    	boolean:1个字节(1kb)(没有明确表明)
    
  2. 引用数据类型

    类(class)
    接口(interface)
    数组([ ])

  3. 数据类型的转换

    一般运算都是使用相同的数据类型。
    注意
    (1)boolean类型不参与转换
    (2)默认转换
    A:从小到大
    B:byte,short,char – int – long – float – double(转换从小到大的顺序)
    C:byte,short,char之间不相互转换,直接转成int类型参与运算。(例子两个byte做加法直接转成int类型)
    (3)强制转换
    A:从大到小
    B:可能会有精度的损失,一般不建议这样使用。
    int运算强转byte可能损失精度的原理如图
    在这里插入图片描述
    C:格式:目标数据类型 变量名 = (目标数据类型) (被转换的数据);举例 byte c = (byte)(a+b)。

  4. 数据类型的补充知识

    在定义Long或者Float类型变量的时候,要加L或者f。
    整数默认是int类型,浮点数默认是double。
    byte,short在定义的时候,他们接收的其实是一个int类型的值。
    这个是自己做了一个数据检测的,如果不再它们的范围内,就报错。

    byte值的问题

    byte b1 = 127;
    byte b2 = (byte)128; //-128
    byte b3 = (byte)129; //-127
    byte b4 = (byte)130; //-126
    byte的范围:-128 ~ 127
    128:10000000
    -128:10000000 (这里的1即是符号位,也是数值位)

    浮点数(float)的二进制存储方式:float类型数字在计算机中用4个字节存储。遵循IEEE-754格式标准:
    一个浮点数有2部分组成:底数m和指数e

    底数部分 使用二进制数来表示此浮点数的实际值
    指数部分 占用8bit的二进制数,可表示数值范围为0-255

    但是指数可正可负,所以,IEEE规定,此处算出的次方必须减去127才是真正的指数。
    所以,float类型的指数可从-126到128

    底数部分实际是占用24bit的一个值,但是最高位始终为1,所以,最高位省去不存储,在存储中占23bit
    科学计数法。

    格式:
    SEEE EEEE EMMM MMMM MMMM MMMM MMMM MMMM
    S表示浮点数正负
    E指数加上127后的值得二进制数据
    M底数

    举例:
    17.625在内存中的存储

    首先要把17.625换算成二进制:10001.101

    整数部分,除以2,直到商为0,余数反转。
    小数部分,乘以2,直到乘位0,进位顺序取。
    

    在将10001.101右移,直到小数点前只剩1位:
    1.0001101 * 2^4 因为右移动了四位

    这个时候,我们的底数和指数就出来了
    底数:因为小数点前必为1,所以IEEE规定只记录小数点后的就好。所以,此处的底数为:0001101
    指数:实际为4,必须加上127(转出的时候,减去127),所以为131。也就是10000011
    符号部分是整数,所以是0
    综上所述,17.625在内存中的存储格式是:
    01000001 10001101 00000000 00000000

    数据类型转换之默认转换
    byte,short,char – int – long – float – double

    long: 8个字节
    float:4个字节
    为什么float在long的后面
    A:它们底层的存储结构不同(具体原因在上面)。
    B:float表示的数据范围比long的范围要大
    long:2^63-1
    float:3.410^38 > 210^38 > 28^38 = 22338 = 2*2^114 > 2^63-1

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值