了解Java特性和优势
简单性、面向对象、可移植性、高性能、分布式、动态性、多线程、安全性、健壮性
Java三大版本
JDK、JRE、JVM
JDK:开发者工具(包含JRE、JVM)
JRE:运行环境
JVM:Java虚拟机
重启第一步:
HelloWorld
Java注释:
注释虽然可以不写,但是是一个非常好且重要的习惯
标识符
八大基本类型:
引用类型:
“String不是一个关键字而是一个对象,为引用类型“
强制类型转换 高->低
自动类型转换 低->高
// 操作比较大的数据的时候,注意溢出问题 // JDK7新特性,熟自制件可以用下划线分隔 int money = 10_0000_0000; int years = 20; int total = money*years;// 输出结果为:-1474836480,int长度不足,结果溢出 // 在'money*years'计算的时候溢出了,计算默认是int,转换之前已经存在问题 System.out.println(total); // 解决: long total1 = money*((long)years);// 先把一个数据转为long System.out.println(total1);
变量是什么,就是可以变化的值
Java变量是程序中最基本的存储单元,要素包括变量名,变量类型和作用域
注意:
每个变量都有类型,可以使基本类型,也可以是引用类型
变量必须是合法的标识符
变量声明是一条完整的语句,因此每一个声明都必须以分号结束
public class Demo { // 类变量 static static int salary = 5000; // 实例变量:从属于对象,如果不自行初始化,这个类型的默认值 0 // 布尔值默认为false // 除了基本离线,其余的默认值都是null String name = "王陌"; int age = 21; // main方法 public static void main(String [] args){ // 局部变量;必须声明和初始化值 int i = 10; System.out.println("局部变量,"+i); // 定义此类,调用类中的变量 // 变量类型 变量名字 = new Demo() Demo demo = new Demo(); System.out.println("实例变量,"+ demo.name + "," + demo.age); // 类变量 static System.out.println("类变量,"+salary); } }
命名规范:见其名知其意
初始化后不能在改变的值;不会变动的值
(多个修饰符时,不区分前后)
int a =3; int b = a++;// 后自增;先调用后自增+1 System.out.println(b); int c = ++a;// 先自增;先自增+1后调用 System.out.println(c);
// Math,数学函数 // 幂运算 double sum = Math.pow(2,3);// 2的三次方 System.out.println(sum);
a += b // a = a + b a -= b // a = a - b a *= b // a = a * b a /= b // a = a / b
关系运算符
逻辑运算符
// 与(and) 或(or) 非(取反) boolean a = true; boolean b = false; System.out.println((a && b) + " && 逻辑与运算:两个变量都为真,结果才为真"); System.out.println((a || b) + " || 逻辑或运算:两个变量其中有一个为真,结果为真"); System.out.println(!(a && b) + " ! 如果结果为真,则变为假;如果结果为假,则变为真"); // 短路运算
a = 0011 1100 b = 0000 1101 a & b = 0000 1100;a与b相比较,上下两个数都为1结果才为1,否则为0 a | b = 0011 1101;其中有一个为1结果为1 a ^ b = 0011 0001;其中有一个为1结果为1,如果两个都为1结果为0 ~1 = 1100 0011;取反1=0,0=1 << 左移 移一位等于*2 >> 右移 移一位等于/2
// 字符串连接符 + System.out.println("" + a + b); // a + b,在后面表示连接a和b System.out.println(a + b + ""); // a + b,在前面表示进行运算然后连接""