Java学习笔记 | JavaSE基础语法 | 0 | Java入门概述

0.引言

  • 接下来毛毛张将要持续分享整理的Java笔记,笔记内容是综合目前B站播放量最高的两个视频的笔记进行合并,一个是韩顺平,一个是黑马的。
  • 今天记录的主要是Java概述。

1.人机交互

1.1 什么是cmd?

简单介绍: 就是在windows操作系统中,利用命令行的方式去操作计算机。我们可以利用cmd命令去操作计算机,比如:打开文件,打开文件夹,创建文件夹等。

扩展一个小点:在很多资料中都说成是DOS命令(Disk Operating System磁盘操作系统),其实是不对的。真正的DOS命令是1981年微软和IBM出品的MS-DOS操作系统中的命令才叫做DOS命令。而在Windows中,win98之前的操作系统是以非图形化的DOS为基础的,可以叫做DOS命令。到了2000年以后,windows逐渐的以图形化界面为主了,这个时候就不能叫DOS命令了,他只是模拟了DOS环境而已,很多的原本的DOS命令已经无法使用了,所以这个时候叫做CMD命令会更准确一些。

1.2 如何打开CMD窗口?

  1. 按下快捷键:win + R;

     此时会出现运行窗口。
    
  2. 在运行窗口中输出cmd;

  3. 输出回车。

解惑:cmd默认操作C盘下的users文件夹下的XXX文件夹。(XXX就是计算机名)
在这里插入图片描述

1.3 绝对路径与相对路径

图解:
在这里插入图片描述

1.4 常用CMD命令

操作说明示例
盘符切换方式1:盘符名称: 。E:回车,表示切换到E盘。
方式2:加上/D参数。
cd /D e:
dir查看当前路径目录下的内容dir d:\abc2\test200
cd 目录进入单级目录。cd itheima
cd ..回退到上一级目录。
cd 目录1\目录2\...进入多级目录。cd itheima\JavaSEcd d:\abc2\test200cd ..\..\abc2\test200
cd \回退到盘符目录
cls清屏
exit退出命令提示符窗口
tree查看指定目录下所有的子级目录tree c:\
md创建目录(make directory)md d:\itheima\java
rd删除目录(remove directory)rd d:\itheima\java
copy拷贝文件
del删除文件
echo输入内容到文件echo 输入的内容 > file_name.txt
type显示文本文件的内容type file_name.txt
move剪切

1.5 练习

需求: 利用cmd命令打开自己电脑上的QQ。

完成步骤:

1,确定自己电脑上的QQ安装在哪里
2,启动cmd
3,进入到启动程序QQ.exe所在的路径。
4,输出qq.exe加回车表示启动qq。

解惑: 在windows操作系统当中,文件名或者文件夹名是忽略大小写的。

2.Java安装教程

在安装Java之前,先了解一下环境变量的概念。

2.1 环境变量

作用:

  • 如果我想要在CMD的任意目录下,都可以启动某一个软件,那么就可以把这个软件的路径配置到环境变量中的PATH里面。
  • 在启动软件的时候,操作系统会先在当前路径下找,如果在当前路径没有再到环境变量的路径中去找。如果都找不到就提示无法启动。

步骤:

  • 右键我的电脑,选择属性。
  • 点击左侧的高级系统设置
  • 选择高级,再点击下面的环境变量。
  • 找系统变量里面的PATH
  • 把软件的完整路径,配置到PATH当中就可以了。
  • (可做可不做)就是把自己配置的路径,移动到最上面。

图解示例如下:

第一步:右键点击我的电脑并选择属性。

(如果无法出现第二步界面,可以打开我的电脑之后右键点击空白处)

在这里插入图片描述

第二步:点击高级系统设置。

在这里插入图片描述

第三步:选择高级,再点击下面的环境变量。

在这里插入图片描述

第四步:找系统变量里面的PATH

在这里插入图片描述

第五步:点击新建,把软件的完整路径,配置到PATH当中,再点击确定即可。

第六步:(可做可不做)点击上移,把当前配置的路径移动到最上面。

移动的好处:在CMD中打开软件时,会先找当前路径,再找环境变量,在环境变量中是从上往下依次查找的,如果路径放在最上面查找的速度比较快。

在这里插入图片描述

2.2 Java下载和安装

安装Java的过程就是安装JDK的过程。

2.2.1 下载JDK

通过官方网站获取JDK

http://www.oracle.com

注意1:针对不同的操作系统,需要下载对应版本的JDK

注意2:如果你的电脑是windows32位的,建议重装系统,重装成64位的操作系统。因为Java从9版本开始,就已经不提供32位版本的安装包了。

2.2.2 安装

​傻瓜式安装,下一步即可。默认的安装路径是在C:\Program Files下。

建议:

  • 安装路径不要有中文,不要有空格等一些特殊的符号。
  • 以后跟开发相关的所有软件建议都安装在同一个文件夹中,方便管理。

2.2.3 JDK的安装目录介绍

目录名称说明
bin该路径下存放了JDK的各种工具命令。javac和java就放在这个目录。
conf该路径下存放了JDK的相关配置文件。
include该路径下存放了一些平台特定的头文件。
jmods该路径下存放了JDK的各种模块。
legal该路径下存放了JDK各模块的授权文档。
lib该路径下存放了JDK工具的一些补充JAR包。

2.3 配置Java环境变量

2.3.1 为什么配置环境变量

​开发Java程序,需要使用JDK提供的开发工具(比如javac.exe、java.exe等命令),而这些工具在JDK的安装目录的bin目录下,如果不配置环境变量,那么这些命令只可以在bin目录下使用,而我们想要在任意目录下都能使用,所以就要配置环境变量。

**注意:**现在最新从官网上下载的JDK安装时会自动配置javac、java命令的路径到Path环境变量中去 ,所以javac、java可以直接使用。

2.3.2配置方式

在这里插入图片描述

以前下载的老版本的JDK是没有自动配置的,而且自动配置的也只包含了4个工具而已,所以我们需要删掉已经配置完毕的,再次重新配置Path环境变量。

JAVA_HOME:告诉操作系统JDK安装在了哪个位置(未来其他技术要通过这个找JDK)

在这里插入图片描述

Path:告诉操作系统JDK提供的javac(编译)、java(执行)命令安装到了哪个位置

在这里插入图片描述

2.3.3 安装成功测试

CMD窗口中输入:java -version

输出如下:

在这里插入图片描述

2.3.4 win10的bug

当电脑重启之后,环境变量失效了。表示操作系统不支持自定义的环境变量。

步骤:

  • 还是要配置JAVA_HOME给以后的相关软件去使用

  • 我们可以把java和javac的完整路径配置到PATH当中。

2.3.5 环境变量配置细节说明

  • 上面是用户环境变量是指当前用户的环境变量,当用户退出登录后,就不能访问该环境变量
  • 下面是系统环境变量是指所有用户可以使用的环境变量

在这里插入图片描述

3. Java入门概述

开始学习关注广度,再关注深度

3.1 Java是什么?

语言:人与人交流沟通的表达方式

计算机语言:人与计算机之间进行信息交流沟通的一种特殊语言

程序:计算机执行某些操作或者解决某个问题而编写的一些列有序指令的合集

Java是一门非常火的计算机语言。(也叫做编程语言)

我们想要让计算机做一些事情,那么就可以通过Java语言告诉计算机就可以了

3.2 Java语言的发展

  • 1990 sun公司启动绿色计划
  • 1992 创建oak(橡树)语言 -> Java
  • 1994 gosling参加硅谷大会 演示Java功能,震惊世界
  • 1995 sun正式发布Java第1版本
  • 2009年,甲骨文公司宣布收购Sun
  • 2011年,发布Java7

三个版本:

  • Java5.0:这是Java的第一个大版本更新。
  • Java8.0:这个是目前绝大数公司正在使用的版本。因为这个版本最为稳定。
  • Java15.0:这个是我们课程中学习的版本。

解惑:

​我们学的跟工作中使用的版本不太一样啊。会不会影响以后工作呢?

向下兼容。新的版本只是在原有的基础上添加了一些新的功能而已。

举例:

用8版本开发的代码,用11版本能运行吗?必须可以的。

用11版本开发的代码,用8版本能运行吗?不一定。

如果11版本开发的代码,没有用到9~11的新特性,那么用8是可以运行的。

如果11版本开发的代码,用到了9~11的新特性,那么用8就无法运行了。

3.3 Java的三大技术体系平台

JavaSE(Java Standard Edition)标准版

​ 支持面向桌面级应用的Java平台,提供了完整的Java核心API,是其他两个版本的基础。

JavaME(Java Mico Edition)小型版

​ Java语言的小型版,用于嵌入式消费类电子设备或者小型移动设备的开发,对Java API有所精简,并加入了针对移动终端的支持。其中最为主要的还是小型移动设备的开发(手机)。渐渐的没落了,已经被安卓和IOS给替代了。但是,安卓也是可以用Java来开发的。

JavaEE(Java Enterprise Edition)

​ 用于Web方向的网站开发。(主要从事后台服务器的开发)

​ 在服务器领域,Java是当之无愧的龙头老大。

3.4 HelloWorld小案例

​ HelloWorld案例是指在计算机屏幕上输出“HelloWorld”这行文字。各种计算机语言都习惯使用该案例作为第一个演示案例。

3.4.1 Java程序开发运行流程

开发Java程序,需要三个步骤:编写程序,编译程序,运行程序。

3.4.2 HelloWorld案例的编写

  1. 新建文本文档文件,修改名称为HelloWorld.java。

注意:后缀名为java的才是java文件。

  1. 用记事本打开HelloWorld.java文件,输写程序内容。

注意:代码要跟我编写的完全保持一致。

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

注意:未保存的文件在左上角会有*符号标记

  1. 编译文件。编译后会产生一个class文件。

    java文件:程序员自己编写的代码。

    class文件:交给计算机执行的文件。

  2. 运行代码

    注意:运行的是编译之后的class文件。

用到两个命令:

​ javac + 文件名 + 后缀名 (就是编译java文件)

​ javac:JDK提供的编译工具,通过这个工具将代码翻译成字节码文件(class文件)

​ java + 文件名(运行编译之后的class文件)

​ java:JDK提供的运行字节码文件工具

3.4.3 开发步骤

  1. Java代码编写到扩展名为Hello.java的文件中
  2. 通过javac命令对该java文件进行编译,生成.class文件
  3. 通过java命令对生成的class 文件进行运行

3.4.4 Java快速开发入门

  • 需求说明:要求开发一个Hello.java程序,可以输出“老王 is studying java !”

实现:

//这是java的快速入门,演示java的开发步骤
//对代码的相关说明
//1.public  class Hello 表示Hello是一个类,是一个public公有的类
//2.Hello{ } 表示一个类的开始和结束
//3.public static void main(String[] args) 表示一个主方法,即我们程序的入口
//4.main() {} 表示方法的开始和结束
//5.System.out.println("hello,world~"); 表示输出"hello,world~"到屏幕
//6.;表示语句结束
public class Hello {

    //编写一个 main 方法
    public static void main(String[] args) {
        System.out.println("老王 is studying java !");
    }
}

//一个源文件中最多只能有一个public类。其它类的个数不限。
//Dog 是一个类
//编译后,每一个类,都对应一个.class文件
class Dog {
    //一个源文件中最多只能有一个 public 类。其它类的个数不限,也可以将 main 方法写在非 public 类中,
    //然后指定运行非 public 类,这样入口方法就是非 public 的 main 方法
    public static void main(String[] args) {
        System.out.println("hello, 小狗狗~");
    }
}

class Tiger {
    public static void main(String[] args) {
        System.out.println("hello, 小老虎~");
    }
}
  • **说明:**编译完后会出现三个class文件,Hello.class、Dog.class和Tiger.class
  • 执行流程分析:
    • .java文件 | 源文件 — javac | 编译 —> .class文件 |字节码文件 — java | 运行 —>结果

3.5 Java入门开发常见问题

3.5.1 BUG

​ 在电脑系统或程序中,隐藏着的一些未被发现的缺陷或问题统称为bug(漏洞)。

3.5.2 BUG的解决
  1. 具备识别BUG的能力:多看
  2. 具备分析BUG的能力:多思考,多查资料
  3. 具备解决BUG的能力:多尝试,多总结
3.5.3 HelloWorld常见问题

0、Java源文件以.class为扩展名,源文件的基本组成部分是类(class)。

1、非法字符问题。Java中的符号都是英文格式的。

2、大小写问题。Java语言对大小写敏感(区分大小写)。

3、在系统中显示文件的扩展名,避免出现HelloWorld.java.txt文件。

4、编译命令后的java文件名需要带文件后缀.java

5、运行命令后的class文件名(类名)不带文件后缀.class

6、Java方法由一条条语句构成,每个语句以“;”结束

7、大括号都是成对出现的,缺一不可

8、一个源文件中最多只能有一个public类,其它类的个数不限

9、如果源文件包含一个public类,则文件名必须按该类名命名

10、一个源文件中最多只能有一个public类,其它类的个数不限,也可以将main方法写在非public类中,然后指定运行非public类,这样入口方法就是非public的main方法

11、Java应用程序的执行入口是main()方法,它有固定的书写格式:

public static void main(String[] args) {...}

常见错误代码1:
public class HelloWorld{
    public static void main(String[] args){
        System.out.println("HelloWorld");
    }
}

问题:

​ public和class之间缺少一个空格。

技巧:一般来讲在单词之间的空格是不能省略的。

​ 如果是单词和符号之间的空格是可以省略的。

常见错误代码2:
public class HelloWorld{
    public static void main(String[] args){
        system.out.println("HelloWorld");
    }
}

问题:

​ system首字母必须大写。

技巧:

​ Java代码中,是严格区分大小写的。

​ 所以该大写的地方一定要大写,该小写的地方一定要小写。多多练习。

常见错误代码3:
public class HelloWorld{
    public static void main(String[] args){
        System.out.println(HelloWorld);
    }
}

问题:

​ 第三行代码中的HelloWorld必须用双引号引起来,否则就会出现问题。

常见错误代码4:
public class HelloWorld{
    public static void main(String[] args){
        System.out.println("HelloWorld")}
}

问题:

​ 在以后代码当中,所有的标点符号必须是英文状态下的。

技巧:

​ 可以在输入法中进行对应的设置。

3.6 Java的主要特性

  • 面向对象 (OOP)

  • Java语言是健壮的。Java的强类型机制、异常处理、垃圾的自动回收等是Java程序健壮性的重要保证。

  • Java语言是跨平台性的。【即:一个编译好的.class文件可以在多个系统下运行,这种称为跨平台】

    在这里插入图片描述

  • Java既是编译型语言又是解释型语言,Java源代码首先经过编译器编译成字节码文件(.class文件),然后由Java虚拟机(JVM)解释执行字节码【了解】

    • 解释性语言,对代码进行按行编译,再交给设备运行:Javascript,PHP
    • 编译型语言,针对不同操作系统需要进行重新编译:c/c++
    • 混合型语言,先编译成字节码文件,再交给虚拟机运行,不是直接运行在系统中的:Java,Python
    • 区别:编译型语言将源代码一次性编译成机器语言,然后可以直接在计算机上执行; 而解释型语言是逐行解释执行,每执行一行代码都需要解释器将其翻译为机器语言并执行。
  • 安全性

  • 多线程

  • 简单易用

  • 开源

3.6.1 Java语言跨平台的原理
  • 操作系统本身其实是不认识Java语言的。
  • 但是针对于不同的操作系统,Java提供了不同的虚拟机(Java Virtual Machine,JVM),虚拟机会把Java语言翻译成操作系统能看得懂的语言。
  • JVM是一个虚拟的计算机,具有指令集并使用不同的存储区域。负责执行指令管理数据、内存、寄存器,包含在JDK中。
  • Java虚拟机机制屏蔽了底层运行平台的差别,实现了“一次编译,到处运行”,如下图。

在这里插入图片描述

3.7 JRE和JDK

在这里插入图片描述

JVM(Java Virtual Machine):称为Java虚拟机

JRE(Java Runtime Environment):称为Java运行环境,包含了JVM和Java的核心类库(Java API)

JDK(Java Development Kit):称为Java开发工具,包含了JRE和开发工具(包括javac、java、jdb、jhat、javadoc、javap等),JDK是提供给开发人员使用的。

总结:

  1. JRE中的运行工具只有一些保证Java代码运行的工具,如果只想运行开发好的.class文件只需要JRE
  2. 根据上面的图牢记三者之间的关系,JDK包含了JRE,JRE包含了JVM
  3. 我们只需安装JDK即可,它包含了java的运行环境和虚拟机
  4. JDK = JRE + 开发工具(例如javac,java编译工具等)
  5. JRE = JVM + JavaSE标准类库(Java核心类库)
    链图片转存中…(img-42FfwqES-1707054285750)]

3.7 JRE和JDK的关系

在这里插入图片描述
在这里插入图片描述

JVM(Java Virtual Machine):称为Java虚拟机

JRE(Java Runtime Environment):称为Java运行环境,包含了JVM和Java的核心类库(Java API)

JDK(Java Development Kit):称为Java开发工具,包含了JRE和开发工具(包括javac、java、jdb、jhat、javadoc、javap等),JDK是提供给开发人员使用的。

总结:

  1. JRE中的运行工具只有一些保证Java代码运行的工具,如果只想运行开发好的.class文件只需要JRE
  2. 根据上面的图牢记三者之间的关系,JDK包含了JRE,JRE包含了JVM
  3. 我们只需安装JDK即可,它包含了java的运行环境和虚拟机
  4. JDK = JRE + 开发工具(例如javac,java编译工具等)
  5. JRE = JVM + JavaSE标准类库(Java核心类库)
  • 25
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

神马都会亿点点的毛毛张

你的鼓励将是我创作的最大动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值