一.Java概述
1.Java语言背景介绍
1.1.Java之父是谁
詹姆斯 高斯林
1.2.Java语言版本及作用
JavaSE:JAVA的基础
JavaEE:企业开发,常用于后端开发
JavaME:嵌入式电子消费,现在基本上用不上了
2 Java语言跨平台原理
平台:指的是电脑的操作系统,例如windows、Linux、iOS
跨平台指的是同一份java文件,无需修改,可以在不同的操作系统进行运行
Java跨平台原理:2.1 先编写一个.java源文件
2.2 在将.Java源文件通过Javac编译成.class文件
2.3通过JVM在不同的操作系统实现.class文件的运行
3 JDK、JRE和JVM的关系
JDK:JRE+JAVA开发工具
JRE:JVM+Java核心类库
4 JDK的下载安装
下载地址:http://www.oracle.com
安装:现在很多教程
path环境变量配置也是现在很多教程
5 第一个编程Hellworld的编写和运行
public class HelloWorld{
public static void main(String[] args){
System.out.println("HelloWorld");
}
}
运行结果:
6 注释
注释是一个程序员的基本素养
// 单行注释
/* / 多行注释
/* / 文档注释
7 关键字
关键字:是Java定义的具有特殊含义的单词
1 关键字都是小写的
2 关键字在Notepa++(高级编辑器)里都是有颜色的
8 常量
常量指的是java文件执行中不会改变的值
例如 自定义常量(final + 变量定义)
9 变量
10 数据类型
基本数据类型+引用数据类型
基本数据类型(4类8种):都是用字节存储
整数类型(4种):byte(1字节)[-128,127]、short(2字节)、int(4字节)、long(8字节)
浮点类型(2种):float(4字节)、double(8字节)
字符类型(1种):char(2字节)
布尔类型(1种):boolean(2字节)
引用数据类型:类,数组,接口,枚举
11 标识符
数字、字母、下划线和$组成的字符
但是数字不能放在首位
一般有两个公认的命名方法
小驼峰(方法,变量)
大驼峰(类,接口,枚举)
12 算数运算符
+、-、、/、%取模 一共5种
ASCII:a=97; A= 65;0=48
public class Test1{
public static void main(String[] args){
int a = 10;
int b = 20;
System.out.println(a+b);
System.out.println(a-b);
System.out.println(a*b);
System.out.println(a/b);//整数除以整数 只能得整数 不是四舍五入
System.out.println(a%b);
}
}
运算结果:
注意事项:
字符串的“+”操作:出现+操作中出现字符串时,此时+是字符串连接符
字符串可以使用+号跟任意数据类型拼接
public class Test1{
public static void main(String[] args){
int a = 10;
int b = 20;
System.out.println(a+"adb"+b);
}
}
运行结果:
13 自增自减运算符
++;-- 单独使用 在前在后没有区别
int a =10;
b= ++a 在前:先自增 在运算 b =11
b= a++ 在后:先运算 在自增 b=10
public class Test1{
public static void main(String[] args){
int a = 10;
int b = a++;
int c = ++a;
System.out.println(a);//输出12
System.out.println(b);//输出10
System.out.println(c);//输出12
}
}
14 赋值运算符
= += -= *= /= %= ++
扩展赋值运算符底层会自动强制转换
++ += 底层会自动强制转换 不同:++只能增加1
public class Test1{
public static void main(String[] args){
int a = 10;
a += 11;
System.out.println(a); //输出21
}
}
15 关系运算符(比较运算符)
== != > < >= <= 结果都是boolean
16 逻辑运算符
&与 都是true 才是true
| 或 有一个true 就是true
!非 取反
^异或 相同为false 不同为true
作用:整合多个比较表达式的条件
短路逻辑运算符
&& 具有短路功能 左边为false 右边不执行
|| 具有短路功能 左边为true 右边不执行
17 三元运算符
表达式?表达式1:表达式2
int a =10;
int b =20;
int max = a > b ?a:b;
a > b为true 取a,为false 取b
min = a < b ?a:b;
表达式1和表达式2 的结果是一个数据类型
public class Test1{
public static void main(String[] args){
int a = 10;
int b = 11;
int c = a > b?a:b;
System.out.println(c); //输出11
}
}