🍻 笔者于2016年入Java,先后从事开发和教育行业,现就职于某供应链公司担任后端开发工程师。
📚 Java从1995年诞生到如今,体系成熟,运行稳定,成为大型后端系统的首选语言,也是各培训机构宠儿,笔者结合近几年行业的发展和变化以及个人经历总结一下适合于现在的Java学习路线。
名词解释
- 源文件:就是我们程序员编写的以.java结尾的文件,这个文件是提供给程序员使用的
- 字节码文件:让虚拟机运行的文件,文件内容是计算机可以识别的,人类看不懂
- 编译:将源文件编排翻译成字节码文件的操作和过程
- 运行:让计算机,其实是JVM运行字节码文件的操作和过程,也就是俗称的【跑程序】,没事跑一下
开发步骤
- 创建一个后缀名为.java的文件,【文件名最好是英文】
- 编写Java程序,然后保存
- 通过javac命令对该java文件进行编译
- 通过java命令运行编译后的class文件
为确保连贯性,开发中可能出现的问题,汇总在【常见问题】中,如果出现的问题没有说明,留言告诉我!
创建源文件
实际上是可以在任意目录下创建Java源文件,进行Java的开发,但是为了方便维护,我们建议事先创建好一个目录专门用来存储代码,方便我们后期寻找,目录看起来也比较清晰规整!!!
所以我这里将代码存储在【D:\01-study_code\javase】
中,因为这又是在10月16日写的这篇文章,内容为helloworld,所以再创建一个子目录【day10-26-helloworld】
,这个目录大家可以随意创建,目的在于方便维护,清晰明了,怎么舒服怎么来就行!!!
注意:
这个文件后缀名【也叫文件扩展名】必须是java,有部分电脑可能会隐藏文件的扩展名,可以通过点击【查看】-》【勾选文件扩展名】的方式打开
win7参考如下
编写代码
我们暂时通过计算机自带的记事本编写,后边我们会使用专门的编辑器开发Java程序。代码的含义是在程序运行时输出 【我的第一个Java程序,Hello World,启动成功!!!】
不要用word、execl打开的奇怪操作,这不是一回事
public class HelloWorld{
public static void main(String[] args) {
System.out.println("我的第一个Java程序,Hello World,启动成功!!!");
}
}
代码解释
public class HelloWorld:创建一个类,可以浅显理解一个Java文件就是一个类
class:表示这是一个类,Java程序都是以类为单位
HelloWorld:是类名,如果类使用了 public 修饰,则类名必须和文件名一致
public static void main:固定写法,是一个方法,是整个Java程序的唯一入口
String[] args:是main方法的参数,暂时理解为固定写法,可以忽略不管
public:修饰符,在面向对象中会详细介绍
System.out.println(“”):""中的内容会在程序运行时输出到控制台中
编译文件
有了java源文件,通过javac命令编译为字节码文件,直接在文件所在目录的地址栏上输入 cmd,即可打开命令窗口,运行完之后在同级目录下会出现一个同名的字节码文件
即源文件名为HelloWorld.java,字节码文件名为HelloWorld.class
javac HelloWorld.java
运行程序
最后通过java命令运行编译好的字节码文件,这时文件就不需要带后缀名了
java HelloWorld
常见问题
public的作用
当文件名为HelloWorld,类名为Test时,并且类使用了public修饰
public class Test{
public static void main(String[] args) {
System.out.println("我的第一个Java程序,Hello World,启动成功!!!");
}
}
会出现以下错误
如果希望类和文件名不一致并且可以正常运行,则需要将public删除掉
class Test{
public static void main(String[] args) {
System.out.println("我的第一个Java程序,Hello World,启动成功!!!");
}
}
这是编译出来的字节码文件名和类名一致,都是Test
运行的话使用 【java Test】,运行字节码文件
这个特点知道就行,一般我们开发时都会保证类被public修饰,类名和文件名一致
找不到文件
这种情况一般是:
- 进错目录,要编译的文件不在这个目录下
- 文件名写错了
- 文件后缀名问题
我这案例就是单词写错了,HelloWorld写错成HelloWord
编译失败
这种情况编译失败,一般是:
- 符号写错,编码统一使用英文符号
- 单词写错,比如main写成mian
对于初学者来说,细心一点就好,这里我就是将英文的;写成了中文的;
乱码
这里的中文的输出和理想的不一致,因为写程序时使用的是UTF-8码表,运行时的控制台使用的是 ANSI码表,所以我们要修改一致,要么修改文件,要么修改控制台
以修改文件为例,点击另存为,选择对应的ANSI码表即可
总结:
学习编程最容易犯的错是语法错误。Java要求你必须按照语法规则编写代码。 如果你的程序违反了语法规则,例如:忘记了分号、大括号、引号,或者拼 错了单词,java编译器都会报语法错误。尝试着去看懂编译器会报告的错误信息
注释
注释是指解释字句的文字,注释在程序运行时不会被运行
意义
- 可以帮助我们梳理编码的思路,在一些复杂功能不知道怎么写的时候,可以先写注释描述一下自己准备做的事情
- 记录代码含义,以免因突发灵感,或者时间过长而导致忘记写的是什么
- 注释可以提高了代码的阅读性
- 注释也是一个程序员的自我修养,良好编码习惯的体现,部分公司将注释作为衡量代码质量的重要指标
分类
单行注释:
// 单行注释,一次注释一行
多行注释:
/*
多行注释:可以注释连续的多行
可以连续说明
*/
文档注释:
/**
Java特有的注释,可以通过javadoc命令生成说明文档
@author 添甄
@version V1.0.0
文档注释,
Java特有注释
记录作者,时间,版本等信息
可以通过javadoc命令生成说明文档
*/
具体实现
/**
@author 添甄
@version V1.0.0
我是文档注释
*/
public class CommentTest {
/*
我是多行注释
main方法,是Java程序的唯一入口
main方法是接触到的第一个方法
*/
public static void main(String[] args) {
// 我是单行注释,输出提示内容
System.out.println("Java注释!");
}
}
运行结果
发现注释的内容并没有任何体现,注释只存在于java文件中,javac编译的class文件中并不包含注释信息
文档注释
通过以下命令即可实现文档创建
javadoc -d 指定目录 -version -author 源文件
在指定的目录下,可以查看文档结构
双击【index.html】文件可以在浏览器中打开文档
注释非常重要,但是很多程序员在开发的时候都不写,导致版本更新,需求更改或者人员变动时拿到没有注释的代码一头雾水,养成良好的习惯吧,我们才刚刚开始!
常用工具
本章我们使用记事本这比较传统的工具完成开发,可见每一个单词都需要写,没有任何提示,操作相当复杂,开发效率低下,工欲善其事必先利其器,我们接下来会使用专业的编辑器完成开发,这里我推荐
文本编辑工具:
其实就是一种记事本,功能比较简单,非常轻量级,快速的打开一个文档
- Sublime Text
- EditPlus
- Notepad++
集成编辑器: - IDEA
- Eclipse
- MyEclipse
目前我强烈建议使用 Sublime Text 和 IDEA,其实就是一个工具,不要花太多的时间纠结工具,用这两个就对了,相关链接已上传网盘!!!
网盘地址:https://pan.baidu.com/s/1ruZFvTmaN01Eyc0nXFeCgA#list/path=%2F
提取码:gy26
练习
- 独立编写HelloJava程序,并配上必要的注释
- 将个人信息打印在控制台上,包含(姓名、性别、年龄等)
面试题
- Java程序怎么运行
- Java的常用命令
- Java中的注释有哪些,有什么作用
- 如何解释Java是一门编译性解释型语言
收藏等于学会,确定要错过吗!