Java语言 day02
Java程序的运行机制
了解什么编译型语言,什么是解释语言;
编译型:编译整块代码,产生一个目标代码(文件),执行目标代码(文件);
解释型:解释一段代码,执行一段代码;
程序运行机制
Java程序运行图如下:

【上图为一个简单的流程图,如需更详细的流程图,请自行百度】;
IDEA开发
了解什么是IDE
IDEA安装
IDEA官网:IntelliJ IDEA: The Capable & Ergonomic Java IDE by JetBrains
【该软件需付费,可以选择使用免费版,还有另一种方法(...)。如果觉得麻烦,可下载eclipse,去官网下载即可;】
具体安装步骤及配置:
【狂神说Java】Java零基础学习视频通俗易懂_哔哩哔哩 (゜-゜)つロ 干杯~-bilibili
或者百度安装及配置步骤;
IDEA编写程序
-
在本地创建一个固定的存放代码的目录;
-
使用IDEA新建一个项目,选定第一步创建的文件夹为项目本地存放目录;
-
创建一个.class文件,编写代码,最后执行测试;
运行结果:

Java基础篇
注释
注释即解释,用以解释一段代码的主要含义或者用途;
注释不会被执行,只用于给人来看;
养成一个良好的写注释的习惯;
Java中的注释
单行注释
//注释内容
多行注释
/*
注释内容1
注释内容2
*/
文档注释
/**
*注释内容A
*注释内容B
*/
【单行与多行注释常用】
标识符
关键字

【Java中所有组成部分都需要一个名字。包括类名、变量名和方法名,这些都被称为标识符。】
标识符注意点
-
所有标识符都应该以字母(A-Z或者a-z),美元符($),或者下划线(_)开始。(首字母)
-
首字母之首可以是字母(A-Z或者a-z),美元符($),或者下划线(_)或数字的任何字符组合。
-
不能使用关键字作为变量名或方法名。
-
标识符是大小写敏感的。(即严格区分大小写)
-
合法标识符举例:age、$salary、_value、__1_name;
-
非法标识符举例:123abc、-value、#name;
-
可以使用中文命名,但是一般不建议这样去使用,建议使用拼音;

数据类型
强类型语言
要求变量的使用严格符合规定,所有变量都必须先定义后才能使用。
Java语言即强类型语言。
弱类型语言
变量使用无严格规定;如一些脚本语言,JavaScript等;
Java的数据类型分为两大类
基本类型(Primitive type)
引用类型(reference type)

代码如下:
public class DataType01 {
public static void main(String[] args) {
//八大基本数据类型
//整数
int num1 = 10; //最常用
byte num2 = 20;
short num3 = 30;
long num4 = 30L; //Long类型要在数字后面加L
//小数:浮点数
float num5 = 50.1F; //float类型要在数字后面加个F
double num6 = 3.14159265358;
//字符
char name = '中';
/*字符串,String 不是关键字,是一个类;
String country = "中国";*/
//布尔型:是/非
boolean flag = true;
// boolean flag = false;
System.out.println(num1);
System.out.println(num2);
System.out.println(num3);
System.out.println(num4);
System.out.println(num5);
System.out.println(num6);
System.out.println(name);
System.out.println(flag);
}
}
运行结果:

数据类型扩展及思考
(请仔细读注释内容)
直接上代码:
public class Datatype02 {
//在了解前面的基础上进行扩展,去思考一下代码;
public static void main(String[] args) {
//整数类型扩展: 进制: 二进制0b、 八进制0、十进制、十六进制0x;
int i1 = 10;
int i2 = 0b10;
int i3 = 010;
int i4 = 0x10;
System.out.println(i1);
System.out.println(i2);
System.out.println(i3);
System.out.println(i4);
System.out.println("======================================================");
/*浮点数扩展
* =========================
* 日常生活中,银行业务怎么表示?
* 使用BigDecimal 数学工具类
* =======================
* 如果使用float与double会怎么样?
* float 是有限的,离散的,有舍入误差,是大约,接近但不等于;
* double
* 得出结论 最好完全避免使用浮点数进行比较!!!
* 得出结论 最好完全避免使用浮点数进行比较!!!
* 得出结论 最好完全避免使用浮点数进行比较!!!
* */
float f = 0.1f; //0.1
double d = 1.0/10; //0.1
System.out.println(f==d); //false
float f1 = 121123123f;
float f2 = f1+1;
System.out.println(f1==f2); //ture
System.out.println("============================================================");
//字符类型扩展
char c1 = 'z';
char c2 = '中';
System.out.println(c1);
System.out.println((int)c1);//强制转换为int型
System.out.println(c2);
System.out.println((int)c2);//强制转换为int型
/* 为什么会出现上面代码运行结果的情况?
* 因为所有的字符本质上还是数字(在计算机内部)
* 如 Unicode编码,2字节,0~65536,区间 U0000~UFFFF
* */
char c3 = '\u0061';
System.out.println(c3);//a
/*转义字符
* \t 制表符
* \n 换行符
* \\ 反斜杠
* ...*/
System.out.println("Hello\tWorld");
System.out.println("Hello\nWorld");
System.out.println("==========================================================");
/*字符串扩展
* 学习对象后,从内存方面分析*/
String sa = new String("Hello World");
String sb = new String("Hello World");
System.out.println(