第一个Java程序
你好,我是 彭彭。 先来个自我介绍,快看这边,看这边,看这边,没错,这就是我 ???????????? 怯懦而帅气,激情又弥漫! 我就是无牵无挂,风度翩翩的彭彭! 做生存的配角,跟我一起说:HAKUNA MATATA!!! |
导学:Java,你为何如此优良?
从当初开始,让我来带你一起学习Java。
你可能要说了:为什么要学Java?
因为,Java如此优良!
且听我为你一一道来。。。
你能够应用Java做什么
Java语言利用宽泛,从诞生之初就广受欢迎。Java利用无处不在,简直浸透了各行各业:金融、网站、嵌入式畛域、大数据技术、高频交易空间、迷信利用、挪动设施、车载设施以及风靡的万物互联、人工智能等畛域。
没错,Java无处不在。甚至连咱们吃饭、喝水、走路。。。都离不开Java提供的服务。
Java:定位高端的风云人物
正是因为Java如此优良,同时又无数以千万计的开发者为 Java 的不断完善添砖加瓦,让 Java 这门编程语言从诞生之初就煊赫一时,并长期霸占编程语言排行榜第一和第二的地位(虚心地说,与C语言并驾齐驱):
May 2020 | May 2019 | Change | Programming Language | Ratings | Change |
---|---|---|---|---|---|
1 | 2 | C | 17.07% | +2.82% | |
2 | 1 | Java | 16.28% | +0.28% | |
3 | 4 | Python | 9.12% | +1.29% | |
4 | 3 | C++ | 6.13% | -1.97% | |
5 | 6 | C# | 4.29% | +0.30% | |
6 | 5 | Visual Basic | 4.18% | -1.01% | |
7 | 7 | JavaScript | 2.68% | -0.01% | |
8 | 9 | PHP | 2.49% | -0.00% | |
9 | 8 | SQL | 2.09% | -0.47% | |
10 | 21 | R | 1.85% | +0.90% | |
11 | 18 | Swift | 1.79% | +0.64% | |
12 | 19 | Go | 1.27% | +0.15% | |
13 | 14 | MATLAB | 1.17% | -0.20% | |
14 | 10 | Assembly language | 1.12% | -0.69% | |
15 | 15 | Ruby | 1.02% | -0.32% | |
16 | 20 | PL/SQL | 0.99% | -0.03% | |
17 | 16 | Classic Visual Basic | 0.89% | -0.43% | |
18 | 13 | Perl | 0.88% | -0.51% | |
19 | 28 | Scratch | 0.83% | +0.32% | |
20 | 11 | Objective-C | 0.80% | -0.83% |
上面是长期以来Java语言的市场占有率(彩色线条),能够显著看出Java语言始终名落孙山:
(数据起源:https://www.tiobe.com/tiobe-index/)
Java在企业服务、挪动设施、大数据等多个畛域领有不可撼动的市场份额,这也是它作为风云人物的重要依据。Java定位高端,薪资昂扬,简略易学却功能强大。无论是对当作入门语言的老手,还是对于作为终生职业的开发者,都是货真价实的不二之选。
你还在等什么,快上车!
课程内容
本节课程为你介绍Java语言详情,而后实现你的第一个Java程序。
次要内容包含:
- Java是什么
- 你能够应用Java做什么
- Java有什么特点
- Java的倒退历程是怎么的
- 你该怎么开始?
- 你的第一个Java程序
- Java程序是怎么工作的?(选学)
- 集成开发环境搭建
- 总结
内容看起来很多,其实一点都不难。认真看,只有一个加粗的重点工作哦!
学完本节课程,你会有以下两个播种:
- 理解Java语言的详情
- 可能应用IDEA编写、运行HelloWorld程序
怎么样,是不是看起来很简略?
动动手指就能实现,快来开始你的老手工作吧!
第一关 Java及其“风波人生”
1.1 Java是什么
Java 是由Sun Microsystems公司于1995年5月推出的高级程序设计语言。由James Gosling(詹姆斯 · 高斯林)和共事们独特研发,并在1995年正式推出。因为该公司在2009年被Oracle公司收买,所以,Java当初是Oracle公司的一部分。Java的官网:https://www.oracle.com/java/。
Java应用程序可运行于不同的操作系统,如Windows,Mac OS,及其他多种UNIX版本的零碎。依据Java不同的用处,分为三个版本:
- JavaSE:Java Platform Standard Edition,Java平台标准版,开发桌面应用程序,比方一些小游戏、音乐播放器、安卓零碎和安卓手机的App
- JavaEE:Java Platform,Enterprise Edition,Java平台企业版,开发企业级利用,比方天猫、京东、百度之类的大型网站
- JavaME:Java Platform Micro Edition,Java平台微型版,嵌入式设施开发,比方数字电视、机顶盒、电冰箱、车载电子设备
闯关练习
1、Java语言的作者是谁?
A. Mark Zuckerberg(马克扎克伯格)
B. Elon Musk(埃隆马斯克)
C. Bill Gates(比尔盖茨)
D. James Gosling(詹姆斯高斯林)
答案:
James Gosling(詹姆斯高斯林)谬误提醒:往上翻一翻,聪明绝顶的老爷爷叫什么名字!
1.2 Java有什么特点
Java 的设计者曾经编写了颇有影响力的“ 白皮书”,用来解释设计的初衷以及实现的状况,并且公布了一个简短的摘要, 这个摘要用上面 11 个要害术语进行组织:
Java的长处如此之多,通过一直地学习,你将逐步领会到。上面简略介绍下几个重要的特点:
- Java语言是简略的: Java 语法是 C++ 语法的一个“ 污浊” 版本,Java抛弃了C++中很少应用的、很难了解的、令人蛊惑的那些个性,如操作符重载、多继承、主动的强制类型转换,这也使得大多数程序员很容易学习和应用。 简略的另一个方面是小。 Java 的指标之一是反对开发可能在小型机器上独立运行的软件。 根本的解释器以及类反对大概仅为 40KB,再加上根底的规范类库和对线程的反对(基本上是一个自蕴含的微内核) 大概须要减少 175KB,在过后,这是一个了不起的成就。
- Java语言是面向对象的:面向对象设计是一种程序设计技术, Java是一个纯的面向对象程序设计语言。 咱们简直能够透过现实生活去了解Java语言中的所有,这大大减少了编程语言与事实之间的阻隔。
- Java语言是平安的: Java通常被用在网络或分布式环境中,为此,Java提供了一个平安机制以防恶意代码攻打。除了Java语言具备的许多平安个性以外,Java对通过网络下载的类具备一个平安防备机制(类加载器),如调配不同的名字空间以防代替本地的同名类、字节代码查看,并提供平安管理机制(类SecurityManager)让Java利用设置平安哨兵。
- Java是高性能的: 只管对解释后的字节码性能曾经比较满意, 但在有些场合下还须要更加高效的性能。 字节码能够(在运行时刻 )动静地翻译成对应运行这个利用的特定 CPU 的机器码。 与那些解释型的高级脚本语言相比,Java确实是高性能的。事实上,Java的运行速度随着JIT(Just-In-Time)编译器技术的倒退越来越靠近于C++。
- Java语言是多线程的: 多线程能够带来更好的交互响应和实时行为,来确保用户界面不会“ 冻住”。现在,咱们十分关注并发性,因为摩尔定律即将完结。咱们不再谋求更快的处理器,而是着眼于取得更多的处理器,而且要让它们始终放弃工作。 在Java语言中,线程是一种非凡的对象,它必须由Thread类或其子(孙)类来创立。线程的流动由一组办法来管制。Java语言反对多个线程的同时执行,并提供多线程之间的同步机制。
1.3 Java的倒退历程
那么它是如何一步步倒退到当初的样子的?
- 1995年5月23日,Java语言正式公布
- 1999年6月,SUN公司公布三个Java版本:标准版(J2SE,)、企业版(J2EE)和微型版(J2ME)。
- 2002年2月26日,J2SE1.4公布,自此Java的计算能力有了大幅晋升
- 2004年9月30日18:00PM,J2SE1.5公布,新增了枚举、泛型、可变参数、主动装箱/拆箱、For-each循环、注解等多个重要而实用新个性,成为Java语言发展史上的又一里程碑。为了示意该版本的重要性,J2SE1.5更名为Java SE 5.0
- 2005年6月,JavaOne大会召开,SUN公司公开Java SE 6。此时,Java的各种版本曾经更名,以勾销其中的数字"2":J2EE更名为Java EE,J2SE更名为Java SE,J2ME更名为Java ME
- 2009年04月20日,甲骨文74亿美元收买Sun,获得Java的版权。
- 2014年3月18日,Oracle公司发表 Java SE 8,里程碑版本,公布了大量的优良个性,如Lambda表达式,办法援用,函数式编程,Stream API,Date Time API,全新的Nashorn javascript引擎,以便咱们在JVM上运行特定的JavaScript利用,
- 2018年9月25日,Java SE 11 公布,里程碑版本,最近的长期反对(LTS,Long Term Support)版本,Oracle承诺会始终保护到2026年。这个版本除了对之前公布的8、9、10中的个性进行优化之外,还新增了类型推断、HTTP Client API、汇合类的加强、ZGC(低功耗可扩大GC)、嵌套访问控制、堆剖析能力加强(JVMTI)、新增并优化一些加密算法,同时,Oracle发表将不再独自公布JRE和Server JRE,对立名称为Oracle JDK,并发表当前每6个月公布一次新版本,每三年公布一次LTS版本。
- 2021年9月,最新的LTS版本Java SE 17 公布,敬请期待。
闯关练习
2、Java当初(2020年)最新的LTS(长期反对)版本是?
A. Java 8
B. Java 9
C. Java 11
D. JDK 14
答案:
Java 11
第二关 你该怎么开始?
2.1 找到JDK
你该怎么开始应用Java进行程序设计呢?
Java的设计者们也思考到了这个问题。为了不便宽广开发者不便的应用Java语言开发利用,设计者们提供了大量的开发工具,通过应用这些工具,咱们可能以非常简单的形式开发Java程序(其中最典型的就是java
和javac
两个命令,稍后介绍)。
那么,这些工具在哪里呢,如何应用呢?
设计者们把这些工具打包在一起,叫做 JDK, Java Development Kit,即Java开发工具包。个别状况下,咱们开发了程序之后,必定是要运行一下看看成果的,所以,设计者们把Java程序的运行环境一并打包进了JDK外面,这个运行环境就叫 JRE,Java Runtime Environment,所以 JDK 的 JRE 之间是蕴含关系。
当初,咱们要想方法获取 JDK。
既然Java当初属于Oracle公司,那么咱们去Oracle的官网应该就能获取到 JDK。在浏览器输出Oracle的官网网址:https://www.oracle.com/,进入首页之后,你能够在搜寻框里输出 “Java”进行搜寻,也能够在导航栏里找到Products并进入 Java频道:
进入Java频道之后,是对于Java劣势的宣传。你能够在这个页面理解到Java的劣势。在页面的下半局部,找到“ Java”,能够看到 “Java SE”,点击“Download Java now”:
进入Java SE详情页面,你能够看到最新版本以及Oracle官网举荐应用的版本,这些版本都是以后市场上使用量比拟高,而且比较稳定的版本。你当然能够下载最新版的JDK软件包尝尝鲜,如果是生产环境,还是更举荐应用上一个稳固的LTS(长期反对)版本,或者你的公司指定应用的版本。这里咱们以JDK11版本为例(目前最新的LTS版本),点击Java SE 11的“Download”连贯,进入上面的页面:
持续点击上图中的“JDK Download”链接,进入JDK安装包下载列表,在这里,你能够依据本人操作系统的版本来抉择适宜的JDK,比方下载64位Windows版本的JDK安装包:
tips: 下载后缀名为.zip的免装置版本也是能够的。间接将压缩包解压到指定目录,进行配置之后就能够间接应用了,省去了装置的过程。然而该版本文件包比拟大,在下载过程中要思考网络因素。
抉择你的安装包之后,点击链接,页面弹出提示框,间接勾选承受协定的复选框(如同也没有别的抉择):
点击弹出框的下载按钮就能够开始下载了。
还有一个细节要留神,Oracle网站要求下载JDK的用户必须是登录用户,如果你没有登录或者没有帐号,须要注册一个非法的帐号能力下载,这里不作介绍。
下载实现后,双击软件包装置即可。你能够始终点击 “next” (或 “下一步”)装置到默认门路下,也能够抉择将JDK装置到指定目录,以方便管理。比方我的装置门路(DevelopTools是所有开发软件装置的目录):
D:\DevelopTools\Java\jdk-11.0.8\
2.2 如何以及为何配置JDK
JDK装置实现后看起来并不会有什么变动,个别状况下,你也看不到桌面会有快捷方式。想要失常应用JDK,还须要一些配置。
你能够关上JDK装置后的bin目录,外面并不止一个应用程序:
这外面蕴含 Java 大量的开发命令(即Java开发工具,下同)和运行命令,要想应用这些命令,须要将它们配置到操作系统的环境变量 Path 中,当咱们须要零碎运行 JDK 的命令时,就能够通过 Path 配置的门路找到并执行它们。
tips:
环境变量:零碎或利用程序运行过程中应用到的一些信息(参数),可能是某个值,也可能是某个门路。
2.3 如何配置JDK
- 关上零碎高级设计,找到“高级选项卡”:
在桌面“计算机”或“此电脑”图标上右键,抉择“属性”,进入控制面板的计算机系统页面后,点击“高级零碎设置”,关上零碎属性-高级选项卡:
- 点击“环境变量”按钮,新建零碎变量“JAVA_HOME”,值为JDK装置的根目录:
进入环境变量配置窗口,在“零碎变量”下点击“新建”按钮,创立一个新的环境变量:
- 应用新建的零碎变量“JAVA_HOME”,将JDK装置目录下的 bin目录 增加到 Path 零碎变量的最后面:
选中“零碎变量”下的Path变量,抉择“编辑”按钮,弹出编辑环境变量的窗口后,点击“新建”按钮,输出“%JAVA_HOME%\bin”后确定,应用“上移”按钮将咱们新建的内容移到最下面:
- 如何验证是否配置胜利?
配置实现后,顺次点击确定敞开那些窗口。而后同时按住win + R,输出cmd,回车:
进入DOS命令行窗口后,别离输出命令:
java
javac
而后回车,如果可能显示一些信息,阐明配置胜利:
注意事项:
若输出java命令或者javac命令后提醒“不是外部或外部命令,也不是可运行的程序或批处理文件”,则JDK装置失败,需卸载后重装。
对于Mac版的环境配置,能够点开链接本人学习一下。
2.4 考一考
请用一句话形容配置环境变量的目标是什么?
答案:
将bin目录配置到Path中,是为了当须要零碎运行bin目录下的命令时,能够不便的找到它们并运行。
第三关 你的第一个Java程序
3.1 意识在线编辑器
说了这么多,快来开始写代码吧。不过再给彭彭1分钟工夫,带你认识一下代码编译器——它是你在根底学习过程中的重要小助手。
代码编辑器界面如下图所示,其中:
- 代码输入区:用来输出或编辑已有的代码
- 代码执行区:用来展现代码运行后的后果
- 重置:将代码输入区中内容还原为初始内容
- 运行:执行编译代码,在代码执行区输入运行后果
点击这里,能够应用在线编译器边学边练,无需本人装置环境,用于学习Java基础知识十分不便。
但如果你是立志学好Java,当前从事Java相干工作,拍前浪于沙滩上的后浪少年,那么肯定要在本人电脑上装置更业余的编译器,老师在第五关会教你怎么装置。加油吧,后浪!
3.2 写一写,运行一下
说了这么多,快来开始写代码吧。
简直每一种编程语言的第一个程序,都是赫赫有名的“Hello world”,如同是在向全世界宣告:我来了。
Java也不例外,上面这段代码,就是Java语言的Hello world程序:
public class Test { public static void main(String[] args) { System.out.println("Hello World"); }}
这段代码的输入后果:
Hello World
快来试一试
3.3 为什么这么写
Java程序为什么是这样的?每个局部代表什么意思呢?
当初就通知你答案。
下面的HelloWorld程序一共有5行,事实上,只有前三行是能够执行的代码,那么,咱们就来别离看看这三行是什么意思:
第一行:
public class HelloWorld {}
这段代码【申明】了一个类,或者说,创立了一个类,这个类叫做 HellWorld
。而后面紧挨着的单词 class
,它的中文意思就是类,第一个单词 public
意思是“公共的”,所以 HellWorld
是一个“公共的类”,这就是这段申明的意思。至于类的具体含意,我会在“面向对象”章节具体的为你介绍,当初,你须要晓得的是:
在Java中,一个最小的Java程序,至多蕴含一个类,或者说,类是Java程序的最小单位。
这就是为什么要创立一个 类(class)
的起因。
第二行:
public static void main(String[] args) {}
这行代码【申明】了一个办法,或者说,创立了一个办法,这个办法叫 main
。main办法是Java程序的入口,也就是说,Java程序是从这个办法开始运行的。main办法的格局是固定的,不能随便批改,这是Java语言的约定(或者说标准)。所以,倡议你先把main办法的格局记住,我会通过前面的常识为你介绍它每一部分的含意。
比照第一行,这一行代码也有一对括号,而方才咱们编写的代码里,花括号开始 {
和结尾 }
并没有紧紧挨在一起,为什么这样?其实,花括号代表了类和main办法的范畴。也就是说,类的花括号中的内容,才是属于这个类的,而如果在一个类的结尾花括号里面编写代码,这些代码是不属于这个类的。由此可见,main办法是HelloWorld类的一部分,同样的,第三行代码也是main办法的一部分。
Java中的括号,都是成对呈现的,比方:( )、[ ]、{ },所以在编写代码的时候肯定要留神哦!
第三行:
System.out.println("Hello World");
要把这行代码分成两局部:System.out.println();
和 "Hello World"
。第一局部,咱们称为“输入语句”,它的格局也像main办法一样是固定的,它的作用在于 输入内容;而第二局部,也就是双引号两头的Hello world,就是输入语句要输入的内容。这么说来,双引号外面的内容是能够批改的,快去试试本人的名字?
Java中的引号,无论是双引号还是单引号,个别都要成对呈现,而且都是英文输入法下的,其它符号同理。
3.4 一幅图的总结
好忘性不如烂笔头,连忙把它们记下来:
第四关 Java程序是怎么工作的?
看起来,编写一个Java程序非常简单,然而,Java程序的运行过程,是非常复杂的。这部分常识 不要求 你把握,你只须要理解它的大抵过程就能够了。当初,为你介绍的内容是:Java程序的开发与运行原理。大抵分为三步:
编写源文件 ——> 编译 ——> 运行。
4.1 编写源文件
下面编写的代码,称为“源代码”或“源码”。个别状况下,咱们会把源代码保留到后缀名为 .java
的文本文件里,这样的文件叫“源文件”。为了不便,咱们会放弃文件名与类的名字统一(包含大小写):
4.2 编译
源文件是程序员编写的,咱们可能轻松辨认每一行代码的意思,然而,在计算机中,CPU只能辨认二进制指令。所以,当初要做的工作就是,须要在源文件和计算机指令之间进行转换。因为Java语言的构造和个性,设计者们先将源文件转换成一种非凡的二进制文件,而后将这个二进制文件交给Java运行时环境(JRE)去执行。转换成二进制文件的过程,叫做编译(这个过程应用了 javac
命令),生成的二进制文件,叫做字节码文件(后缀名是 .class
)。这个过程全副由Java编译器主动实现,不须要程序员进行任何非凡操作:
4.3 运行
Java程序的运行,并不是将字节码文件(.class
文件)简略的交给操作系统去执行,那是因为不同的操作系统中数据的大小、范畴和计算形式有很大不同,会导致同一段代码在不同零碎之间运行成果差异很大,这不是设计者们想要看到的。Java的设计者们想到了一个聪慧的方法,就是针对不同的操作系统,别离编写了一个能够正确执行Java程序的虚拟机(JVM),而后把这个虚拟机内置到 Java 的运行时环境(JRE)中,这样,同一段Java代码,就能够在不同的操作系统上运行出雷同的成果了:
将字节码文件(.class
)交给Java运行时环境(JRE)执行的过程,叫做Java程序的运行(这个过程应用了 java
命令)。
总的来说,从编写源代码,到程序输入后果,大抵分为三步:
闯关练习
4、Java程序的入口是什么?
A. 类
B. main办法
C. System.out.println();语句
D. 以上都是
答案:
main办法
第五关 集成开发环境搭建
JDK装置目录下的bin目录,蕴含了很多开发工具(即各种命令),咱们当然能够间接应用它们来开发Java程序,然而这样做带来的后果就是,无论从应用这些工具的形式,还是从治理代码的角度上看,都会显得十分不不便。如果能把这些工具集成在一个软件里,通过图形界面操作它们,就能够升高开发难度,大大提高开发效率。
工欲善其事,必先利其器。应用集成开发工具要简略、高效的多。所以,我特意为你筹备了当初最受开发者欢送的集成开发工具之一:Intellij IDEA,简称IDEA。
IDEA是JetBrains公司的产品,这家公司总部位于捷克共和国的首都布拉格,开发人员以谨严著称的东欧程序员为主。官网网址为:https://www.jetbrains.com/idea/。
对于IDEA的下载和装置,请参考文档:
IntelliJ IDEA的下载和装置.docx
IDEA的配置、以及罕用快捷键,请参考文档:
IntelliJ IDEA开发工具配置.docx
5.1 在IDEA中创立Java我的项目
在IDEA中(包含很多其余的集成开发工具,比方eclipse),是以我的项目的模式来治理Java代码的,一个我的项目就是一个软件工程,或者了解成一个简单的Java程序。点击“Create New Project”,创立一个新我的项目:
在New Project新我的项目创立窗口,抉择Java我的项目类别,点击next:
上面的页面提醒是否从模板创立我的项目,不必管它,间接点击next:
输出我的项目名:HelloWorld,抉择我的项目在本地磁盘的地址,点击finish:
小贴士,对IDEA的操作技巧,每次启动IDEA时弹出,能够依据须要抉择是否弹出。勾销勾选“Show tips on startup”即勾销弹出,点击close:
HelloWorld我的项目创立胜利。开展我的项目构造,如图所示:
在src目录上右键->new->Java Class,并在弹出的对话框中输出HelloWorld(留神大小写):
这样就创立好了一个类,在类中编写代码即可。
5.2 编写Java程序并运行
在新建的HellWorld类中编写后面介绍过的代码之后,IDEA会主动保留,不须要咱们手动 Ctrl + S
。
代码编写好了,就能够开始运行程序了:
能够看出,IDEA默认的字号十分小,你能够依据后面介绍的 IntelliJ IDEA开发工具配置.docx 对字体和字号进行配置。运行程序有多种形式,常见的形式比方:
- 一,在左侧编辑区绿色三角形按钮上点击,抉择“Run ‘HelloWorld.main()’”菜单运行HelloWorld程序;
- 二,也能够在空白处右键,抉择“Run HelloWorld.main()”菜单运行HelloWorld程序:
运行之后,窗口下半局部呈现控制台窗口,并打印出“HelloWorld”:
哇,好棒呀,你竟然能够开发实现一个Java程序了!
课程总结
这个大节的内容曾经学习完了,是不是感觉播种多多!
方才咱们一起理解了Java的根本信息,同时实现了你的第一个Java程序:HelloWorld。
当初,咱们一起做个总结。
- 理解Java的根本信息
Java的作者:詹姆斯 · 高斯林
Java语言目前最新的LTS版本:JDK11
- 可能编写HelloWorld代码,并胜利运行
Java程序的最小单位:类
Java程序的入口:main办法
这就是明天学习到的内容,整体来说难度不大。置信你当初必定曾经把握了下面的常识,你真的太棒了!
最初,去挑战一下明天的作业吧!
作业
1.应用IDEA实现HelloWorld程序,并胜利运行。
2.练习IDEA的罕用快捷键,看看能不能找到疾速编写main办法和输入语句的方法。
(完)