女朋友哭着说学不会Java,那天晚上我给她讲了一夜基础...

Java入门

什么是Java

我们先来看下百度百科的解释:

Java是一种为多个平台生成软件的编程语言。由Sun Microsystems的前计算机科学家James A. Gosling在20世纪90年代中期开发的。编译的代码可在大多数操作系统上运行。

从上面我们了解到Java是一种用来开发软件的高级语言,Java提供了集成开发工具包JDK,让我们可以将自己编写的Java代码编译成字节码文件(class文件),Java虚拟机(JVM)负责将字节码转换成机器码,从而在各个操作系统上执行,操作系统得到指令后控制硬件做出响应。

女朋友哭着说学不会Java,那天晚上我给她讲了一夜基础...
java程序执行过程


一个程序员从撸代码开始到最后计算机对代码做出响应所经历的过程大概是这个样子:

女朋友哭着说学不会Java,那天晚上我给她讲了一夜基础...

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,我们来看看原因:

女朋友哭着说学不会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为例,点击链接下载

女朋友哭着说学不会Java,那天晚上我给她讲了一夜基础...

点击之后会出现这样的弹框,我们勾选确认就可以了:

女朋友哭着说学不会Java,那天晚上我给她讲了一夜基础...


接下来还要登录Oracle,当然登录之前需要注册,这里就不细讲了哈。

女朋友哭着说学不会Java,那天晚上我给她讲了一夜基础...

登录之后就可以下载了


女朋友哭着说学不会Java,那天晚上我给她讲了一夜基础...
在这里插入图片描述


为了方便大家,我提前下载好了安装包,上传到网盘了,大家可以自行下载:


  • windows版本 提取码: xpak

  • linux版本 提取码: upse

  • mac版本 提取码: kmv5

Jdk安装

win版安装

双击安装,下一步按流程走完,不要装jre,因为jdk包含了jre。

环境变量配置:
右击我的电脑,选择属性,点击高级系统设置:

女朋友哭着说学不会Java,那天晚上我给她讲了一夜基础...


选择环境变量:

女朋友哭着说学不会Java,那天晚上我给她讲了一夜基础...
在这里插入图片描述


在系统变量里,点击新建按钮,创建JAVA_HOME目录,变量值填入你的jdk安装目录:

女朋友哭着说学不会Java,那天晚上我给她讲了一夜基础...
在这里插入图片描述


然后点击Path,再点击编辑,输入Java的bin目录,格式如下:

女朋友哭着说学不会Java,那天晚上我给她讲了一夜基础...
在这里插入图片描述

注意:win7的话需要找到Path,双击打开后在后面手动输入 %JAVA_HOME%/bin;

确定之后,打开cmd,输入

java -version

如出现下面有版本号的结果,则表示Java安装成功:

女朋友哭着说学不会Java,那天晚上我给她讲了一夜基础...
在这里插入图片描述

Linux版本安装

请参考教程:Linux Java安装教程

Mac版本安装

请参考教程:Mac Java安装教程

开发工具选择

  1. notepad++ 。初入门写程序,可以用文本编辑器,对于熟悉Java语法非常有帮助。notepad++下载地址:
    https://notepad-plus-plus.org/downloads/v7.8.6/

  2. Eclispe。我刚学Java的时候用的就是Eclipse,它是完全免费,使用也比较简单。下载地址:https://www.eclipse.org/downloads/
    下面这篇教程会教你如何下载安装和使用:Eclipse 安装(Neon 版本)

  3. IDEA。IDEA是我现在用的编辑器,个人感觉非常好用,是目前开发Java最好的编辑器,非常推荐大家使用。缺点是比较吃内存,而且商用版的需要破解或者购买才能使用,不过社区版的可以免费使用,对于初学者来说足够了。下载地址:https://www.jetbrains.com/idea/

第一个Java程序

入门程序HelloWorld

新建一个txt文件

女朋友哭着说学不会Java,那天晚上我给她讲了一夜基础...
HelloWorld.txt

修改后缀名变成 .java文件

女朋友哭着说学不会Java,那天晚上我给她讲了一夜基础...
.java文件

HelloWorld的java程序代码如下:

public class HelloWorld{
    public static void main(String[] args) {
        // 打印一句话  "Hello World"
        System.out.println("Hello World");
    }
}

注意代码不要写错,然后我们开始运行一下:
在文件夹路径上输入cmd 命令

女朋友哭着说学不会Java,那天晚上我给她讲了一夜基础...
cmd


打开这样的黑窗口

女朋友哭着说学不会Java,那天晚上我给她讲了一夜基础...


输入下面的命令:


javac HelloWorld.java

正常的话,文件夹会多出来一个 HelloWorld.class 文件:

女朋友哭着说学不会Java,那天晚上我给她讲了一夜基础...


然后再执行命令(注意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”输出到命令行窗口。


以上就是女朋友哭着说学不会Java,那天晚上我给她讲了一夜基础...的详细内容,更多请关注其它相关文章!