学习笔记:JavaSE 基础知识

一、Java 开发环境搭建

1.Java基本特性

简单性:底层是C++实现,但是JAVA不需要操作指针,且为单继承,简单很多

面向对象:JAVA提供了封装、继承、多态机制

健壮性:JAVA有GC机制

跨平台:JVM屏蔽了操作系统间的差异。一次编译,到处运行。

2.JDK,JRE,JVM之间的关系

JDK:JAVA软件开发工具包,开发人员必须安装的,不同操作系统需要安装不同的的JDK,安装完成后会自动安装对应系统的JRE和JVM。

JRE:JAVA运行时环境,包含了运行JVM标准实现和JAVA核心类库

JVM:JAVA虚拟机,用于java跨平台。

3.JAVA程序的加载和运行

分为编译运行两个阶段,可以在不同的操作系统分别进行编译和运行,一次编译,到处运行。

程序员编写的.java结尾的文件称为JAVA源文件,使用JDK中的javac.exe程序可以对源文件进行编译操作,程序有语法错误则编译失败,编译成功则生成一个或多个.class文件,称为字节码文件字节码文件不是二进制文件,否则操作系统就可以进行识别执行了。生成的字节码文件,可通过JRE中的java.exe程序进行执行,在运行阶段,首先类加载器会将字节码文件加载到JVM中,JVM将字节码文件解释称为可以供操作系统解释执行的二进制文件。

4.JDK的bin目录

​ bin目录下存放的都是运行Java程序相关的命令。

image-20210312201945476

图中包含 java.exe 和 javac.exe的安装位置

5.编写第一个程序

新建一个文件HelloWorld.java。写入如下内容。

public class HelloWorld{
    public static void main(String[] args){
        System.out.println("Hello World");
    }
}

程序编译及运行操作

image-20210312203939922

将java源文件放到jdk/bin目录,可以直接运行javac命令,说明windows 操作系统默认是从当前所在的路径下查找可执行命令文件的

-》将javac.exe所在路径添加到系统的环境变量中

windows 操作系统到底是如何搜索命令文件的呢?

​ 实际上它会先在当前路径下找,找不到的时候会自动去环境变量path 的路径中查找,找到则执行该命令,找不到则在DOS 窗口中提示错误信息。

执行java命令时,只能用 Java+类名的方式,如:java HelloWorld

执行后,启动类加载器,类加载器将.class字节码文件装载到JVM中。

关于Java命令

1.默认情况下类加载器只从当前路径下查找;

2.当设置环境变量classpath=E:\的时候,类加载器只去E:\目录下加载class 文件了,不再从当前目录下加载,也不会去其它目录下加载;

3.若配置为classpath=.;xxxx.jar,它表示的含义是类加载器可以从当前路径下加载,也可以去指定的jar 包中加载字节码文件了

所以一般执行时,都先用cd命令切换到字节码所在的路径,在进行java命令的执行。

6.Java的注释的三种方式

Java 语言的注释包括三种方式,它们分别是:

第一种:单行注释,语法格式如下:

// 单行注释,两个正斜杠后面的内容被注释

第二种:多行注释,语法格式如下:

/*
* 这里的注释信息为多行注释:
* 第1 行注释信息
* 第2 行注释信息
*/

第三种:javadoc 注释。

注意:对于javadoc 注释来说,这里的注释会被JDK bin 目录下的javadoc.exe 命令解析并生成帮助文档(生成帮助文档后期做项目的时候大家会接触到的)。

/**
* 这里的信息是javadoc 注释
* @author 作者名字
* @version 版本号
* @since 自从哪个版本号开始就存在了
*/

注意:对于javadoc 注释来说,这里的注释会被JDK bin 目录下的javadoc.exe 命令解析并生成帮助文档(生成帮助文档后期做项目的时候大家会接触的)。

7.public class 和 class的区别(掌握)

1)一个java 源文件中可以定义多个class,并且在编译的时候一个class 会对应编译生成一个class 字节码文件。

2)如果定义public class的类,只能定义一个,并且要求此类名必须和java源文件名保持一致。

3)任何一个class中都可以设定程序入口,也就是说任何一个class中都可以写main方法(主方法),想从哪个入口进去执行,则让类加载器先加载对应的类即可。

二、标识符与关键字

1.标识符含义

标识符是指用来标识某个实体的一个符号,用于给变量、常量、函数、语句
块等命名。如下:

  • 类名,例如:Student 学生类、User 用户类、Product 商品类、Order 订单类等。
  • 接口名,例如:Runable 可运行的、Comparable 可比较的等。
  • 变量名,例如:name 名字、age 年龄、birth 生日、length 长度等。
  • 方法名,例如:login 登录、logout 登出、eat 吃、drink 喝等。
  • 常量名,例如:LOGIN_SUCCESS、ACCESS_TOKEN 等。

2.标识符命名规则(掌握)

  • 标识符只能由数字、字母、下划线“_”、美元符号“$”组成,不能含有其它符号。
  • 标识符不能以数字开始
  • java 关键字和保留字不能作为标识符。
  • 标识符严格区分大小写。
  • 标识符理论上没有长度限制。

注意:汉字也是合法的标识符,比如:字

3.标识符命名规范(掌握)

  • 见名知意
  • 驼峰命名方式
  • 类名、接口名首字母大写,后面每个单词首字母大写,这是遵守驼峰命名方式的;
  • 变量名、方法名首字母小写,后面每个单词首字母大写,这也是遵守驼峰命名方式的;
  • 常量名全部大写,单词和单词之间使用“_”衔接,为了表示清楚含义,不要怕单词长,例如:INT_MAX_VALUE 则表示int 类型最大值

4.关键字

关键字指编程语言中事先定义的,有特殊意义的单词。java中所有关键字都是小写的英语单词。比如:public、class、static、void 等。不需要死记硬背,编程过程中逐渐会认识。

三、变量

1.字面量(理解)

字面量就是数据/数值。生活中每天都会接触到数据,软件其实就是为了解决现实生活当中的问题,处理生活当中的数据,Java程序通过字面量来表示数据。

Java规定:

字符型字面量必须用半角单引号括起来 ,比如’a’,’中‘

字符串型字面量必须使用半角双引号括起来,比如“中国“

2.变量(理解)

变量是内存中存储数据最基本的单元

变量三要素:数据类型、变量名、存储的值

image-20210313134754047

3.使用变量(掌握)

语法格式:

​ 数据类型 变量名;

变量赋值:

​ 变量名= 值;

注意:

  • 在同一个大括号当中不能同时多个同名的变量
  • 变量必须先声明,然后才能使用

4.变量分类(了解)

变量根据声明的位置不同,可分为局部变量和成员变量

局部变量:在方法体中声明以及方法的每一个参数都是局部变量

成员变量:在方法体外,类体内声明的变量称为成员变量

  • 成员变量声明时如果使用static关键字修饰的为静态成员变量,简称静态变量
  • 如果没有static关键字修饰的则为实例成员变量,简称实例变量

5.变量作用域

变量的作用域就是变量的有效范围。

口诀:出了大括号就不认识了

四、数据类型

1.数据类型概述(理解)

数据类型的作用就是决定程序运行阶段该给变量分配多大的内存空间

数据类型分为基本数据类型引用数据类型

基本数据类型分为4类8种:

  • 第1 类:整数型(不带小数的数字):byte,short,int,long
  • 第2 类:浮点型(带小数的数字):float,double
  • 第3 类:字符型(文字,单个字符):char
  • 第4 类:布尔型(真和假):boolean

字符串属于引用数据类型。

八种基本数据类型详细信息如下:

image-20210313141052276


冷秋