Java基础

如何运行Java程序

Java源码本质上是一个文本文件,我们需要先用javac把Hello.java编译成字节码文件Hello.class,然后,用java命令执行这个字节码文件:
在这里插入图片描述因此,可执行文件javac是编译器,而可执行文件java就是虚拟机。

第一步,在保存Hello.java的目录下执行命令javac Hello.java:

$ javac Hello.java

如果源代码无误,上述命令不会有任何输出,而当前目录下会产生一个Hello.class文件:

$ ls
Hello.class Hello.java

第二步,执行Hello.class,使用命令java Hello:

$ java Hello
Hello, world!

注意:给虚拟机传递的参数Hello是我们定义的类名,虚拟机自动查找对应的class文件并执行。

直接运行java Hello.java也是可以的:

$ java Hello.java
Hello, world!

这是Java 11新增的一个功能,它可以直接运行一个单文件源码!

需要注意的是,在实际项目中,单个不依赖第三方库的Java源码是非常罕见的,所以,绝大多数情况下,我们无法直接运行一个Java源码文件,原因是它需要依赖其他的库。

小结

一个Java源码只能定义一个public类型的class,并且class名称和文件名要完全一致;

使用javac可以将.java源码编译成.class字节码;

使用java可以运行一个已编译的Java程序,参数是类名。

Java程序基本结构

Java是面向对象的语言,一个程序的基本单位就是class
不写public,也能正确编译,但是这个类将无法从命令行执行。
在这里插入图片描述byte恰好就是一个字节,而long和double需要8个字节。

运算优先级

在Java的计算表达式中,运算优先级从高到低依次是:

()
! ~ ++ --
* / %
+ -
<< >> >>>
&
|
+= -= *= /=

关系运算符的优先级从高到低依次是:

!
>,>=,<,<=
==,!=
&&
||

常见的转义字符包括:

\" 表示字符"
\' 表示字符'
\\ 表示字符\
\n 表示换行符
\r 表示回车符
\t 表示Tab
\u#### 表示一个Unicode编码的字符

从Java 13开始,字符串可以用"“”…“”“表示多行字符串(Text Blocks)了。举个例子:
public class Main {
public static void main(String[] args) {
String s = “””
SELECT * FROM
users
WHERE id > 100
ORDER BY name DESC
“”";
System.out.println(s);
}
}

Java的字符串除了是一个引用类型外,还有个重要特点,就是字符串不可变。
在这里插入图片描述空值null和空字符串"",空字符串是一个有效的字符串对象,它不等于null。
基本类型的变量是“持有”某个数值,引用类型的变量是“指向”某个对象;

引用类型的变量可以是空值null;

在这里插入图片描述使用switch时,注意case语句并没有花括号{},而且,case语句具有“穿透性”,漏写break将导致意想不到的结果
switch语句还可以匹配字符串。字符串匹配时,是比较“内容相等”。

break语句可以跳出当前循环;

break语句通常配合if,在满足条件时提前结束整个循环;

break语句总是跳出最近的一层循环;

continue语句可以提前结束本次循环;

continue语句通常配合if,在满足条件时提前结束本次循环。

在for (int n : ns)循环中,变量n直接拿到ns数组的元素,而不是索引。

遍历数组可以使用for循环,for循环可以访问数组索引,for each循环直接迭代每个数组元素,但无法获取索引;

使用Arrays.toString()可以快速获取数组内容。

  • 14
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值