Java概述
1、学习前置条件
-
关于电脑
-
老电脑能不能用(性能不佳的电脑前期可能还凑合,后期可能不行 )
-
如果要买新电脑,建议:买一台好一点的电脑
建议的配置:cpu酷睿i7 i9,至少16G内存、硬盘500G+,电子产品更新换代比较快,配置好点能多用几年,开发效率也高,现在的开发,启动的环境太多,太吃内存 开发的过程中需要启动:数据库的服务、IDEA工具、虚拟机、虚拟机中的Linux系统等..….
-
-
关于学习软件
NO.....不要一下把学习要用到的软件全部下载,根据需要下载
-
必须软件
-
1、Notepad++ 免费 -
2、Typora (收费软件)
3、snipaste-截图神器
4、百度网盘
5、JDK 下载Jdk8
https://www.oracle.com/java/technologies/downloads/#java8-windows
6、IDEA(请下载社区版-免费版)
-
课程推进软件
-
2、我到底学什么(前端还是后端)
-
什么是前端
-
-
什么是后端
Java、Go、C语言、PHP、Python、C++
3、Java是什么
-
Java是一门面向对象的编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针
-
等概念,因此Java语言具有功能强大和简单易用两个特征
-
Java三个体系
-
JavaSE(J2SE)(Java2 Platform Standard Edition,Java平台标准版)== 对应java基础核心内容==Java语言进阶
-
JavaEE(J2EE)(Java 2 Platform,Enterprise Edition,Java平台企业版)==JavaWeb(开发单体应用)
-
JavaME(J2ME)(Java 2 Platform Micro Edition,Java平台微型版)==Java安卓开发
-
4、Java的主要特性
-
Java语言是简单的:
-
Java语言是面向对象的:
Java语言提供类、接口和继承等面向对象的特性,为了简单起见,只支持类之间的单继承,但支持接口之间的多继承,并支持类与接口之间的实现机制(关键字为implements)。Java语言全面支持动态绑定,而C++语言只对虚函数使用动态绑定。总之,Java语言是一个纯的面向对象程序设计语言。
-
Java语言是分布式的:
Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(java net),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、ServerSocket等。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。
-
Java语言是健壮的:
Java的强类型机制、异常处理、垃圾的自动收集等是Java程序健壮性的重要保证。对指针的丢弃是Java的明智选择。Java的安全检查机制使得Java更具健壮性。
-
Java语言是安全的:
Java通常被用在网络环境中,为此,Java提供了一个安全机制以防恶意代码的攻击。除了Java语言具有的许多安全特性以外,Java对通过网络下载的类具有一个安全防范机制(类ClassLoader),如分配不同的名字空间以防替代本地的同名类、字节代码检查,并提供安全管理机制(类SecurityManager)让Java应用设置安全哨兵。
-
Java语言是体系结构中立的:
Java程序(后缀为java的文件)在Java平台上被编译为体系结构中立的字节码格式(后缀为class的文件),然后可以在实现这个Java平台的任何系统中运行。这种途径适合于异构的网络环境和软件的分发。
-
Java语言是可移植的:
这种可移植性来源于体系结构中立性,另外,Java还严格规定了各个基本数据类型的长度。Java系统本身也具有很强的可移植性,Java编译器是用Java实现的,Java的运行环境是用ANSI C实现的。
-
Java语言是解释型的:
如前所述,Java程序在Java平台上被编译为字节码格式,然后可以在实现这个Java平台的任何系统中运行。在运行时,Java平台中的Java解释器对这些字节码进行解释执行,执行过程中需要的类在联接阶段被载入到运行环境中。
-
Java是高性能的:
与那些解释型的高级脚本语言相比,Java的确是高性能的。事实上,Java的运行速度随着JIT(Just-In-Time)编译器技术的发展越来越接近于C++。
-
Java语言是多线程的:
在Java语言中,线程是一种特殊的对象,它必须由Thread类或其子(孙)类来创建。通常有两种方法来创建线程:其一,使用型构为Thread(Runnable)的构造子类将一个实现了Runnable接口的对象包装成一个线程,其二,从Thread类派生出子类并重写run方法,使用该子类创建的对象即为线程。值得注意的是Thread类已经实现了Runnable接口,因此,任何一个线程均有它的run方法,而run方法中包含了线程所要运行的代码。线程的活动由一组方法来控制。Java语言支持多个线程的同时执行,并提供多线程之间的同步机制(关键字为synchronized)。
5、Java历史
Sun 1995年推出的面向对象的程序设计语言 Java1.0,共同创始人的詹姆斯·高斯林 (James Gosling)被誉为“Java之父”。
Java 在2009年被Oracle收购,Oracle是一个大型数据库公司-产品还包括MySQL
Java 的版本历史
Java 的主要发行版本及其发行日期如下:
▪ JDK 1.0(1995 年 1 月 23 日)
▪ JDK 1.1(1996 年 2 月 19 日)
▪ J2SE 1.2(1998 年 12 月 8 日)
▪ J2SE 1.3(2000 年 5 月 8 日)
▪ J2SE 1.4(2002 年 2 月 6 日)
▪ J2SE 5.0(2004 年 9 月 30 日)
▪ Java SE 6(2006 年 12 月 11 日)
▪ Java SE 7(2011 年 7 月 28 日)
Java SE 8(2014 年 3 月 18 日)->java1.8*==Java_se = jdk* = j2se
▪ Java SE 9(2017 年 9 月 21 日)
▪ Java SE 10(2018 年 3 月 20 日)
▪ Java SE 11(2018 年 9 月 25 日)
▪ Java SE 12(2019 年 3 月 19 日)
▪ Java SE 13(2019 年 9 月 17 日)
▪ Java SE 14(2020 年 3 月 17 日)
6、Java开发工具/环境
⒈ Linux 系统、Mac OS 系统、Windows 95/98/2000/XP/10,WIN 7/8系统。(Windows开发 、Linux 系统部署)
⒉ Java JDK 8……
⒊ Notepad 编辑器编辑器。
⒋ IDE(集成开发环境): IDEA Eclipse(淘汰)
5 普通Java程序员日常工作(开发业务系统以及增删改查)
CRUD - 毕竟阶段 -
7、Java的下载及安装
在开始学习Java编程之前,我们首先需要安装Java开发环境JDK(Java开发工具包 Java Development Kit)
“我们为什么要安装JDK呢”,其实任何事物都需要有他的最基本的生存环境。开发Java程序也不能例外,它也需要最基本的“生存环境”,就是Java开发环境(JDK)
我们课程中使用的JDK版本是JDK8=J2SE8=J2SE1.8
7.1 下载JDK
图1:我的网盘下载
图二:官网下载
https://www.oracle.com/java/technologies/downloads/#java8-windows
(需要在ORACLE官网注册一个账号)
Windows版本的JDK
7.2 安装JDK
安装JRE
安装完成后的目录
8、配置环境变量
环境变量配置前:
环境变量配置后:
查看Java版本命令:java -version
8.1 为什么要配置环境变量?
开发Java程序,需要使用JDK中提供的工具,工具在JDK安装目录的 bin 目录下。
在DOS命令行下使用这些工具,就要先进入到JDK的bin目录下,这个过程就会非常的麻烦。
不进入JDK的 bin 目录,这些工具就不能使用,会报错。
为了开发方便,我们想在任意的目录下都可以使用JDK的开发工具,则必须要配置环境变量,
配置环境变量的意义在于告诉操作系统,我们使用的JDK开发工具在哪个目录下
8.2 Windows 10如何配置环境变量
1、打开属性
2、弹出控制面板后,点击‘高级系统设置’
3、点击‘高级’-点击‘环境变量’
4、创建新的环境变量,变量名输入 JAVA_HOME ,变量值为JDK的安装目录, 这里要注意,要在系统变量里新建JAVA_HOME变量,不要在用户变量里 而且JAVA_HOME 最好大写(小写也可以 但不专业)
5、选中 Path 环境变量, 双击 或者 点击编辑
6、点击 新建 ,键入 %JAVA_HOME%\bin ,必须是英文格式
也可以直接输入JDK的bin路径
7、环境变量配置完成,重新开启DOS命令行,在任意目录下输入 javac 命令
必须要重新开启一个DOS命令行
9、 常用DOS命令
进入 DOS操作窗口
按下 Windows+R键盘,打开运行窗口,输入cmd回车,进入到DOS的操作窗口。
DOS命令有很多,我们不需要学习所有DOS命令,只需要学习我们Java中要用到的常用DOS命令,内容如下:
1.切换盘符:盘符名加冒号,回车
2.退出到当前目录的根目录:cd / (change directory)
3.退回到上一层目录:cd ..
4.进入某个目录:cd 目录名 - cd / 直接从其他目录退回D盘根目录
5.列出目录下的内容:dir
6.清屏:cls - Linux-clear
7.查看ip地址ipconfig(重要)检查机器是否联通//表示无法联通来自 192.168.22.38 的回复: 无法访问目标主机。
8 测试网络是否连通ping(重要)
9.退出:exit
10、第一个Java程序
开发环境已经搭建完毕,可以开发我们第一个Java程序了。
Java程序开发三步骤:编写、编译、运行。
javac 编译我们的源文件
java 运行我们的字节码文件
通过上图我们可以了解到编写的程序大致如下;
1.源文件:编写Java源文件(我们也称之为源代码文件),它的扩展名为.java;
2.编译:然后通过编译器把源文件编译成字节码文件,字节码文件扩展名为.class;
3.运行:最后使用解释器来运行字节码文件。
10.1 编写源代码
HelloWorld.java
文件名必须是 HelloWorld ,保证文件名和类的名字是一致的,注意大小写。
每个字母和符号必须与示例代码一模一样。
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello World!");
}
}
10.2 编译Java源文件
第一个 HelloWord 源程序就编写完成了,但是这个文件是程序员编写的,JVM是看不懂的,也就不能运行,因此我们必须将编写好的 Java 源文件 编译成JVM可以看懂的 字节码文件 。
在DOS命令行中,进入Java源文件的目录,使用 javac 命令进行编译
如果程序无误,那么在该目录下,会产生同名的字节码文件:HelloWorld.class
javac HelloWorld.java
10.3 运行Java程序
在DOS命令行中,进入Java源文件的目录,使用 java 命令进行运行。
不要写 不要写 不要写 .class
java HelloWord
第一个程序注意点:
-
编译 :是指将我们编写的Java源文件翻译成JVM认识的class文件,在这个过程中, javac 编译器会检查我们
所写的程序是否有错误,有错误就会提示出来,如果没有错误就会编译成功。
-
运行 :是指将 class 文件 交给JVM去运行,此时JVM就会去执行我们编写的程序了。
-
main 方法:称为主方法,固定书写格式:public static void main(String[] args){....},是程序的入口。
-
注释 :解释程序,给人看的
-
Java 中有单行注释和多行注释
单行注释以 // 开头 换行结束 多行注释以 /* 开头 以*/结束
-
关键字 :是指在程序中,Java已经定义好的单词,具有特殊含义。
-
标识符 :凡是自己起名字的,比如类的名字、方法的名字和变量的名字等等,都是标识符。.
10.4、Java中JDK、JRE、JVM三者之间的关系
-
JDK(Java Development Kit) 是 Java 语言的软件开发工具包(SDK)。它是每一个Java软件开发人员必须安装的。JDK安装之后,它会自带一个JRE,因为软件开发人员编写完代码之后总是要运行的。注意:如果只是在这台机器上运行Java程序,则不需要安装JDK,只需要安装JRE即可。
-
JRE(Java Runtime Environment,Java运行环境),运行JAVA程序所必须的环境的集合,包含JVM标准实现及Java核心类库。
-
JVM (Java Virtual Machine ):Java虚拟机,简称JVM,是运行所有Java程序的假想计算机,是Java程序的 运行环境,是Java 最具吸引力的特性之一。我们编写的Java代码,都运行在 JVM 之上。
-
JDK用来开发Java代码的;JDK--BIN--Java-也可以运行我们的Java程序, Javac编译Java程序,也可以运行Java代码
-
JRE --BIN -- Java--运行我们的Java程序,不可以开发Java程序
跨平台 :任何软件的运行,都必须要运行在操作系统之上,而我们用Java编写的软件可以运行在任何的操作系统上,这个特性称为Java语言的跨平台特性。该特性是由JVM实现的,我们编写的程序运行在JVM上,而JVM运行在操作系统
C
注:不同的操作系统需要安装不同版本的JDK,有专门的windows版JDK,Linux版JDK,Mac版JDK等,当然不同版本的JDK安装之后会对应不同版本的JRE和JVM
windows版JDK
Linux版JDK