2. java基础知识第一课

举报
数据分析与统计学之美 发表于 2021/09/28 17:56:15 2021/09/28
【摘要】 Java系列第二课

1、什么是计算机程序?

为了让计算机执行某些操作或解决某个问题,而编写的一系列有序指令的集合。编写程序的工具就是语言。

2、语言的发展

机器语言—>汇编语言—>高级语言
具体参考以下文章:https://blog.csdn.net/qq_40184552/article/details/89214909

3、Java语言最重要的特点

1)可移植性:与平台(操作系统)无关的特性,使Java程序可以方便地被移植到网络上。
2)垃圾回收机制:以后慢慢体会,目前没用到也没体会到。
在这里插入图片描述
上图的解释:“java源程序”就是写好的想要执行某一功能的程序。程序写好了,我们需要去运行它,得到某个结果。因而就需要java对应的软件去运行它,而应用软件又是装在操作系统上面的,上面所写的“java源程序”想要运行,就必须要操作系统去正确识别它。但是,操作系统并不能直接看懂“java源程序”。

为什么计算机不认识呢?因为“java源程序”是我们自己编写的,由一些英语单词、汉字等组成的高级语言,而操作系统只认识一些机器语言,像0、1这样的二进制语言。鉴于此,操作系统想要正确识别“java源程序”,就必须有一个小翻译,将“java源程序”翻译成各种不同操作系统可以懂的0、1二进制语言。

不同的操作系统,它所支持的机器语言的二进制语言不一样。同样的一段话,
在windows操作系统上可能是1010,在linux上可能是0101,在其他操作系统上可
能是0011。因此,需要有不同的“小翻译”。

机器指令是CPU能直接识别并执行的指令,以二进制编码的形式来表示。由于
机器指令与CPU紧密相关,所以,不同种类的CPU对应的机器指令也不同,而且往往
相差很大。

eg:如上图所示,把不同操作系统比喻成不同国家的人。

假如“java源程序”使用的是汉语编写的,德国人怎么听懂?韩国人怎么听懂?俄罗斯人怎么听懂?那就需要找翻译了。

首先是小编译器javac将“java源程序”编译成一个与平台无关的“java字节码的文件(.class)”,相当于英语吧。编译的过程其实是想让java虚拟机能够读懂所写的java源代码。但是德国人、韩国人、俄罗斯人还是听不懂,就需要进一步找一个翻译。

这一个翻译就是“java的虚拟机JVM”了。不同的操作系统有不同的java安装版本(因为在不同系统上安装jdk,不同的java安装版本,有不同的JVM)。JVM利用“不同操作系统下的字节码解释程序”将“java字节码的文件”可以解释成不同操作系统可以看懂的机器程序。
在这里插入图片描述
注:你把JVM虚拟机当作一个多操作系统翻译就好了,负责用不同操作系统的语言,和该操作系统交流。

4、运行java需要的两个小工具:javac.exe、java.exe

1)javac:编译器,进行java语法检查,同时将“java源文件”翻译成“字节码文件”,供JVM虚拟机读懂,字节码文件就是上述提到的二进制文件,不同操作系统对于同一句话的识别不太一样,因此,需要进一步对字节码文件,进行翻译,即需要JVM虚拟机进行进一步的解释。
2)java:调用JVM虚拟机,将javac翻译得到的字节码文件,进一步翻译成各个操作系统可以看懂的程序,进行程序的执行。

5、JVM工作原理

在这里插入图片描述

6、写java代码需要注意的地方

# 下面定义一个文件名为Hello.java的文件
public class Hello{
    public static void main(string[]args){
        System.out.println("Hello World")
    }
}

1)java区分大小写;
2)要有缩进;
3)public修饰的类名,应该与java文件名一致;
4){ }成对出现,写的时候,最好成对写;
5)语句结束用分号;
6)一行只写一句代码;
在这里插入图片描述

7、常见的DOS命令

1)切换盘符

f:

例子:
在这里插入图片描述
2)查看文件目录清单

dir
dir /s:显示盘符下的目录和所有子目录下的内容
dir /p:分屏显示。eg:dir  /s/p

例子:
在这里插入图片描述
3)改变目录结构

cd 目录名
cd ..:返回上一级目录
cd\:回退到盘符下

例子:
在这里插入图片描述
4)新建目录(以F盘为例)

md 目录名

例子:
在这里插入图片描述
5)创建文件(分为以下3步操作)

copy con 文件名.扩展名       # 后面必须要写扩展名
输入内容
ctrl + z结束操作

例子:
在这里插入图片描述
6)查看文件中的内容

type 文件名.扩展名

例子:
在这里插入图片描述
7)复制

copy 原文件 目标路径

例子:
在这里插入图片描述
8)文件重命名

ren 原文件名 新文件名

例子:
在这里插入图片描述
9)移动(也叫“剪切”)

move 原文件 目标路径

例子:
在这里插入图片描述
10)删除目录(空目录)

rd 目录名

删除某一个目录,一定先要切换到其上级目录下,再执行删除操作。
在这里插入图片描述
11)删除文件

del 文件名.扩展名

假如文件少,可以一个个删除
在这里插入图片描述
假如文件很多,使用通配符删除
在这里插入图片描述
12)清屏

cls

13)退出DOS窗口

exit

8、习题一

在这里插入图片描述
使用DOS命令,完成上述操作:

F:\>dir
 驱动器 F 中的卷没有标签。
 卷的序列号是 DA18-EBFA

 F:\ 的目录
2019/09/16  20:20    <DIR>          1 CentOS
               0 个文件              0 字节
               1 个目录 302,682,828,800 可用字节
F:\>md myFir                             # 创建一个目录
F:\>md myPic
F:\>md backup
F:\>copy con f:\myFir\a.txt             #  创建一个文件
abc
def^Z
已复制         1 个文件。
F:\>copy con f:\backup\a.txt
afd
sdf
^Z
已复制         1 个文件。
F:\>ren myFir File                   # 文件夹重命名(也可以给文件重命名)
F:\>copy f:\backup\a.txt f:\myPic    # 复制文件到指定文件夹
已复制         1 个文件。
F:\>del f:\backup\a.txt              # 删除某个文件
F:\>rd backup                        # 删除空文件夹

9、习题二

在这里插入图片描述
代码如下:

public class  Test{
	public static void main(String[] args) {
		System.out.println("     O  \t   O");
		System.out.println("      \\ \t  /");
		System.out.println("       \\ \t /");
		System.out.println("        \\   /");
		System.out.println("         \\ /");
		System.out.println("  ———————— ————————    ——————");
		System.out.println(" |                 |  |  --  |");
		System.out.println(" |     ————————    |  |      |");
		System.out.println(" | ()  | ^   ^ | ()|  |  --  |");
		System.out.println(" | ()  | o   o | ()|  |  --  |");
		System.out.println(" | ()  | |   | |   |  |  --  |");
		System.out.println(" | ()  |-  *  -| ()|  |  --  |");
		System.out.println(" | ()  || ___ || ()|  |  --  |");
		System.out.println("  ——————————————————    ——————");
	}
}

结果如下:
在这里插入图片描述

【版权声明】本文为华为云社区用户原创内容,未经允许不得转载,如需转载请自行联系原作者进行授权。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。