一、常见的编程语言种类:
- 编译型语言
- 解释型语言
Java
是一门编译型
语言,java代码必须经过先编译(将代码转成机器码),再运行
二、了解Java
- Java的最小单位是
类
,不可再分 - 用关键字
class
修饰的 名字,称为 类 - 类中的内容 用{…} 进行包裹
- java的类,如果想要被执行,需要提供一个主入口,主入口写法格式固定
public static void main(String[] args){
}
- 在 主入口 方法中,输出一个 hello world ,输出的内容必须双引号引起来
System.out.println("hello world");
- java 的源代码 必须 写在 扩展名 为 .java 的文件中
三、编写Java代码,输出hello world
class Test{
public static void main(String[] args){
System.out.println("hello world");
}
}
- 注意:不要忘记保存,文件名暂时可以随便起,但一定要是.java类型的。
- 补充一个小知识点,电脑默认文件后缀名隐藏,身为学习变成的小伙伴一定要把后缀名显示!
四、Javac编译,java执行
javac Test.java
java Test
- javac 负责编译源代码(软件工程师编写的代码、称为源代码)。编译的产物是字节码
- java 负责运行 编译后的 字节码文件
Win + R
输入cmd
进入Doc操作窗口- 通过
cd
切换至Java源文件所在位置(路径) - 然后
javac 文件名.java
文件名即刚才你所保存时,文件的名字 - 没有报错即编译成功!
- 最后
java 类名
类名即刚刚敲代码时第一行class
后的单词 - 成功输出
hello world
- Ps:
javac -d .\out Test.java
编译的字节码文件存放在out目录下
五、注释
注释的作用:方便自己更加有条理的编写代码,以及后期自己或者他人的维护。
注释的特点:编译时JVM不会编译注释部分
- 单行注释
class Test{// 这是一个类,类名为 Test
// 这是程序的主入口 main方法
public static void main(String[] args){//main 方法的开始
// 这是一条输出语句 hello world
System.out.println("hello world");
}// main 方法的结束
// 类的结束标志,注意{ } 一定时成对出现的
}
- 单行注释 作用范围,从
//
开始到这一行的末尾 - 单行注释 的书写位置,一般写在语句的上面、下面、后面
- 多行注释
class Test{/* 这是一个类,类名为 Test */
/*
这是程序的主入口
main方法
*/
public static void main(String[] args){//main 方法的开始
/* 这是一条输出语句 hello world */
System.out.println("hello world");
}/* main 方法的结束 */
}/* 类的结束标志,注意{ } 一定时成对出现的 */
- 多行注释 的作用范围,
/*
开始*/
结束,中间部分全属于多行注释范围。 - 书写位置与单行注释相同, 很多位置都可以写,并无严格要求。
- 文档注释
/**
类的解释说明-文档注释
@author ZTB00
@version 1.0
@see <a href="https://www.baidu.com">百度</a>
*/
class Test{// 这是一个类,类名为 Test
/**
这是Test的主入口方法
@param args 主入口参数
*/
public static void main(String[] args){
System.out.println("hello world");
}
}
- 文档注释的作用:后期实战写完可以生成API文档
javadoc -d .\doc -encoding utf-8 -author Test.java
- 文档注释写在类上、方法上、属性上
六、添加注释后的编译
- 发现竟然报错了,并且显示了一些乱七八糟的鸟语(不认识)。
- 上面说的,难道是假的吗?“注释不参与编译”。
- 原因分析:
- 注意观察,错误显示“编码GBK的不可映射字符”
- 很显然,编码出现了问题!
- 源文件编码采用UTF-8 ,编码是采用GBK 自然报错。(不同的编码,对应内容不同)
- 解决办法:
- 修改其中一项的编码为另一项,即统一编码。(不推荐)
- 编译时直接 告诉计算机我们想要的编码。
javac -encoding utf-8 912sd.java