自学Java(随时放弃 Java语言基础四)

在这里插入图片描述

Java 语言基础(一)

距离上一次写文的时间已经过去了好几个月,时间久到我都觉得自己要放弃了……

但其实并没有(至少不是现在),因为我一直在恶补基础知识。

有多基础呢?

一点儿都不基础,看的本宫头疼欲裂

大家有空去看看《计算机科学导论》这本书就明白了。

接下来就是搭建Java环境,俗称装软件。

J哥不愧为强类型语言,安装方式严谨到差点把我送走,以至于后面几天我只要一听到“环境变量”、“Java home”、“配置环境变量”这几个词就会抽搐。

详细的安装过程网络上都有,建议大家多看几个版本,综合一下,多试试,发挥小强精神,舍得出电脑和自己,就能搭建好。

作为一名文科生,第一个要弄懂的自然是概念。也就是说Java是个啥、咋工作、以及编写第一个程序。

一、Java是啥

众所周知,J哥是一款面向对象的编程语言。至于对象是啥,前面提到过请各位自觉向前翻。

其实我也没完全明白,但大神说不明白就先记住,船到桥头自然直

Java也是强类型语言,翻译一下就是,这类语言的使用要求严格符合规定,所有变量必须先定义才能使用。它的优点是安全、严谨,缺点嘛……我一个菜鸟现在没资格评论。

在这里插入图片描述
int i=20
System. out.println(i)
电脑会输出一个20;

如果你这样输:
int i,
System.out.println(i)
电脑就会报错,要求你把i初始化

注释
int 整数型(基本数据类型的一种)
i 变量名(只要是合法的标识符都可以)

至于什么是数据类型、标识符、变量,以后会慢慢谈到,现在讲会显得比较乱。

举这个例子,单纯只是为了辅助你理解J哥的本性。

那么既然有强类型语言,相对应的也有弱类型语言

比如JavaScript,服务器的脚本PHP等等。它们在使用的时候很方便,没有严格的语法限制,大神说这是一种类型可以被忽略的语言,本人表示听不懂。其他像我一样的小白也不用纠结,你现在只要记住:

强类型语言是严谨的人群,比如J哥;
弱类型语言是随便的人群

说到这儿我想插一段题外话,那就是计算机是不能直接理解、执行高级语言的,它只能识别机器语言(机器码、二进制、指令集……这几个名字你能理解哪个就记哪个)。

任何高级语言编写的程序,想被计算机运行,都必须将其转换成机器语言,这种转换的方式有两种:

编译型

用专门的编译器,针对特定平台,将高级语言源代码一次性编译成可被该平台硬件执行的机器码,并包装成该平台能识别的、可执行程序的格式。

如下图:

源代码
编译
目标代码
执行
输出

特点:
有一个专门的编译过程;
一次性编译,运行时脱离开发环境,运行效率高;
与特定平台相关,一般无法移植到其他平台;
只需要编译一次,以后运行不需要再编译。

比如C、C++

解释型

用专门的解释器,对源程序逐行解释成特定平台的机器码,并立即执行。

如下图:

源代码
解释器
输出

特点:
不需要事先编译;
直接将源代码解释成机器码,并立刻执行;
某平台提供相应的解释器即可运行;
每次运行都要将源代码解释成机器码,效率低;
方便源程序移植。

比如:Python

这么多文字第一次看是不是很晕,感觉自己好像明白了又好像明白的不彻底。

没关系,下面让我举一个生动的栗子你就明白了。

没办法文科生就是喜欢栗子

假设有一本《哈利波特》的英文版小说,你(机器)看不懂,需要把它翻译成中文(二进制、机器码)。

你有两种翻译方法:

1、一次性把英文小说翻译成中文(编译型),优点是以后可以随时翻阅,不用再翻译。缺点是若原稿有改动,中文版不能时时更新;

2、请个翻译,一篇一篇用中文念给你听(解释型),优点是可以随原稿时时更新。缺点是每次想看书时,都要先找个翻译。

在这里插入图片描述

看到这里,不知道各位会不会产生这样一个问题:

Java是解释型、还是编译型

二、Java咋工作?

在回答上面的问题之前,让我们先搞懂J哥是怎么运行的。在这里插入图片描述
盗个图,mermaid流程图我不会玩

Java程序的运行分为编译阶段(检查是否符合语法),运行阶段

.java是源文件/源代码,经过Javac命令后编译生成 .class文件(字节码文件),但它还不是纯粹的机器语言(二进制),不能直接被电脑系统执行。

这个时候就需要JVM(Java虚拟机)这个翻译出场,将.class文件变成二进制,底层操作系统(电脑)接受机器语言后,一个程序就这样跑起来了。并且不同的操作系统有不同的JVM

在这里插入图片描述

再盗个图

返回去看刚才的问题,我认为J哥既是编译型语言,又是
解释型语言。

因为.java文件不经过编译啥也不是,而.class文件是解释运行在JVM上的。

三、编写第一个程序 helloworld

大神说这是作为一个程序员,对这个世界发出的第一声呐喊。

但在我看来,本宫又要被虐了……

具体过程就不赘述了(因为太痛苦),下面总结一下具体步骤:

1、新建一个后缀为.java的文件(Hello.java)
2、用notepad++编辑 输入如下代码

在这里插入图片描述
3、进入cmd
4、输入:Java Hello.java 回车——生成Hello.class(java源代码,优势可生成多个.class文件)
5、运行:Java Hello

在这里插入图片描述

电量已用尽,本宫卒了……

在这里插入图片描述
部分图片来自网络,侵权立删

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值