今日分享开始啦,请大家多多指教~
明天给大家分享一下Java内容,Java根底是学习JavaEE、大数据、Android开发的基石!学习Java从根底开始,细节决定成败!
1.0 Java的简略介绍
举例:Spring–Rest(Spring MVC)外围代码:
举例:Spark Spark Streaming
Java 基础知识图解
Java 根底课程概述
Java 根底课程体系
1.1 软件开发介绍
- 软件开发
软件,即一系列依照特定程序组织的计算机数据和指令的汇合。有系统软件和应用软件之分。
- 人机交互形式
图形化界面(Graphical User Interface GUI)这种形式简略直观,使用者易于承受,容易上手操作。
命令行形式(Command Line Interface CLI)须要有一个控制台,输出特定的指令,让计算机实现一些操作。较为麻烦,须要记录住一些命令。
罕用的DOS命令
- dir 列出当前目录下的文件以及文件夹
- md 创立目录
- rd 删除目录
- cd 进入指定目录
- cd .. : 退回到上一级目录
- cd 退回到根目录
- del 删除文件
- exit : 退出 dos 命令行
- 补充: echo javase>1.doc
罕用快捷键
- ←←→→:挪动光标
- ↑↑↓↓:调阅历史操作命令
- Delete和Backspace:删除字符
1.2 计算机编程语言介绍
1. 什么是计算机语言
- 语言:是人与人之间用于沟通的一种形式。例如:中国人与中国人用普通话沟通。而 中国人要和英国人交换,就要学习英语。
- 计算机语言:人与计算机交换的形式。
如果人要与计算机交换,那么就要学习计算机语言。
计算机语言有很多种。如: C ,C++ C++,Java ,PHP Kotlin Python Scala 等。
- 第一代语言:机器语言。指令以二进制代码模式存在。
- 第二代语言:汇编语言。应用助记符示意一条机器指令。
第三代语言:高级语言
- C、Pascal、Fortran面向过程的语言
- C++面向过程面向对象
- Java跨平台的纯面向对象的语言
- .NET跨语言的平台
- Python、Scala…
2.为什么选Java
理由一:如Google的Android系统结构
- java开发效率更高(面向对象)
- python开发周期短,但运行工夫长,两者取其利处
- 社区大,人员多
理由二:从java语言的市场需求来看
1.3 Java语言概述
1.基本概念
- 是SUN( S tanford U niversity N etwork ,斯坦福大学网络公司 )1995年推出的一门高级 编程语言。
- 是一种面向Internet的编程语言。Java一开始富裕吸引力是因为Java程序能够在Web浏览器中运行。这些Java程序被称为Java小程序( applet )。applet 应用古代的图形用户界面与 Web 用户进行交互。 applet 内嵌在 HTML 代码中。
- 随着Java技术在web方面的一直成熟,曾经成为Web应用程序的首选开发语言。
- 后盾开发:Java、PHP、Python、Go、Node.js
2.Java技术体系平台
3.Java在各畛域的利用
从Java的应用领域来分,Java语言的利用方向次要体现在以下几个方面:
企业级利用:次要指简单的大企业的软件系统、各种类型的网站。 Java 的平安机制以及它的跨平台的劣势,使它在分布式系统畛域开发中有广泛应用。应用领域包含金融、电信、交通、电子商务等。
Android 平台利用Android 应用程序应用Java 语言编写。 Android 开发程度的高下很大水平上取决于 Java 语言外围能力是否扎实。
大数据平台开发 :各类框架有 Hadoop spark storm flink 等,就这类技术生态圈来讲,还有各种中间件如 flume kafka sqoop 等等 ,这些框架以及工具大多数是用 Java 编写而成,但提供诸如 Java scala Python R 等各种语言 API 供编程。
挪动畛域利用:次要体现在生产和嵌入式畛域,是指在各种小型设施上的利用,包含手机、 PDA、机顶盒、汽车通信设施等。
4.次要个性
- Java语言是易学的 。 Java 语言的语法与 C 语言和 C++ 语言很靠近,使得大多数程序员 很容易学习和应用 Java 。
- Java语言是强制面向对象的。 Java 语言提供类、接口和继承等原语,为了简略起见, 只反对类之间的单继承,但反对接口之间的多继承,并反对类与接口之间的实现机制 (关键字为implements )。
- Java语言是分布式的 。 Java 语言反对 Internet 利用的开发,在根本的 Java 利用编 程接口中有一个网络应用编程接口( java net ),它提供了用于网络应用编程的类 库,包含 URL 、 URLConnection 、 Socket 、 ServerSocket 等。 Java 的 RMI (近程办法激活)机制也是开发分布式应用的重要伎俩。
- Java语言是强壮的。 Java 的强类型机制、异样解决、垃圾的主动收集等是 Java 程序 健壮性的重要保障。对指针的抛弃是 Java 的理智抉择。
- Java语言是平安的。 Java 通常被用在网络环境中,为此, Java 提供了一个平安机 制以防恶意代码的攻打。如:平安防备机制(类 ClassLoader ),如调配不同的名字空间以防代替本地的同名类、字节代码查看。
- Java语言是体系结构中立的。 Java 程序(后缀为 java 的文件)在 Java 平台上被 编译为体系结构中立的字节码格局(后缀为 class 的文件),而后能够在实现这个 Java 平台的任何零碎中运行。
- Java语言是解释型的。如前所述, Java 程序在 Java 平台上被编译为字节码格局,而后能够在实现这个 Java 平台的任何零碎的解释器中运行。
- Java是性能略高的。与那些解释型的高级脚本语言相比, Java 的性能还是较优的。
- Java语言是原生反对多线程的。 在 Java 语言中,线程是一种非凡的对象,它必须由Thread类或其子(孙)类来创立。
1.4 运行机制及运行过程
1.Java语言的特点
特点一:面向对象
- 两个基本概念:类、对象
- 三大个性:封装、继承、多态
特点二:健壮性
- 排汇了 C/C++ 语言的长处,但去掉了其影响程序健壮性的局部(如指针、内存的申请与 开释等),提供了一个绝对平安的内存治理和拜访机制
特点三:跨平台性
- 跨平台性:通过 Java 语言编写的应用程序在不同的零碎平台上都能够运行。 Write once , Run Anywhere
- 原理:只有在须要运行 java 应用程序的操作系统上,先装置一个 Java 虚拟机 (JVM Java Virtual Machine) 即可。由 JVM 来负责 Java 程序在该零碎中的运行。
因为有了 JVM ,同一个 Java 程序在三个不同的操作系统中都能够执行。这样就实现了 Java 程序的跨平台性。
2.Java 两种外围机制
- Java 虚拟机 (Java Virtal Machine)
- 垃圾收集机制 (Garbage Collection)
外围机制垃圾回收
- 不再应用的内存空间应回收垃圾回收。
- 在 C/C++ 等语言中,由程序员负责回收无用内存。
- Java 语言打消了程序员回收无用内存空间的责任:它提供一种零碎级线程跟踪存储空 间的分配情况。并在 JVM 闲暇时,查看并开释那些可被开释的存储空间。
- 垃圾回收在 Java 程序运行过程中主动进行,程序员无奈准确管制和干涉。
- Java 程序还会呈现内存透露和内存溢出问题吗?Yes!
1.5 Java的环境搭建
下载 JDK
装置 JDK
配置环境变量
path:windows 零碎执行命令时要搜查的门路。
验证是否胜利: javac java
抉择适合的文本编辑器或 IDE 开发
1.明确什么是 JDK, JRE
- 简略而言,应用 JDK 的开发工具实现的 java 程序,交给 JRE 去运行。
2.JDK 、 JRE 、 JVM关系(重点)
装置 JDK
- 装置,下一步即可。
- 倡议:装置门路不要有中文或者空格等特殊符号。
- 如果操作系统是 64 位的,软件尽量抉择反对 64 位的(除非软件自身不辨别 。
- 当提醒装置 JRE 时,失常在 JDK 装置时曾经装过了,然而为了后续应用 Eclipse 等开发 工具不报错,倡议也依据提醒装置 JRE 。
3.配置环境变量 path
- 在 dos 命令行中敲入 javac ,呈现谬误提醒
- 谬误起因:以后执行的程序在当前目录下如果不存在, windows 零碎会在零碎中已有的一个名为 path 的环境变量指定的目录中查找。如果仍未找到,会呈现以上的谬误提醒。所以进入到 jdk 装置门路 bin 目录下,执行 javac ,会看到 javac 参数提示信息。为了能在所有文件执行胜利,须要配置环节变量。
- 额定:查看JDK版本
每次执行 java 的工具都要进入到 bin 目录下,是十分麻烦的。可不可以在任何目录下都能够执行 java 的工具呢?
依据 windows 零碎在查找可执行程序的原理,能够将 java 工具所在门路定义到 path 环境变量中,让零碎帮咱们去找运行执行的程序。
配置办法:
- 我的电脑属性高级零碎设置环境变量
- 编辑 path 环境变量,在变量值开始处加上 java 工具所在目录,前面用 ““; 和其余值分隔 开即可。
- 关上 DOS 命令行,任意目录下敲入 javac 。如果呈现 javac 的参数信息,配置胜利。
4.配置完 path 环境变量当前的验证
5.配置问题汇总解决
容许配置多个JDK版本,然而用的时候就一个
如果java或javac不能同时实现,则把JAVA_HOME放在最后面
如果用户变量不好使就间接放在环境变量
1.6 开发体验 HelloWorld
步骤:
\1.将 Java 代码编写到扩大名为 .java 的文件中。
\2.通过 javac 命令对该 java 文件进行 编译 。
\3.通过 java 命令对生成的 class 文件进行 运行 。
步骤一:编写
- 抉择最简略的编辑器:记事本。
- 敲入代码 class Test{ } 将文件保留成 Test.java ,这个 文件是寄存 java 代码的文件,称为源文件。
步骤二:编译
- 有了 java 源文件,通过编译器将其编译成 JVM 能够辨认的字节码文件。
- 在该源文件目录下,通过 javac 编译工具对 Test.java 文件进行编译。
- 如果程序没有谬误,没有任何提醒,但在当前目录下会呈现一个 Test.class 文 件,该文件称为字节码文件,也是能够执行的 java 的程序。
步骤三:运行
- 有了可执行的 java 程序 Test.class 字节码文件
- 通过运行工具 java.exe 对字节码文件进行执行。
- 呈现提醒:短少一个名称为 main 的办法。
因为一个程序的执行须要一个起始点或者入口,所以在 Test 类中的退出 public static void main(String[] args
对批改后的 Test.java 源文件须要从新编译,生成新的 class 文件后,再进行执行。
发现没有编译失败,但也没有任何成果,因为并没有通知 JVM 要帮咱们做什么事件,也就是 没有能够具体执行的语句。
想要和 JVM 来个互动,只有在 main 办法中退出一句System.out.println (“Hello因为程序进行改变,所以再从新编译,运行即可。
1.7 常见问题及解决办法
- 源文件名不存在或者写错
- 以后门路谬误
- 后缀名暗藏问题
- 类文件名写错,尤其文件名与类名不统一时,要小心
- 类文件不在以后门路下,或者不在 classpath 指定门路下
- 申明为 public 的类应与文件名统一,否知编译失败
- 编译失败,留神谬误呈现的行数,再到源代码中指定地位改错
1.8 正文
1.正文的必要性
用于注解阐明解释程序的文字就是正文。
Java 中的正文类型:
- 单行正文,格局: //正文文字
- 多行正文,格局: :/ 正文文字 /
文档正文进步了代码的浏览性;调试程序的重要办法。
正文是一个程序员必须要具备的良好编程习惯。
将本人的思维通过正文先整理出来,再用代码去体现
注:
- 对于单行和多行正文,被正文的文字,不会被 JVM java 虚拟机)解释执行。
- 多行正文外面不容许有多行正文嵌套。
2.文档正文(Java 特有)
格局:
@ author 指定 java 程序的作者
@ version 指定源文件的版本
- 正文内容能够被 JDK 提供的工具 javadoc 所解析,生成一套以网页文件模式体现的该程序的阐明文档。
- 操作形式
小结第一个程序
- Java 源文件以“ java ”为扩展名。源文件的根本组成部分是类 class 如本例中的Hello World 类。
- Java 应用程序的执行入口是 main() 办法。它有固定的书写格局public static void main(String[] args )
- Java语言严格辨别大小写。但window没有辨别
- Java办法由一条条语句形成,每个语句以“;”完结。
- 大括号 都是成对呈现的,缺一不可。
- 一个源文件中最多只能有一个 public 类。其它类的个数不限,如果源文件蕴含一个public 类,则文件名必须按该类名命名。
对第一个java程序进行总结
1.java程序编写-编译-运行的过程
编写:咱们将编写的java代码保留在以“.java”结尾的源文件中I
编译:应用javac.exe命令编译咱们的java源文件。格局:javac
运行:应用java。exe命令解释运行咱们的字节码文件。格局:java类名
2.在一个java源文件中能够申明多个class。
然而,只能最多有一个类申明为public的。
而且要求申明为public的类的类名必须与源文件名雷同。
3.程序的入口是main()办法。格局是固定的。
4.输入语句:
System.out.print1n():先输入数据,而后换行
System.out.print():只输入数据
5.Java办法由一条条语句形成,每个语句以“;”完结。
6.编译的过程:编译当前,会生成一个或多个字节码文件。字节码文件的文件名与java源文件的类名雷同
1.9 API文档
API (Application Programming Interface, 应用程序编程接口)是Java提供的根本编程接口。
Java语言提供了大量的根底类,因而Oracle也为这些根底类提供了相应的 API 文档,用于通知开发者如何应用这些类,以及这些类里蕴含的办法。
1.下载 API
2.学Java怎么看API(具体图解)+查看Java源码(IDEA)
1.10 良好的编程格调
1.正确的正文和正文格调
应用文档正文来正文整个类或整个办法。
如果正文办法中的某一个步骤,应用单行或多行正文。
2.正确的缩进和空白
应用一次 tab 操作,实现缩进
运算符两边习惯性各加一个空格。比方: 2 + 4 * 5 。
3.块的格调
Java API 源代码抉择了行尾格调
1.11 罕用的 Java 开发工具
文本编辑工具:
- 记事本
- UltraEdit
- EditPlus
- TextPad
- NotePad
1.JDK,JRE,JVM三者之间的关系,以及JDK、JRE蕴含的次要构造有哪些
JDK = JRE + Java的开发工具(javac.exe,java.exe,javadoc.exe)
JRD = JVM + Java外围类库
2.为什么要配置path**环境变量?如何配置?
心愿在任何门路下都能失常运行
建设JAVA_HOME变量,JAVA_HOME=bin的下层目录
path=%JAVA_HOME%/bin
3.罕用的几个命令行操作都有哪些?(至多4个)
cd 返回目录
cd… 返回下级目录
cd/ 返回根目录
dir 显示目录
md 创立目录 makedirectory
rd 删除目录 rmdir
del 删除文件
exit 退出
4.创立如下的类,使得运行的时候能够输入:
创立java文件:ChairMan.java
5.编译和运行上述代码的指令
编译:javac ChairMan.java
运行:java ChairMan
小结
学习编程最容易犯的错就是语法错误。 Java 要求你必须依照语法规定编写代码。如果你的程序违反了语法规定,例如:遗记了分号、大括号、引号,或者拼错了单词, java 编译器都会报语法错误。尝试着去看懂编译器会报告的错误信息。
今日份分享已完结,请大家多多包涵和指导!