1:java概述
1:java的跨平台性:
首先java是一门解释性语言:解释性语言被编译后无法被计算机直接识别,而编译性语言编译后直接编译为2进制语言直接可以被计算机识别,所以java语言编译后需要解释器来执行
java的跨平台性:java程序被编译后生成,然后在jvm下运行,而jvm根据计算机电脑版本的不同可以下载对应的jvm然后进行对.class文件运行
2:jdk
jdk:JRE+(java的开发工具(java,javac,javap,javadoc))
JRE:jvm+java类库
3:java的一条特性
每个java源文件里面只能有一个public修饰的类,但是可以有多个非public修饰的类,main方法也可以写在非public修饰的类里面,通过运行非public类来进入非public修饰类的main方法
4:绝对路径和相对路径
相对路径…\abc2\test200\hello.txt
绝对路径D\abc2\test200\hello.txt
2:变量
1:变量的三要素:变量类型 变量名 值
2:“+”的用法
当两边都是基本类型就是加法运算
当两边有一边是字符串类型就是拼接
运算顺序从左到右
3:数据类型
4:浮点类型
构成:符号位+指数位+尾数位
小数除法保留的都是近似值
小数不建议直接比较相等不相等,建议取差值有没有在规定的误差范围内
5:API文档
6:char类型内存存储和读取方式
存储:’a‘转化为对应的的编码值97,再转为二进制数字再储存在计算机种
读取:二进制转化为十进制编码值,再转化为对应的字符
几种编码:ASCll 1个字符大小 可以表示256个字符,但是只用了128个
Unicode:一个字符两个字节大小(浪费空间)
utf-8:字母一个字节,汉字三个字节(大小可变的编码)
gbk:字母一个字节,汉字两个字节
gb2312
big5码
7:boolean
大小占一个字节,只有false和ture两个取值
8: 基本数据类型转换
自动类型转化:char-int-long-float-double;byte-short-int-long-float-double
当赋值或者运算时候,精度小的自动转化为精度大的数据类型
自动转换细节和注意
整型型常量默认为int
浮点型常量默认为double
表达式结果自动转化为操作数中最大的类型
char,byte,short三者不能自动转化
有多种类型数据运算时候会将所有数据转化为最大数据类型,再进行计算
强制类型转换
自动类型转换的逆过程,将容量大的数据类型转换为容量小的数据类型。使用时要加上强制转换符 ( ),但可能造成
精度降低或溢出,格外要注意。
9:基本数据类型和 String 类型的转换
但是String类型转化为基本数据类型要合法,你不能把一个”hello“转化为整数类型