ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

寒假集训第一次课程思考

2021-01-25 17:34:22  阅读:188  来源: 互联网

标签:Java JDK 课程 CMD classpath cd 寒假 path 集训


寒假集训第一次课程思考


前言

由于在听说寒假集训队要学一门新的语言“Java“”后,就第一时间开始自学Java了,所以在1月25日集训开始之前,就已经完成了软件的下载,并且配置好了环境。由于是自学,看视频看书并没有得到较好的引导,在1月24日看到学长的博客之前,一直是CMD窗口调试的。后来,得知原来有IDEA这样的集成开发环境,并且白嫖使用以后,真香

由于我一开始的学习全部是由CMD命令窗口进行调试的,对环境配置的相关影响,可能会有一些不一样的看法。

也许会有一些和集训无关的朋友在论坛偶然点进这篇博客,如果对Java的环境配置等方面存在疑虑,也可以参考一下文末的“环境配置”板块,虽然不一定对,但是可以拿来参考。并且建议阅读以下链接的博客,里面有详细的Java前置知识介绍。

这里附上学长博客的链接——【软件创新实验室2021年寒假集训】Java技术培训——Java前置知识学习


关于自己想干什么的思考

在填写志愿的时候,首先跳出来的是“我高中物理不能白选了”“将来要能赚钱”和“我要感兴趣并且能坚持下去”三个念头,再结合我的分数,我决定学习计算机,希望将来可以开发一款手游,从事后端开发。写这一段是因为,我觉得不管学习什么东西,目标都很重要。

将来的规划

学习规划

由于我的专业是软件工程(中外合作),所以在出国方面会占一定的优势,所以我希望将来可以读研,在国外更好的学校进行深造,选择国外是以为同样的实力(分数),如果出国的话机会更多压力更小,有利于深层次的学习。

职业规划

我对未来职业的规划,首先由于自己家里条件还算可以,能支持我创业,所以我还是希望自己可以创业。创业对自己本身能力的要求可能会更高,所以我希望可以在自己感兴趣,并且打算专精的领域深入学习的同时,可以广泛涉猎其他的领域,拓宽视野。


感兴趣的领域

刚刚加入社团的时候,我对手游开发这一个目标还没有明确的认识,经过招新的学长的科普,了解到手游开发最基本可以分为前端和后端,而前端开发深入学习之后还是会涉及后端开发,所以我最感兴趣的领域是后端开发,同时也希望可以学习一些最基本的前端知识。


关于自己感兴趣的语言

关于Java

Java是一门面向对象的语言,擅长服务端的开发,所以我希望可以深入地学习Java语言。

关于Kotlin

我对这一门语言,之前并没有相关的认识,但是因为Kotlin是一种安卓官方支持的开发语言,能兼容Java,并且可以在没有JVM的环境下执行,所以我认为对于一个有志于开发手游的人来说,这门语言有必要学习。


对“语言的本质是约束”的思考

同一个目标可以由不同的语言实现,由于使用的编程范式不同,所以限制也不同,不同的语言对该目标的达成会有不同的限制,就算算法一致,语言的限制也会使得"表达"不同。


“环境配置”

首先,Java的开发基于JDK,JDK包含了Java的运行环境JRE和一些基础类库等,而JDK又包含了JVM以及核心类库。其中的JVM即Java虚拟机是Java跨平台性的保障。
在我们安装好Java的JDK以后,我们需要找到我们安装的地址目录。
在一开始的学习中,我并没有使用IDEA这样的集成开发环境,而是直接CMD命令提示符进行调试使用。
在我们刚安装完成时,按⌘(开始键)加R键,启动一个运行窗口,输入CMD(不区分大小写),键入回车,会打开一个小黑窗口也就是命令提示符。
由于使用IDEA会很方便,所以一般不会有人使用命令提示符进行操作,所以网上关于命令提示符的一些使用方法介绍较为零散,所以我在此对进行以下介绍。

指令功能
cd . (cd空格加一个点号)察看当前目录
cd . .(cd空格加两个连续点号)返回上一级目录
D: (不区分大小写)跳转目录到D盘
D:xxxx\xxxx进入详细目录地址
cd 文件夹名(cd空格加文件夹名,输入开头点击Tab键自动补齐)跳转目录到文件夹
dir查看该目录内文件所占内存、名称、日期等,文件夹显示DIR
cls清屏
exit退出

顺带介绍一下IDEA里面常用的快捷键

快捷键功能
Ctrl+空格给出提示
Ctrl+Y删除光标所在行
Ctrl+D复制当前行,并插入光标位置下
Ctrl+Alt+L格式化代码
Ctrl+/对该行进行单行注释,再按取消
Ctrl+Shift+/对选中块进行多行注释,再按取消
Alt+Enter自动修正代码
X.fori自动生成一个执行X次的for循环,以 i 计数

我们这时直接输入Java会发现提示“‘Java’ 不是内部或外部文件 也不是可执行命令”,这是为什么呢,因为系统没有找到Java.exe这个文件,也就执行不了(至少按照我的安装步骤没能成功运行,据说是因为小版本不同)。
但是,我们cd到JDK的bin文件夹目录下,再进行同样的操作,会发现显示出一长串内容(很多行,版本不同显示的内容也不同),这时候Java.exe,成功运行了,这是为什么呢?

因为系统寻找程序、文件,是有一定的路径规律的。
下面对相关内容详细介绍。

设置JAVA_HOME

总体来说,JAVA_HOME就是给JDK安一个家,让系统直到JDK“住在哪里”,用于定义“path”和“classpath”。由于随着发展,JDK可能需要更新升级,这时候我们只需要改动JAVA_HOME所指定的“住址”就好了,不需要对“path”和“classpath”等进行反复修改。此处将其设置为JDK的安装路径,注意,详细到bin文件夹的上一级即可。

设置path

“path”就是系统寻找exe文件的路径。我们右键此电脑(又叫计算机或我的电脑),点击属性,点击高级系统设置,选中高级,点击环境变量,找到系统环境变量里面的“path”,这里需要注意的是,win系统是一个多用户的系统,为了方便使用,我们直接设置系统环境变量,新建输入%JAVA_HOME%\bin,这里的%JAVA_HOME%代表了之前设置过的路径。
此时再打开cmd窗口,输入java,就可以在任意目录自动运行java.exe 了。

设置classpath

有关“classpath”,对于没有使用过cmd命令提示符,而是直接使用集成开发环境的大佬来说可能并不是那么熟悉,也并不知道这个是干什么的。

我们知道“path”是搜索路径,是相对.exe来说的,同理“classpath”是相对.class文件的搜索路径,使用IDEA的话可以忽略这一步的操作。

但是我们知道,Java之后还是有一次大版本更新的,就是Java9的更新,Java9新增了一个功能叫Jshell,方便我们使用CMD命令提示符进行一些轻量代码的便利执行。

由于我们实验室包括许多公司都推荐使用Java8的JDK,所以一般来说是没有这个功能的,此时我们就需要配置好相关的路径,方便我们自己通过CMD窗口模拟Jshell的功能。

总体来说,“classpath”作用是.class类的搜索路径,要使用已经编写好的类,前提当然是能够找到它们了,JVM就是通过CLASSPTH来寻找类的。我们需要把jdk安装目录下的lib子目录中的dt.jar和tools.jar设置到CLASSPATH中,当然,当前目录“.”也必须加入到该变量中。

在我们需要模拟Jshell的功能时,打开一个记事本,修改后缀为.java,键入代码保存,在上方目录出键入cmd回车,输入javac 类名.java回车,再输入java 类名 回车,就可以运行代码了,看到这里其实还没有发现classpath的真正作用,我们关闭全部窗口,直接启动CMD窗口,会发现目前所处的目录是C:\User\用户名,键入dir回车,会发现并没有.class为后缀的文件,但是我们通过java 类名 运行一下,会发现可以运行,也就是电脑找得到这个类文件。通过设置“classpath”,我们可以在省去打开IDEA建立project再建立module和package等步骤的基础上,直接运行.class文件,虽然性能还是远不如Jshell但是,相比每一次都要调整路径来说,我觉得是一种极大地简化。
反正就是有用,但是没卵用



总结

以上就是寒假集训第一次课程的思考,和自己一些七七八八的想法。

标签:Java,JDK,课程,CMD,classpath,cd,寒假,path,集训
来源: https://blog.csdn.net/weixin_52292970/article/details/113107225

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有