大家好,我是程序员青戈,一个被Bug耽误了才艺的程序员👦专注于Java领域的知识分享和技术交流,每天会给大家带来Java学习的干货教程📚
微信搜索公众号 Java学习指南,回复 面试 领取一线大厂面试题一套😋加号主微信 xia_qing2012,可以进技术交流学习群一起共同进步哦😊
文章目录
Java入门
什么是Java
我们先来看下百度百科的解释:
Java是一种为多个平台生成软件的编程语言。由Sun Microsystems的前计算机科学家James A. Gosling在20世纪90年代中期开发的。编译的代码可在大多数操作系统上运行。
从上面我们了解到Java是一种用来开发软件的高级语言,Java提供了集成开发工具包JDK,让我们可以将自己编写的Java代码编译成字节码文件(class文件),Java虚拟机(JVM)负责将字节码转换成机器码,从而在各个操作系统上执行,操作系统得到指令后控制硬件做出响应。
一个程序员从撸代码开始到最后计算机对代码做出响应所经历的过程大概是这个样子:
Java能做什么
-
服务器编程
Java是目前服务器编程领域最优秀的语言之一。很多银行的交易系统都是使用Java来开发的,大多数情况下没有任何前端,它们通常是从一个服务器(上一级)接收数据,处理后发向另一个处理系统(下一级处理) -
开发网站
在开发个人或商业网站领域,java提供了非常成熟的解决方案供我们选择,你可以运用许多不同的框架来创建web项目,例如SpringMVC,SpringBoot等等。 -
开发软件
例如我们非常熟知的Java集成开发环境Eclipse、Idea都是使用Java开发的。 -
Android
我们日常使用的APP,其实大部分就是使用Java来开发的,虽然Android运用了不同的JVM以及不同的封装方式,但是代码还是用Java语言所编写。 -
嵌入式设备
Java 在嵌入式领域发展空间很大。从事嵌入式开发,需要从Sun下载J2ME开发包,J2ME包含了嵌入式设备专用虚拟机KVM,和普通的JDK中包含的JVM有所不同。另外还需要到特定的嵌入式厂商那里下载模拟器。 -
等等很多个领域不一一列举了…
为什么学Java
有人说:PHP是世界上最好的语言,后来这句话作为段子在网上流传开来。但是很多主攻其他语言的程序员不干了。凭什么?PHP一个脚本语言有什么好豪横的?C++不香吗?Python不香吗?但我感觉最香的还是Java,我们用数据来说话。
下图是2020年四月各编程语言排行榜,Java第一。
有兴趣的同学可以去网上搜一下各个年份的语言排行榜,Java几乎长期霸占排行榜的第一名,跟C不相上下。C作为高级语言中的低级语言,和硬件关系近,运行效率高,所以很多底层的程序都是C来开发。而Java因为其在服务器编程领域的霸主统治地位和可移植等特性,在未来很多年里还是依旧会成为最流行的编程语言之一。
如果你学语言是为了找个好工作,那么选择Java是绝对没有问题的。而且我个人认为Java的学习起来还是比较轻松的,我会根据实际的工作环境,总结出Java学习的大纲,列举重点难点和必会的知识点。只要认真学,完全可以在较短的时间内掌握这门语言,并独立进行程序开发。
当你有了一些基础和实战经验后,去公司实习,参与实际项目的开发,很快就能入行。
怎么学Java
学习任何一门编程语言,除了基础的理论之外,都离不开敲代码、敲代码、敲代码。这就跟我们读书的时候学习知识一样。我们每节课都会学到很多新的知识点,这些知识点可能是老师讲课教授给你,可能是你自己预习掌握的,课后都要做一些练习题。练习题的作用是什么?就是为了验证你所学的知识点是不是真正的掌握了,查漏补缺。
很多同学学习Java喜欢看视频,看老师在视频里教写程序,然后就跟着老师原封不动地敲代码。万一老师的程序里出现了什么小错误,或者程序执行不通过了,就完全一脸懵逼,不知道怎么进行下去了。于是上网找资料,加各种学习群,在群里求助大神,这个怎么搞的?那个怎么调的?
我想问一句,这是正确的学习方法吗?你们看视频的目的是什么?快速学习编程语言的基础,掌握这门编程语言。那么这样不带思考求助别人的一种学习方式是掌握了吗?注意,我在这里说的是完全照搬代码的学习方式。这样的学习方式就造成一个尴尬的局面:自己写代码完全没思路。
那如果这样,我们看视频迅速的学会章节的知识点,然后跟着老师敲一遍代码,在对照着知识点想想代码每一步执行的意思,自己做好笔记,这样的效果是不是好点?课后,我们找一点基础的练习题,自己尝试不看资料去编程实现。如果没思路,我们就可以像解题一样列举个1、2、3、4的步骤来辅助我们理解,我举个例子:
题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数
// 开始构思
// 1. 我们需要输出4个数,那么先定义4个变量 int a,b,c,d = 0;
// 2.获取系统用户输入的字符串,再定义一个变量接收这个字符串 Sting s;
// 3.一行字符必须拆开才能统计,所以把字符串转换成数组;
// 4.数组需要遍历,拿到数组的每个字符;
// 5.判断每个字符是什么类型,找到对应的字母、数字和空格类型就将对应类型的变量+1,没找到就按其他处理d+1;
// 6.输出每个字符的个数
这是一道非常简单的练习循环、分支结构的练习题,可能你知道怎么做,但是在动手的时候却不知道从哪里开始写,这就是很多新手程序员目前所处的困境。那么你如果像我这样在写代码之前先理出个1,2,3,4点出来,把每一步都拆解详细,是不是对你写程序很有帮助?
这种思路分析叫做伪代码,就是用文字先描述出你的程序做的工作,再去根据步骤填充,完成程序设计。我希望在初学程序的朋友们可以参考这种方式,真正的动起手来自己写代码。代码写的越多,你写起来越舒服,编程的思路越开阔。这是我的一点经验总结,希望能帮到你们。
Java开发环境安装
JDK下载
截止目前Java已经发行的最新版本是Java SE 14,但是使用最多的Jdk版本是 1.8,我们学习的话我建议也是基于1.8版本来学习。
下载地址(Oracle官网):Jdk下载地址
打开后在页面中找到需要的jdk版本,这次以版本Java SE 8u251为例,点击链接下载
点击之后会出现这样的弹框,我们勾选确认就可以了:
接下来还要登录Oracle,当然登录之前需要注册,这里就不细讲了哈。
登录之后就可以下载了
为了方便大家,我提前下载好了安装包,上传到网盘了,大家可以自行下载:
Jdk安装
win版安装
双击安装,下一步按流程走完,不要装jre,因为jdk包含了jre。
环境变量配置:
右击我的电脑,选择属性,点击高级系统设置:
选择环境变量:
在系统变量里,点击新建按钮,创建JAVA_HOME目录,变量值填入你的jdk安装目录:
然后点击Path,再点击编辑,输入Java的bin目录,格式如下:
注意:win7的话需要找到Path,双击打开后在后面手动输入 %JAVA_HOME%/bin;
确定之后,打开cmd,输入
java -version
如出现下面有版本号的结果,则表示Java安装成功:
Linux版本安装
请参考教程:Linux Java安装教程
Mac版本安装
请参考教程: Mac Java安装教程
开发工具选择
-
notepad++ 。初入门写程序,可以用文本编辑器,对于熟悉Java语法非常有帮助。notepad++下载地址:
https://notepad-plus-plus.org/downloads/v7.8.6/ -
Eclispe。我刚学Java的时候用的就是Eclipse,它是完全免费,使用也比较简单。下载地址: https://www.eclipse.org/downloads/
下面这篇教程会教你如何下载安装和使用:Eclipse 安装(Neon 版本) -
IDEA。IDEA是我现在用的编辑器,个人感觉非常好用,是目前开发Java最好的编辑器,非常推荐大家使用。缺点是比较吃内存,而且商用版的需要破解或者购买才能使用,不过社区版的可以免费使用,对于初学者来说足够了。下载地址:https://www.jetbrains.com/idea/
第一个Java程序
入门程序HelloWorld
新建一个txt文件
修改后缀名变成 .java文件
我这里使用notepad++ 先写这样的简单程序,notepad++下载地址:notepad++下载
HelloWorld的java程序代码如下:
public class HelloWorld{
public static void main(String[] args) {
// 打印一句话 "Hello World"
System.out.println("Hello World");
}
}
注意代码不要写错,然后我们开始运行一下:
在文件夹路径上输入cmd
命令
打开这样的黑窗口
输入下面的命令:
javac HelloWorld.java
正常的话,文件夹会多出来一个 HelloWorld.class 文件:
然后再执行命令(注意HelloWorld 后面没有 .class)
java HelloWorld
我们可以看到,命令行打印了我们输出的语句 Hello World, 这就说明我们的程序是完全正确的,没有问题。是不是很简单呢,你学废了吗?
解释一下Hello World程序
这里首先我们定义了一个类,类是 “public” 公共类型的,类名为“HelloWorld”。另外,Java 中主类名必须和Java 文件名相同,也就是说,这里定义的类名是“HelloWorld”,则文件应该保存为“HelloWorld.java”。
public static void main(String[] args)
这一句是Java 中的主运行方法,它和 C/C++中的main()作用是一样的,就是所有的程序都从“main()”中开始执行。要执行 Java 程序,必须有一个包括主运行方法的类。
System.out.println("Hello world");
这一句是 Java.lang 包的一个方法,用来将字串“Hello world”输出到命令行窗口。
关于作者
程序员青戈
,国内某985渣硕一枚,5年一线Java开发经验,先后在IBM、阿里、科大讯飞踩坑~
微信搜索:Java学习指南
关注我的原创公众号
感谢大家的阅读,创作不易,能否请您小手点一点下方的
一键三连
支持一下作者呢😊谢谢~