Java重要特点
-
Java语言是面向对象(oop)
-
java语言是健壮的。java的强类型机制、异常处理、垃圾的自动收集等是Java程序健壮性的重要保证
-
Java语言是跨平台性的。(即:一个编译好的.class文件可以在多个系统下运行,这种特性称为跨平台)
-
Java语言是安全的:Java通常被用在网络环境中,为此,Java 提供了一个安全机制以防恶意代码的攻击。
-
Java 语言是多线程的:在 Java 语言中,线程是一种特殊的对象,它必须由 Thread 类或其子(孙)类来创建。通常有两种方法来创建线程:其一,使用型构为 Thread(Runnable) 的构造子类将一个实现了 Runnable 接口的对象包装成一个线程,其二,从 Thread 类派生出子类并重写 run 方法,使用该子类创建的对象即为线程。
-
java语言是解释型的
解释性语言:JavaScript,PHP,Java 编译性语言:c/c++
区别:解释性语言,编译后的代码,不能直接被机器执行,需要解释器来执行,编译性语言,编译后的代码,可以直接被机器执行,c/c++
JDK、JRE、JVM
-
JDK: Java Development Kit 开发工具
-
JRE : Java Runtime Environment 运行时环境
-
JVM : Java Virtual Machine 虚拟机
JDK是整个Java的核心,它包括了Java运行环境(JRE),一堆的Java工具(javac/java/jdb/javap/jar 等等),以及Java基础库
在运行java时,真正在运行java时起作用的是以下四个文件夹:bin,include,lib,jre
bin:最主要的时编译器,即javac.exe
include:java 和 JVM 交互的头文件
lib:类库
jre:java运行环境
三者关系:JDK包含了JRE,JRE包含JVM
标识符
关键字:
标识符注意事项:
- 所有标识符以字母,美元符号,或者_(下划线)开始
- 除首字符以外,首字符后面的所有字符可以是任何字符组合
- 不能用关键字来作为变量或方法名
- 可以使用中文命名,但不符合规范,不建议使用
数据类型
语言类型
- 强类型语言:要求变量的使用严格符合规定,所有变量都必须先定义后使用; 强类型语言是一种强制类型定义的语言,一旦某一个变量被定义类型,如果不经过强制转换,则它永远就是该数据类型了(java,c++,python等)
- 弱类型语言:简单来说就是变量被定义的类型可以根据环境自行转化,不需要显性强制转化(PHP,javascript等)
java数据类型
- 内置数据类型(即八种基本类型)
- byte数据类型(字节型):8位,有符号,以二进制补码表示整数;最小值-27(-128),最大值27-1(127),默认值为0
- short数据类型(短整型):16位,有符号,以二进制补码表示整数;最小值-215(-32768),最大值215-1(32767),默认值为0
- int数据类型(整型):32位,有符号,以二进制补码表示整数;最小值-231,最大值231-1,默认值0
- long数据类型(长整型):64位,有符号,以二进制补码表示整数;最小值-263,最大值263-1,默认值0L
- float数据类型(单精度浮点型):32位,符合IEEE 754标准的浮点数;不能用来表示精确值,默认值为0.0f
- double数据类型(双精度浮点型):64 位、符合 IEEE 754 标准的浮点数;不能用来表示精确值,默认值0.0d
- boolean(判断型):只有两个值,true/false;默认值为false
- char(字符型):单一16位Unicode字符;最小值为\u0000(0),最大值\uffff(即65535)
- 引用数据类型
- 在Java中,引用类型的变量非常类似于C/C++的指针。引用类型指向一个对象,指向对象的变量是引用变量。这些变量在声明时被指定为一个特定的类型,比如 Employee、Puppy 等。变量一旦声明后,类型就不能被改变了。
- 对象、数组都是引用数据类型。
- 所有引用类型的默认值都是null。
- 一个引用变量可以用来引用任何与之兼容的类型。
变量
- 变量:是存储信息的容器
- 因为Java是强类型语言,每个变量必须声明其类型
- 变量是程序中最基本的存储单元
变量的种类
- 类变量:独立于方法之外的变量,用 static 修饰。
- 实例变量:独立于方法之外的变量,不过没有 static 修饰。
- 局部变量:类的方法中的变量。
变量事例:
int a, b, c; // 声明三个int型整数:a、 b、c
int d = 3, e = 4, f = 5; // 声明三个整数并赋予初值
byte z = 11; // 声明并初始化 z
String s = "runoob"; // 声明并初始化字符串 s
double pi = 3.14159; // 声明了双精度浮点型变量 π
char x = 'x'; // 声明变量 x 的值是字符 'x'。
java运算符
-
算术运算符
算术运算符用在数学表达式中,它们的作用和在数学中的作用一样。
-
关系运算符
-
位运算符
Java定义了位运算符,应用于整数类型(int),长整型(long),短整型(short),字符型(char),和字节型(byte)等类型。位运算符作用在所有的位上,并且按位运算。
-
逻辑运算符
-
赋值运算符