[Java]Java基础
[Java]Java基础
一、什么是Java?
Java是一门面向对象编程语言。
二、Java的特性和优势
- 跨平台/可移植性
- 安全性
- 面向对象
- 简单性
- 高性能
- 分布式
- 多线程
- 健壮性
三、Java基础语法
1、注释
-
单行注释用
/注释内容/表示。 -
多行注释用
/*注释内容*/表示。 -
文档注释用
/**注释内容*/表示。
2、标识符
Java语言中,对各种变量、方法和类等要素命名时使用的字符序列称为标识符。
Java标识符命名规则:
-
标识符由字母、下划线、美元符或数字组成。
-
标识符只能由字母、下划线、美元符开头。
-
标识符的命名不能与Java语言的关键字重名。
abstract assert boolean break byte case catch char class const continue default do double else enum extends final finally float for goto if implements import instanceof int interface long native new package private protected public return strictfp short static super switch synchronized this throw throws transient try void volatile while
Java标识符命名规范:
-
项目名小写,例如myweb。
-
包名小写,例如com.example.entity。
-
类名每个单词首字母大写,例如myConfig。
-
变量名、方法名首字母小写,如果名称有多个单词组成,除第一个单词首字母小写,其余单词首字母大写,例如userName,isPrime。
3、数据类型
Java是强类型语言,变量的使用严格符合规定,所有变量都必须先定义之后才能使用。
Java的数据类型分为两大类:基本类型和引用类型。
基本类型:
- byte
- short
- int
- long
- float
- double
- char
- boolean
引用类型:
- 类
- 接口
- 数组
4、类型转换
Java的类型转换有自动类型转换和强制类型转换。
自动类型转换:
- 自动完成。
- 数据范围从小到大。
//左边是long类型,右边是默认的int类型
//将右边的int常量,交给左侧的long变量进行存储
//int--> long ,符合数据范围从小到大的要求
long num1 = 100;
System.out.println(num1);
double num2 = 2.5F;
System.out.println(num2)
强制类型转换:
- 不能自动完成。
- 数据范围从大到小。
//左边是int类型,右边是long类型
//long --> int,不是从小到大
//不能发生自动类型转换
//范围小的类型 范围小的变量名 = (范围小的类型)原本范围大的数据;
int num1 = (int) 100L;
System.out.println(num1)//100
int num2 = (int)777777777777L;
System.out.println(num2);//170532704
int num3 = (int)3.77;
System.out.println(num3);//3 所有小数被舍弃
char zifu = 'A';
System.out.println(zifu + 1);//66 这里的A被当作65处理
注意事项:
- 强制类型转换一般不推荐使用,因为有可能发生精度损失,数据溢出。
- byte、short、char这三种类型在运算的时候,都会被首先提升成为int类型,然后再计算。
- Boolean类型不能发生数据类型转换。
5、变量、常量
变量
- 变量就是指代在内存中开辟的存储空间,用于存放运算过程中需要用到的数据。
- 变量按照在类中的位置可分为成员变量(类变量、实例变量)和局部变量。
int a = 2;
常量
常量是特殊的变量,它的值被设定后,在程序运行过程中不允许被改变。
final double PI = 3.14;
6、运算符
7、JavaDoc
javadoc命令用来生成自己的API文档。
javadoc -encoding UTF-8 -charset UTF-8 java文件
参数信息:
- @author 作者名
- @version 版本号
- @since 指明需要最早使用的jdk版本
- @param 参数名
- @return 返回值情况
- @throws 异常抛出情况
四、Java流程控制
1、顺序结构
Java的基本结构就是顺序结构,除非特别指明,否则就按照顺序一句一句执行。
2、选择结构
-
if单选择结构
-
if双选择结构
-
if多选择结构
-
switch多选择结构
switch语句中的变量类型可以是byte、short、int或者char(它们的包装类型也支持),从Java 7开始还增加了对String的支持。
3、循环结构
- while循环
- do...while循环
- for循环
五、Java方法
- 方法是语句的集合,它们在一起执行一个功能。
- 方法包含修饰符、返回值类型、方法名、参数类型和方法体。
- java只有值传递。
- 参数类型不同实现重载。
- 可变参数
(double... numbers)。 - 递归:自己调用自己。
六、数组
数组是相同类型数据的有序集合。
int[] a = new int[10];
int b[][] = new int[2][5];
java内存分析:
-
堆:存放new的对象和数组;可以被所有线程共享,不会存放别的对象引用。
-
栈:存放基本变量类型(包含具体数值);引用对象的变量(存放堆里的地址)。
-
方法区:可以被所有的线程共享;包含了所有的class和static变量。
数组的基本特点:
- 长度确定。
- 元素是相同类型。
- 元素可以是任何数据类型。
- 数组变量属于引用类型,数组对象本身在堆中。
七、面向对象
面向对象编程的本质就是:以类的方式组织代码,以对象的方式封装数据。
面向对象三大特性:
- 封装
- 继承
- 多态
内部类:
- 成员内部类
- 静态内部类
- 局部内部类(在方法内定义类)
- 匿名内部类
八、异常机制
异常处理的五个关键字:
- try
- catch
- finally
- throw
- throws

浙公网安备 33010602011771号