配置临时环境变量
在现实开发中有时候jdk版本的信息有时候只会使用一次或者几次就不再使用了,通过set命令配置临时环境变量。
临时环境变量就是仅对于当前控制台窗口起作用,窗口一旦关闭,那么配置的临时环境变量信息会发生消失。
set命令的用法:
set 查看所有的环境变量信息。
set 环境变量的名字 查看指定的环境变量信息。
set 环境变量名字 = 路径信息 设置指定的环境变量信息。
set 环境变量名字 = 清空指定的环境变量信息。
set 环境变量名字 = 新路径;%环境变量名字% 在原有的基础上添加新的路径信息。
注意: 以后大家但凡看到是set命令设置的环境变量信息,都是临时环境变量信息。
标识符和关键字
/* 标识符: 在java程序中有些名字是可以自定义的,那么这些自定义的名字我们就 称作为自定义的标识符。 标识符要注意的细节: 1. 标识符的组成元素是由 字母(a-zA-Z) 、数字(0-9) 、 下划线(_)、 美元符号($). 2. 标识符不能以数字开头。 3. 标识符是严格区分大小写的。 4. 标识符的长度是没有长度限制的。 5. 标识符的命名一般要有意义(见名知意) 6. 关键字、保留字不能用于自定义的标识符。 自定义标识符的规范: 1. 类名和接口名单词的首字母大写,其他单词小写。 比如: RunTime. 2. 变量名与方法名首单词全部小写,其他单词首字母大写,其他小写。 比如: doCook(); 3. 包名全部单词小写。 4. 常量全部单词大写,单词与单词之间使用下划线分隔。 比如: UP_DIRECTION 判断一下那些是 符合的标识符: 12abc_ 不合法 数字不能开头 _12abc 合法 $ab12# 不合法 #号不属于标识符组成元素。 [email protected] 不合法 @号不属于标识符组成元素。 关键字:关键字就是在java程序中具备特殊含义的标识符。关键字一般用于描述一个程序的 结构或者表示数据类型。 */ class Demo1{ public static void main(String[] args) { System.out.println("Hello World!"); } }
注释
/* 注释: 注释就是使用文字对程序的说明,注释是写给程序员看的,编译器会忽略注释的内容的。 注释的类别: 第一种: 单行注释。 // 注释的内容 第二种: 多行注释。 /* 注释的内容 */ /* 第三种: 文档注释. /** 注释的内容 */ /* 文档注释也是一个多行注释。 注释要注意的细节: 1. 单行注释可以嵌套使用,多行注意是不能嵌套使用的。 注释的作用: 1. 使用文字对程序说明。 2. 调试程序。 */ class Demo2 { /* 这个是一个程序先要输入用户名与密码的 然后再校验用户名与密码 */ public static void main(String[] args) { System.out.println("请输入用户名与密码"); System.out.println("校验用户名与密码"); System.out.println("aaa"); //这句话是测试使用的,不用管 System.out.println("展示好友列表"); } }
/* 软件 = 数据 + 指令 + 文档(使用者文档+ 开发者文档) 文档注释与多行注释的区别: 多行注释与文档注释的区别: 多行注释的内容不能用于生成一个开发者文档, 而文档注释 的内容可以生产一个开发者文档。 使用javadoc开发工具即可生成一个开发者文档。 javadoc工具的使用格式: javadoc -d 存放文档的路径 java的源文件 使用javadoc工具要注意细节: 1. 如果一个类需要使用javadoc工具生成一个软件的开发者文档,那么该类必须使用public修饰。 2. 文档注释注释的内容一般都是位于类或者方法的上面的。 写注释的规范:一般单行注释是位于代码的右侧,多行注释与文档注释一般是写在类或者方法的上面的。 */ /** 该类是用于模拟QQ软件的 @author 1208JAVA基础班全体同学 @version 1.0 */ public class Demo3 { /** 操作的流程如下: 1.首先先输入用户名密码 2. 校验用户名与密码 3. 展示好友列表 */ public static void main(String[] args) { System.out.println("请输入用户名与密码"); //这句话是用于输入用户名与密码的。 System.out.println("校验用户名与密码"); System.out.println("展示好友列表"); } }
/* 软件 = 数据+ 指令+ 文档 常量: 常量就是程序在运行过程中其值不能发生改变的量。 常量的类别: 整数常量 10 12 小数常量 3.14 布尔常量 布尔常量只有两个值: true(正确). false(错误) 字符常量 字符常量就是单个字符使用单引号引起来的内容我们称作为字符常量。 字符串常量 字符串常量就是使用双引号引起来的内容称作为字字符串常量。 整数常量的表现形式:整数的表现形式主要是以不同的进制(二进制、八进制、十六进制)表现出来。 进制: 十进制(0~9) 、 星期(七进制 0~6)、 小时(12进制(0-11)、 24进制(0~23)) 进制:用有限的数字符号代表所有的数值。 计算机的出现是为了服务于人类的,那么人类在现实生活中使用的数据基本上都是 十进制的数据,那么计算机是否有可以存储现实生活中的数据呢?如果可以存储又以哪种形式存储呢? 二进制由来。 电脑记录我们现实生活中的数据都是使用二进制进行记录的,那么我们就要懂得如何把十进制数据转换成二进制。 十进制与二进制之间的转换: 十进制转二进制的方法:使用十进制的数据不断除以2,直到商为0为止。从下往上取余数就是 对应的二进制。 10(十进制)-------->1010(二进制) 二进制转十进制:使用二进制的每一位乘以2的n次方,n从0开始,每次递增1,然后把各部分的数据 相加即可。 1110(二进制) ---------> 14(十进制) 二进制的弊端: 二进制的书写太长了,不方便人类记忆。 二进制的数据特点: 由0~1组成。 解决方案:每三个二进制位就就记录一个数字。 1000(十进制)------> 001,111,101,000(二进制) = 1,7,5,0 一个八进制的数据就是相当于三个二进制位。 十进制与八进制之间的转换: 十进制转八进制:使用十进制的数据不断除以8,直到商为0为止。从下往上取余数就是 对应的八进制。 45(十进制)------> 55 (八进制) 八进制转十进制:使用八进制的每一位乘以8的n次方,n从0开始,每次递增1,然后把各部分的数据 相加即可。 23(八进制)------> (十进制) 八进制数据的特点: 只有0~7这八个字符组成的。 十六进制的数据: 0~9 , a(10),b (11),c(12),d(13), e(14),f(15), 四个二进制位就是一个十六进制的数据. 十六进制的数据是有0~9、a-f这几个字符组成的。 十进制转换成十六进制:使用十进制的数据不断除以16,直到商为0为止。从下往上取余数就是 对应的十六进制。 38(十进制)---->26 (十六进制) 十六进制转十进制:使用十六进制的每一位乘以16的n次方,n从0开始,每次递增1,然后把各部分的数据 相加即可。 34(十六进制)-----> 52(十进制) */ class Demo4{ public static void main(String[] args){ /* System.out.println(12); //整数常量 System.out.println(3.14); //小数常量 System.out.println(false); //布尔常量 System.out.println(‘1‘); //字符常量 System.out.println("hello world"); //字符串常量 如果一个数据没有加上任何的标识之前,默认就是十进制的数据。 */ System.out.println(10);// 十进制 System.out.println(0b10); //二进制 , 如果一个数据要表示二进制,那么要在该数据的前面加上0b开头。 System.out.println(010); //八进制数据, 八进制的数据需要以0开头 System.out.println(0x10); //十六进制数据, 十六进制的数据需要以0x开头 } }
/* 在现实生活中有很多数据是经常会发生变化 的。 比如: 天气 、 心情 、 时间、 股市... 变量: 变量就是在程序运行过程中其值可以发生变化的量. 变量就是一个存储数据的容器。 容器具备什么特点: 1. 容量(大小)。 2. 存储一定格式的数据。 3. 名字. 声明(定义)一个变量的格式: 容量 变量名字 = 数据。 变量名的命名规范: 首单词小写,其他单词首字母大写,其他小写。 java表示一个变量的容量多大是使用了数据类型描述的。 在java中 的数据类型主要有两种数据类型 基本数据类型 引用数据类型 java中的八种基本数据类型: 整数的数据类型: byte(字节) 8位(bit) 2^8 = 256 -128~127 short(短整型) 16bit 2^16 = 65536 int(整型) 32bit long(长整型) 64bit 2^64 = 注意: 如果一个整数没有加上任何的标识的时候,那么默认是int类型的数据。 如果需要把该数据表示成一个long类型的数据,那么需要加数据后面加上L表示,L是不区分大小写的,但是建议使用大写。 疑惑:存储整数可以使用四种数据类型,那么具体怎么选择使用呢? 选用数据类型的原则: 在能满足需求的情况下,能小就小。节省内存空间。 小数的数据类型: float(单精度浮点型) 32bit double(双精度浮点型) 64bit 注意: 如果一个小数没有加上任何标识的时候,那么该小数默认是double类型的数据,如果 需要表示成float类型,那么需要在小数的后面加上f表示。f不区分大小写的。 布尔类型:布尔类型只有两个值,true或者false。 boolean 1字节或者4个字节 如果使用boolean声明一个基本类型的变量时,那么该变量占4个字节, 如果使用boolean声明一个数组类型 的时候,那么每个数组的元素占 一个字节。 字符类型: char 2字节(16bit) 八种基本数据类型: 整数:byte short int long 小数: float double 布尔: boolean 字符: char 字符串的数据类型是:String 引用数据类型,不属于基本数据类型。 */ class Demo5 { public static void main(String[] args) { //需求1: 定义一个变量存储一个正常人的年龄。 byte age = 120; //声明了一个byte类型的变量,该变量的名字叫age,把120存储到了age变量中。 //改变变量的值 age = 121; //需求2: 定义一个变量存储老师口袋钱。 short money = 128; //需求3: 定义一个变量存储老黎的钱。 int bossMoney = 1000000000; //需求4: 定义一个变量存储周小川老板 long allMoney = 10000000000000000L; //存储小数 float f = 3.14f; double d = 3.1415926537; boolean b = false; char c = ‘a‘; String str = "hello world"; System.out.println(str); //需要获取一个变量存储的数据,只需要使用变量名即可。 } }
/* 声明变量的方式: 声明变量的方式一: 数据类型 变量名; 声明变量的方式二: 一次性声明了多个相同类型变量 数据类型 变量名1 , 变量2.... 注意: 1. 变量是必须先声明再使用。 2. 在一个作用域中不能声明同名的变量。 */ class Demo6 { public static void main(String[] args) { //int age = 12; //声明一个变量 int age ,height ; //声明了变量 //给变量赋值 age = 10; height = 175; System.out.println(age); System.out.println(height); } }
类型转换
可以把byte 理解为1两的碗,short 2两的碗,int 4两的碗,long 8两的碗。1两碗的满碗酒可以倒入 2两 4两 8两的碗中。但是 4两碗的酒倒入1两碗的酒就有一些问题。
思考1
byte b=126;
问:既然数据默认的有数据类型,那么126 默认是int类型的,为什么存储到byte类型时不会报错呢。
126 是常量java在编译时期会检查该常量(每个常量)是否超出byte类型的范围。如果没有可以赋值。
思考2:byte b=128;能否正常的编译和运行。
该语句会出现编译错误,128超出了byte变量的存储范围,所以出现编译错误。
思考2
byte b1=3,b2=4,b;
b=b1+b2;
b=3+4;
哪一句编译失败?为什么?
b =3+4, 3和4都是常量,所以java在编译时期会检查该常量(每个常量)是否超出byte类型的范围。如果没有可以赋值。例如b=128+1 就无法编译通过。b=127+1;也是无法通过。
b =b1+b2 不可以,因为b1 和b2 是变量,表达式求值时,变量值会自动提升为int型,表达式结果也就成了int型,这是要赋值给byte型的b,必须进行强制类型转换了。