环境变量配置
- 1:为什么要配置环境变量
为了方便能够直接找到java和javac的路径
- 2:如何配置环境变量
在window操作系统下的cmd中运行某个可执行程序.exe.
cmd会查找当前这个可执行程序,查找方式先找当前目录,去path中寻址
只需要配置path即可
右击计算机->属性->高级系统设置->环境变量->系统变量->path
修改path的值,增加jdk的bin目录到path下
- 注意事项
1:目前来讲为了方便更改jdk的版本,我们可以配置JAVA_HOME
2:classpath,jdk1.5之后不需要配置classpath
classpath的作用就是存放字节码文件的路径,方便java命令执行字节码文件。
运行java文件的常规操作
- 第一步:编写代码
public class Demo{
public static void main(String[] args){
System.out.println("随便写");
}
}
第二步:保证path和JAVA_HOME已经配置成功了。
第三步:打开cmd 进入到.java文件所在的路径
第四步:开始编译以及执行
QQ截图20190709202133.png
第一个java程序的易错点
1: 中英文符号 所有编程中的符号都使用英文符号。
2: 严格区分大小写
3: class后的名称要和.java的文件名一模一样
4: 文件名和class的名称要保证不是数字开头
_______________________编译错误____________________________
main方法一定要这样写: public static void main(String[] args)
_______________________运行错误____________________________
第一个程序中的每个单词的含义:
public class Demo01{
public static void main(String[] arg){
System.out.println("hello world de");
}
}
public: 权限修饰符 公开的
class:类 java中所有的代码都是以类为单位的
Demo01:类名
static:静态的 修饰符
void:返回类型
main: 名字 方法名称 以后但凡看见()证明方法出现了
():方法出现了 括号里面的内容 叫做参数
System.out.println(); 方法就是一个功能 它能做什么 输出内容的 “” : “”引起来的内容就是输出内容 保证原样输出
;:一条语句结束 []、()、{}: 全部都是成对出现
[]:代表数组出现了
{}:代码块
深入理解第一个程序
public修饰的类称之为主类,主类的类名要保证和.java文件的文件名一致
一个.java文件中有且只能有一个public修饰类
一个.jave文件中是可以存在很多类,编译时会将每个class都生成对应的字节码文件
main方法任意类中都可以存在
main方法称之为程序的入口点,一个程序要想执行必须保证当前类中存在main方法,main方法也被称之为主方法。 主方法的定义一定是:public static void main(String[] args){}
注释
-
作用
就是解释说明的文字,方便别人阅读你的代码
-
注意
注释都是编译期的行为,程序编译之后所有的注释内容全部消失
注释的分类
注释分类 | 用法 | 注意事项 |
---|---|---|
单行 | // 注释内容 | 注释一行 |
多行 | /* 注释内容 */ | 注释多行 ,不要和文档行注释嵌套使用 |
文档 | /** 注释内容 */ | 生成帮助文档 |
Java基础语法
标识符
什么是标识符
标注 识别 符号
标识符的作用
就是用来起名字的,给类、方法、变量、常量等等起名字
标识符规则
1:以字母、下划线、$ 开头 后跟 字母、下划线、$、数字
2:不能是java中的关键字
3:java中严格区分大小写
4:长度是无限制 扰码
两个约定
1:见名知意 推荐全英文 拼音
2:驼峰原则 gaoyunfeng ->类名:GaoYunFeng
关键词
什么是关键词
java中的有一些单词 java有自己的特殊用途
java中的关键词有哪些
QQ截图20190709203934.png
QQ截图20190709203952.png
Tips: 凡是在编辑工具中颜色标蓝色就是关键词。
字符集合
什么是字符集合
维护了一张字符和数字的表。实际计算机存储的时候,是将字符对应的数字找到,存储数字对应的二进制的 数。
java采用的字符集合叫做Unicode。 Unicode 一个字库表,里面维护了目前世界上所有的常见字符。 UTF-8说的是实际采用的字符编码,也就是字库表中找到了字符之后,找到对应的十进制数之后,通过UTF-8查 找实际计算机存储的二进制值。
编写代码出现乱码
public class 中国{
public static void main(String[] args){
}
}
以上内容选择的字符集合是utf-8,cmd中默认采用的编码方式是ANSCII。字符集合不匹配导致乱码。
修改方式
第一种:修改当前文件的字符集合 在格式中选择转为ANSI
第二种:编译当前.java文件时 指定编译的字符集合 javac 文件 -encoding 当前文件采用的字符集合
变量
什么是变量
在程序运行期间其值可以发生改变。
如何使用变量
变量的声明:
数据类型 变量名;
java当中的变量如果要使用一定要声明且初始化
声明初始化
在java中变量先声明:数据类型 变量名;
声明和初始化可以在一起:
数据类型 变量名 = 具体的值; 将一个具体的值赋值给制定的数据类型存放,起了个名字叫做 变量名 int num = 10;
Tips: 在一个程序中不能定义同名的变量。
数据类型
java是一门强类型的语言,所有的数据都有其制定的类型。
java中数据类型的分类
基本数据类型: 数值型
整数型
字节型: byte 短整形:short 整形:int 长整型:long
小数型
单精度:float 双精度:double
逻辑型 boolean:
字符型 char:
引用类型: 类 接口 数组
整数
public class Demo02{
public static void main(String[] args){
//1:声明一个byte类型的变量
byte num = 120;
System.out.println("byte类型的变量num的值是:num="+num);
//2:声明一个short类型的变量
short sh = 10000;
System.out.println("shrot类型的变量sh = "+sh);
//3:声明一个int类型的变量
int in = 123456789;
System.out.println("int类型的变量in = "+in);
//4:声明一个long类型的变量
long l = 12345678900L;
System.out.println("long类型的变量l = "+l);
}
}
Tips:
字节型 符号 所占空间 范围
byte 1字节 -128-127
注意事项 超过byte范围的数据无法正常给byte类型的变量赋值
报错信息: 错误: 不兼容的类型: 从int转换到byte可能会有损失 byte num = 1000;
短整型 符号 所占空间 范围
short 2字节 -32768-32767 +-3W
注意事项 超过short范围的数据无法正常给short类型的变量赋值
整型 符号 所占空间 范围
int 4字节 +-21亿
长整型 符号 空间 范围
long 8字节 灰常大
注意事项: 错误: 过大的整数: 12345678900 long l = 12345678900;
所有的整数默认的数据类型是int,当把查过int范围的字面值 赋值给long类型变量时,需要在字面值后加"l"或者"L"
注意当给byte和shot赋值时,只要数值不超过byte和short的 取值范围,就可以正常赋值。
对于某些特别大的整数值,long类型也是无能为力的。 后期通过BigDecimal、BigInteger去存储。
小数
public class Demo03{
public static void main(String[] args){
//声明一个小数
double d = 3.12;
System.out.println(10/3.0);
//声明一个小数
float f = 3.12F;
System.out.println(f);
double num = 0.3;
System.out.println(num==(0.1+0.2));
//System.out.println(10/0);
System.out.println(10/0.0);
System.out.println(-10/0.0);
System.out.println(-0.0/-0.0==0.0/0.0);// NaN非数 一个自己和自己不相等
}
}
Tips:
计算机存储小数是一个近似值。
小数:
双精度: 符号 精确程度 空间
double 小数点后15-16位 8字节
单精度: 符号 精确程度 空间
float 小数点后6-7位 4字节
java中的小数默认类型是double,当把一个double类型的字面值
赋值给float变量存放的时候,要在字面值后加"F""f"
System.out.println(10/0.0); 正无穷
System.out.println(-10/0.0);负无穷
System.out.println(-0.0/-0.0==0.0/0.0);NaN