java
-
语法有点像C
-
没有指针
-
没有内存管理
-
真正的可移植性
-
多线程
-
面向对象
-
健壮性
java三大版本
-
javaSE:标准(桌面控制台开发)
-
javaME:嵌入式开发(手机,小家电)
-
javaEE:E企业开发(web端,服务器开发)
JDK,JRE,JVM
-
JDK:java Development kit
-
JRE: java Runtime Environmet
-
JEM: JAVA virtual Machine
Hello world
-
随便新建一个文件夹,存放代码
-
新建一个java文件
-
文件后缀名为.java
-
hello.java
-
-
编写代码
public class Hello { public static void main(String[] args) { System.out.print("Hello,World!"); } }
-
编译javac java文件,会生产一个.class文件
-
运行java文件java java文件
-
-
注意
-
全英文
-
Java基础语法
基础要打好
注释
注释不会被执行,是给我们人看的,书写注释是一个非常好的习惯平时写代码一定要注意规范
Java中的注释有三种
-
单行注释//
-
多行注释/* 注释 */:可以注释一段文本
-
文档注释:JavaDoc /** * */
-
有趣的注释
数据类型
标识符
-
关键字
关键字 | 含义 |
---|---|
abstract | 表明类或者成员方法具有抽象属性 |
assert | 断言,用来进行程序调试 |
boolean | 基本数据类型之一,声明布尔类型的关键字 |
break | 提前跳出一个块 |
byte | 基本数据类型之一,字节类型 |
case | 用在 switch 语句之中,表示其中的一个分支 |
catch | 用在异常处理中,用来捕捉异常 |
char | 基本数据类型之一,字符类型 |
class | 声明一个类 |
const | 保留关键字 |
continue | 回到一个块的开始处 |
default | 默认 |
do | 用在do_while循环结构中 |
double | 基本数据类型之一,双精度浮点数类型 |
else | 用在条件语句中,表明当条件不成立时的分支 |
enum | 枚举 |
extents | 表明一个类型是另一个类型的子类型,这里常见的类型有类和接口 |
final | 表示不可变,最终的 |
finally | 用于处理异常情况,用来声明一个基本肯定会被执行到的语句块 |
float | 基本数据类型之一,单精度浮点数类型 |
for | 一种循环结构的引导词 |
goto | 保留关键字,没有具体含义 |
if | 条件语句的引导词 |
implements | 表明一个类实现了给定的接口 |
import | 表明要访问指定的类或包 |
instanceof | 用来测试一个对象是否是指定类型的实例对象 |
int | 基本数据类型之一,整数类型 |
interface | 接口 |
long | 基本数据类型之一,长整数类型 |
native | 用来声明一个方法是由与计算机相关的语言(如 C/C++语言)实现的 |
new | 用来创建新实例对象 |
package | 包 |
private | 一种访问控制方式:私用模式 |
protected | 一种访问控制方式:保护模式 |
public | 一种访问控制方式:共用模式 |
return | 从成员方法中返回数据 |
short | 基本数据类型之一,短整数类型 |
static | 表明具有静态属性 |
strictfp | 用来声明 FP_strict(单精度或双精度浮点数)表达式遵循IEEE 754 算术规范 |
super | 表明当前对象的父类型的引用或者父类型的构造方法 |
switch | 分支语句结构的引导词 |
synchronized | 表明一段代码需要同步执行 |
this | 指向当前实例对象的引用 |
throw | 抛出一个异常 |
throws | 声明在当前定义的成员方法中所有需要抛出的异常 |
transient | 声明不用序列化的成员域 |
try | 尝试一个可能抛出异常的程序块 |
void | 声明当前成员方法没有返回值 |
volatile | 表明两个或者多个变量必须同步地发生变化 |
while | 用在循环结构中 |
null | 引用数据类型默认初始值 |
-
所有标识符都应该以字母A,美元符($),或者下划线(_)开始
-
区分大小写
-
可以用中文,拼音不提倡,很Low
-
不能适用关键字和保留字
类型转换
数据类型
-
强类型语言
-
要求变量的使用要严格符合规定,所有变量都必须先定义后才能使用
-
-
弱类型语言
-
Java的数据类型分为两大类
-
基本类型(primitive type)
-
引用类型(reference type)
-
-
由于Java是强类型语言,所以要进行有些运算的时候,需要用到类型转换。
-
低-高
-
byte,short,char-int -long -float-double
-
-
运算中,不同类型的数据先转换为同一类型,然后在进行运算。
-
强制类型转换
-
自动类型转换
变量、常量
-
变量是什么:就是可以变化的量!
-
java是一种强制类型语言,每个变量都必须声明其类型。
-
java变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域。
-
type varName [ =value] [{,varName[=value]}];
-
-
注意事项
-
每个变量都有类型,类型可以是基本类型,也可以是引用 类型。
-
变量名必须是合法的标识符。
-
变量声明是一条完整的语句,因此每一个声明都必须以分号结束。
-
-
作用域
-
类变量 static
-
实例变量
-
局部变量-方法和代码段中的
-
-
常量(constant):初始化(initialize)后不能再改变值!不会变动的值。
-
所谓常量可以理解成一种特殊的变量,他的值被设定后,在程序运行中不允许被改变。
final 常量名=值; final double PI=3.15;
-
常量名一般用大写字符。
变量的命名规范
-
所有变量,方法,类名:见名知意
-
类成员变量:首字母小写和驼峰原则:monthSalary 除了第一个单词首字母以外,后面的单词首字母大写
-
局部变量:首字母小写和驼峰原则
-
常量:大写字母和下划线:MAX_VALUE
-
类名首字母大写和驼峰原则:Man、GoodMan
-
方法名:首字母小写和驼峰原则
运算符
-
Java 语言支持如下运算符
-
算术运算符:+、-、*、%、++、--
-
赋运算符=
-
关系运算符:>、<、>=、<=、==、!=、instanceof
-
逻辑运算符:&&、||、!(短路运算)
-
位运算符:&、|、^、~、>>、<<、>>>
-
条件运算符:x?y :z 如果x==true,则结果为y ,否则为z
-
扩展运算符:+=、-=、*=、/=
-