admin 管理员组

文章数量: 887016

前言

1. 学习视频:

尚硅谷Java零基础全套视频教程(宋红康2023版,java入门自学必备)_哔哩哔哩_bilibili

2023最新Java学习路线 - 哔哩哔哩

2. 一步一个脚印,踏踏实实再学一遍!

这个世界上有的人输在不能开始,有的人输在不断开始,有的人输在不能坚持;学习一门新技术不是一件轻松的事,但只有你坚持了别人无法坚持的坚持,你才能拥有别人无法拥有的拥有。

3. 学习计划路线:

4. 每天看视频之后,要把学习的代码敲3遍,敲得很熟!

5. Java神书:学完java基础之后可以看看

《Java核心技术》:查阅工具

《Effective Java》

《Java编程思想》。

编程语言概述及Java学习路线

1.1 软件开发,进入互联网IT行业最好的选择之一。

  • 起始薪资高(12K-15k)
  • 工作环境好(其实加班也挺多,但是什么职业不加班啊,都要加班还不给钱)
  • 涨薪幅度高(二年涨薪3-5k)
  • 行业更公平(实力说话)
  • Python、C、Java、C++、C#。

TIOBE Index - TIOBE编程语言排行榜,每月更新。

Python简单易学(一周学会),上手快,但是不够专一,所以只能作为工具之一。

1.2 软件开发之Java开发

  • 移动应用领域(集成Android平台):Java在Android端是主要开发语言,占有重要地位。
  • 企业级应用领域(JavaEE后台):用来开发企业级的应用程序,大型网站如淘宝、京东、12306,以及各大物流、银行、金融、社交、医疗、交通、各种OA系统等都是用JavaEE技术开发的。
  • 大数据分析、人工智能领域:流行的大数据框架,如Hodoop、Flink都是用Java编写的。Spark使用Scala编写,但是可以用Java开发应用。
  • 游戏领域、桌面应用、嵌入式领域:很多大型游戏的后台、桌面应用等也是Java开发的。

1.3 Java中高级程序员全程学习路线图

1.3.1 第一阶段:基础部分

1.3.2 第二阶段:网站前后台技术

1.3.3 第三阶段:经典框架

1.3.4 第四阶段:分布式项目

1.3.5 第五阶段:高级和前沿技术

1.3.6 第六阶段:全栈项目

1.3.7 第七阶段:就业加薪课

1.3.8 第八阶段:微服务架构项目

1.3.9 第九阶段:面试指导

1.3.10 第十阶段:进阶(上)(计算机科学的精华)

1.3.11 第十阶段:进阶(下)

1.4 Java 职业晋升路线图(年薪)

系统软件:windows 10 、Mac OS、Linux、Android、IOS。项目在企业端,会部署到Linux中。

人机交互方式:图形化界面(GUI,Graphical User Interface)、命令行方式(CLI,Command Line Interface)。

1.5 常用的DOS命令

d:                             进入D盘

dir                           显示文件目录

md class1               创建新文件夹calss1

cd class1                进入这一级目录中的class1文件夹

cd..                         回退到上一级目录

cd\  或 cd/               回退到盘符根目录

rd tream1                删除文件夹tream1

del moon.txt                删除文件moon.txt 

del *.txt                删除文件所有.txt 文件

cls                        清屏

exit                        退出命令提示符窗口

正文

第一阶段:Java基本语法

1. Java 语言概述

1.1 java语言发展概述

学完Java基础,可以看看这本书:

1.2 java技术体系平台

java基础也可以称为Java SE。

java后台,也可以说就是Java EE。

Java ME也不怎么使用,现在也被Android开发替代了。(Android开发不等于Java ME开发)

1.3 Java开发环境搭建

1.3.1 选择安装jDK 17

1.3.2 JDK 下载和安装(可以安装多个版本的JDK)
JDK17:

Java Downloads | Oracle 中国

现在JDK21也已经出来了!!

安装:网上有很多安装方法

JAVA17---安装+配置环境变量 | JAVA安装完整教学_java runtime environment 17 / jre-17_Xunlan_的博客-CSDN博客

JAVA_HOME  

CLASSPATH(不需要配置)

JDK8:

.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar

JDK17:

.;;%JAVA_HOME%\lib\jrt-fs.jar

path中添加:

%JAVA_HOME%\bin
%JAVA_HOME%\jre\bin (只有JDK8需要配置)

注意:

  • JDK17安装之后,会自动在path中添加一个环境变量:使用JDK17,强烈建议把 %JAVA_HOME%\bin 置顶,方便系统寻找并选择。

  • 建议JAVA_HOME的值也设置的是JDK17的位置。电脑默认选择JDK17,方便配合后续使用。
  • 以上三个变量设置完毕,则按“确定”直至属性窗口消失,下来是验证看看安装是否成功。先打开“开始”->“运行”(home+r),输入“cmd”,进入dos系统界面。然后打“java -version”,如果安装成功。系统会显示如下:

  • JAVA_HOME的值是JDK的安装路径,我一般安装在C盘下,方便运行。

  •  配置环境变量的原因:

设置JAVA_HOME:

  一是为了方便引用,比如,JDK安装在C:\jdk17目录里,则设置JAVA_HOME为该目录路径, 那么以后要使用这个路径的时候, 只需输入%JAVA_HOME%即可, 避免每次引用都输入很长的路径串;

  二则是归一原则, 当JDK路径改变的时候, 仅需更改JAVA_HOME的变量值即可, 否则,就要更改任何用绝对路径引用JDK目录的文档, 要是万一没有改全, 某个程序找不到JDK, 后果是可想而知的----系统崩溃!
  三则是第三方软件会引用约定好的 JAVA_HOME 变量, 不然, 你不能正常使用该软件。
  在系统环境变量那一栏中点 -> 新建 JAVA_HOME (JAVA_HOME指向的是JDK的安装路径)

path 变量:

  path 变量用于保存一系列路径,每个路径之间用分号隔开。当命令行运行一个可执行文件时,操作系统会在当前目录下查找是否存在该文件,找不到时会在path路径下找这个文件,也找不到,就会报错。

所以我们配置path系统环境变量路径的值,告诉计算机java可执行程序都放在bin目录下,使得我们能够在系统中的任何地方运行java应用程序,比如 javac.exe、java.exe、javadoc.exe 等等。

        JDK17也没有jre文件夹,所以,也不需要%JAVA_HOME%\jre\bin

classpath变量 :(强烈建议不配置

        classpath环境变量也用于保存一系列路径。当java虚拟机需要运行一个类时,会在classpath所定义的路径下寻找class文件。

但是JDK5.0开始,classpath变量没有进行配置,java虚拟机自动将其设置为“.”,也就是当前目录。所以不用配置classpath变量!

JDK8:

JDK中包含JRE,但是还是会询问是否安装JRE,(可以不装,JDK17也不会有这个询问)如果安装,需要新建一个安装目录:

然后下一步,就安装好啦。再配置环境变量就好了。下面是jdk的文件目录:

lib:library的缩写,Java类库或库文件,是开发工具使用的归档包文件。

src文件:放置JDK核心类的源代码。

bin目录:存放着很多java可执行程序,其中最重要的就是javac.exe和java.exe文件。

  • javac.exe :Java编译器工具,将编写好的Java文件编译Java字节码文件(可执行的Java程序)。也就是将.java文件编译成.class文件。.class文件的名称由.java文件中的类名决定。
  • java.exe :Java运行工具,会启动一个Java虚拟机(JVM)进程,专门运行.class文件。

.text文件可以修改为.java文件,需要勾选显示文件扩展名

1.3.3 JDK8与JDK17同时进行环境配置

为两个JDK新建两个JAVA_HOME,分别指定安装路径。
然后创建JAVA_HOME指定用的JDK(以后用8或17在这里切换)

Path中添加%JAVA_HOME%\bin 。

  • JDK17安装之后,会自动在path中添加一个环境变量:

可以不删掉,只将%JAVA_HOME%\bin 移至最上。(Path中删掉自动添加的C:\..\Oracle\Java\javapath这条变量配置)。

CLASSPATH要手动更改:(也可以不配置这个,强烈建议不配置

JAVA_HOME   %JAVA17_HOME%  或 %JAVA8_HOME%  

CLASSPATH (不需要配置)

JDK8:

.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar

JDK17:

.;;%JAVA_HOME%\lib\jrt-fs.jar

path中添加:

%JAVA_HOME%\bin
%JAVA_HOME%\jre\bin (只有JDK8需要)

JDK17中的lib下已经没有dt.jar和tool.jar两个包了。只剩一个jrt-fs.jar。

所以其实classpath的配置不用要(上面讲过classpath默认路径为“.”,即当前目录),且可省去 %JAVA_HOME%\jre\bin(建议不省去,否则切换jdk8时,要再配置一次!有这个配置jdk17平时也不影响使用。)

到此,配置完成。

完成后,win+R输入cmd,用java -version和javac命令验证一下就可。

1.3.4 不用配置classpath变量

有classpath变量可能会出现问题:(我没有出现这个问题,但是我把它删除了

编译器编译完java文件后的字节码文件默认放在当前.java文件相同文件夹下。但是classpath变量编写完以后,java.exe运行.class文件的时候,会去classpath变量下的路径下找.class文件,会找不到。但是JDK5.0开始,classpath变量没有进行配置,java虚拟机自动将其设置为“.”,也就是当前目录。所以不用配置classpath变量!

1.3.5 JDK17的卸载 与 重装

由于我的JDK版本是17.0.4.1不是长期支持版本的最新版的版本17,所以我现在卸载并重新下载长期支持版本的最新版17.0.8:

配置环境变量:

安装成功:

之前的17.0.4.1:

1.3.6 命令行运行java程序Hello.java  

java文件编写、编译、运行都要严格区分大小写。

在命令行窗口(Home+R)中,进入.java文件所在文件目录,然后javac编译生成类名的.class文件。

然后输入“java 字节码文件名(.class文件名)”运行。

.java文件想要在javac.exe 中编译成功,需要在类class中写main主方法。

  • main方法可以编写为:

Java中的String[] args 和String args[]都可以运行,String[] args 和String args[]一般包含在main主类方法中,表示给主方法传一个字符数组args只是字符串数组的变量名,是arguments的缩写,是个默认名,一般情况下照着写。(arguments中文就是参数的意思,其值可以手动赋值)

JAVA中的String[] args和String args[]详解。_string args[ ]和string[ ] args-CSDN博客

class HelloChina {

    public static void main (String args[]){
    
        System.out.print("Hello China! 你好中国!");
    
    }
}

或

class HelloChina {

    public static void main (String[] args){
    
        System.out.print("Hello China!");
    
    }
}
  • 编码字符集不一致:

可在.text文件可以修改为.java文件时,打开txt文本的另存为设置编码格式:

  • 一个java源文件中可以编写多个class类,java编译器编译之后,会生成多个.class文件。但是一个java源文件中只能有一个main方法。

1.4 java 语言的特点:

  • 简单
  • 面向对象
  • 安全
  • 跨平台
  • 支持多线程(多任务并发执行)

java程序的跨平台性:

Java程序是由虚拟机负责解释执行的,而非操作系统。所以只要在不同的操作系统中安装不同的虚拟机,就可以编译产生不同的机器代码,实现跨平台性(“一次编写,到处运行”)。

Java编译器(Javac.exe).java文件编译成字节码文件.class之后,不同平台的java虚拟机 JVM for(Window、Linux、UNIX、others等不同平台。)启动类加载器加载类到内存,然后不同平台的java虚拟机再对加载到内存中的java类进行解释执行,就可以看到结果。

缺点:

1.5 开发工具:

本文标签: 学习笔记 路线 环境 基础 行业