初识Java(1)

一、Java 开发环境与基础语法入门要点

1、JDK、JRE、JVM之间的关系

  • JDK,全称是Java Development Kit(java开发工具包)。其中包含了JRE以及一些编译器javac和自带的调试工具Jconsole。
  • JRE,全称是Java Runtime Environment(Java运行时环境)。其中包含了JVM以及一些Java基础类库,是Java的语言编写程序运行的所需环境。
  • JVM,全称是Java Virtual Machine(Java虚拟机)。是Java运行的核心环境,一次编译到处运行的核心就是因为这个。

2、Java的编译过程

编写好的Java文件通过javac进行编译成.class的字节码文件,在JVM中运行这个字节码文件就会最终得到编写代码的最终结果。

3、变量的命名规则

  • 类名采用大驼峰,例如:HelloWorld。
  • 变量名/方法名采用小驼峰,例如helloWorld。

二、数据类型与变量

1、数据类型

Java的数据类型一共就分为两大类,基本数据类型和引用数据类型。基本数据类型又分为整型、浮点型、字符型、布尔型。引用类型包括String、Array、Integer等。可以把引用类型理解为是封装好的对象,里面有好多的成员方法供咱们使用!但是这不是最根本的区别!最根本的区别是:引用类型的变量存的是地址,基本数据类型的变量存的是值

(1)基本数据类型

数据类型 关键字 内存占用 大小范围
字节型 byte 1字节 -128 ~ 127
短整型 short 2字节 -32768 ~ 32767
整型 int 4字节 -2^31 ~ 2^31-1
长整型 long 8字节 -2^63 ~ 2^63-1
单精度浮点型 float 4字节 -
双精度浮点型 double 8字节 -
字符型 char 2字节 0 ~ 65535
布尔型 boolean - true、false

(2)引用数据类型

本类型(值类型) 对应的引用类型(包装类)
int Integer
double Double
char Character
boolean Boolean
byte Byte
short Short
long Long
float Float

2、常量与变量

(1)常量

常量是程序运行过程中不能改变的值,被final关键字修饰。

类型 声明方式 命名规范 示例
字面常量 直接写出的固定值 - 'a'、3.14、100、true、"abc"
final常量 final修饰的变量 全大写,单词间用下划线连接 final int MAX_SIZE = 100;
静态常量 public static final 修饰 同上(常用于全局配置) public static final double PI = 3.14159;

(2)变量

变量其实和其他的语言大差不差,所以我这里就省略了。这里我就想说一些注意的事项。

!NOTE

  1. 局部变量不初始化,直接打印会报错。
  2. 长整型数字后面要加上L,例如:100L。
  3. 类型转换:小范围到大范围->隐式类型转换,反之显式类型转换。
  4. 计算a+b:计算机运算数据都会先将小于int的转成int然后进行运算。

三、内存布局

内存区域 存储内容
堆内存 所有对象实例、数组、字符串常量池
方法区 类信息、静态变量、常量
虚拟机栈 局部变量,正在执行的方法
本地方法栈 Java 调用非 Java 代码时记录调用信息的地方
程序计数器 当前执行到哪一行代码

!NOTE 记住这三句话就够了!

堆里放对象,栈里放变量

静态变量方法区,所有对象共享它

方法调用进栈,方法结束出栈