文章目录
一个简单的Java应用程序
我们先看一段最简单的Main方法
public class MainDemo {
public static void main(String[] args) {
System.out.println("hello world");
}
}
这段代码中,我们可以看到Java中最主要几个特点:
- Java代码是区分大小写的。
- 几个重要的关键字:
- public:访问修饰符
- class:Java总所有的内容都包含在这个class中。并且class关键字后,紧跟这个类的名称。
- {}:{}成为块,Java中任何方法的代码都用{}包括起来。
注释
首先上例子:
/**
* 文档注释
*/
public class MainDemo {
public static void main(String[] args) {
System.out.println("hello world");
// 单行注释
/*
* 多行注释
* 多行注释
* */
}
}
Java中主要是三种注释:
-
单行注释:只注释本行使用//,其注释内容从//开头,到本行末尾
-
多行注释:包含和在/**/中的所有内容都成为注释,可以跨越多行,但是多行注释不能进行嵌套。
以上两种注释,只能在项目中查看,无法生成doc文档。若要生成doc文档,需要使用文档注释
-
文档注释:使用/***/中的内容均为文档注释,后期可生成文档。详见第四章。
数据类型
Java是一种强类型的语言。意味这Java中,必须为每个变量定义一个类型。
Java中一共有8中基本数据类型:4种整数类型,2种浮点类型,1种字符类型,1种表示真假的布尔类型。
整数类型
类型 | 大小 |
---|---|
byte | 1字节 |
short | 2字节 |
int | 4字节 |
long | 8字节 |
浮点类型
浮点类型表示小数点可以浮动的实数。
类型 | 大小 |
---|---|
float | 4字节 |
double | 8字节 |
double的精度是float的两倍,所以double也被成为双精度。
⭐️定义float类型的变量,值的末尾必须加上f或者F,如果一个浮点类型的值末尾没有f或者F,会默认为double。此时使用float类型的变量接受会提示异常。
关于浮点类型的计算,遵循IEEE754规范,具体来说,有如下三种表示溢出和错误的情况:
- 正无穷大
- 负无穷大
- NaN(Not A Number)
字符类型
类型 | 大小 |
---|---|
char | 2字节 |
char类型的字面量需要使用单引号括起来。
布尔类型
boolean,只有两个值:
- true
- false(默认)
boolean不能与整型进行转换。
变量与常量
变量
就像上面提到的,Java是一门强类型的语言,所以必须为每一个变量都指定一个类型。
变量声明完成后,必须使用赋值语句对其进行初始化。
int a = 10;
常量
常量就是值不变的变量,在Java中,使用final关键字修饰的变量就是常量
final int B = 10;
常量在赋值之后,就无法改变了。
习惯上,常量名全部大写。
在开发中,常量不会定义在任何方法中,一般都在类或者接口最前面。
类常量
在Java开发中,我们经常需要定义一些可以全局使用的常量:
public static final int a = 10;
其中两个重要的关键字:
- public:一旦一个变量或者常量被public修饰,那么所有的类均可使用
- static:一旦一个变量或者常量被static修饰,那么它不在属于这个对象,而是属于这个类。
枚举
有时候,变量的取值在一个有限的集合中。比如:一年只有春夏秋冬四季,任何一个季节都在这四种之中。这种类型包含有限个命名的值。
我们使用枚举类型对这种有有限个值的变量进行定义,关键字为ENUM。
如何定义一个枚举类
先上一个枚举类的代码:
public enum EnumDemo {
CAT(1,"Tom"),MOUSE(2,"Jerry");
private Integer id;
private String name;
EnumDemo(Integer id, String name) {
this.id = id;
this.name = name;
}
}
⭐️枚举类答题上和一个普通的类定义方法差不多,但是还是有几个细节:
- 一般的类定义使用的是class关键字,枚举类使用的是enum关键字
- 一般类的构造器可以写也可以不写,枚举类构造器必须写,而且必须是私有构造器,所以private可以省略。
- 由于枚举类的实力就是有限的几个,所以在定义枚举类的最前面,必须将所有实例定义出来,并且实例之间使用逗号分隔,最后一个实例使用分号结尾.
- 在调用枚举类的时候,无需对枚举类进行实例化。直接使用枚举类名+"."进行调用即可。
运算符
Java中提供了一组丰富的算数和逻辑运算符:
- 算术运算符(+、-、*、/、%)
- 科学函数以及常量(Math工具类)
- 数值之间的转换
- 强制类型转换
- 结合赋值和运算符(+=、-=)
- 自增自减运算符(++、–)
- 关系和布尔运算符(==、!=、<、>、<=、>=、&、&&、|、||、三元操作符?:)
- 位运算符
- 括号与运算符级别
数值之间的转换
在开发过程中,我们经常需要将一种数据类型转换为另一种数据类型。
Java中合法的数据类型转换如下: