一、javac命令和java命令做什么事情?
javac:负责编译,当执行javac时,会启动java的编译程序,对指定扩展名的.java文件进行编译,生成了jvm可以识别的字节码文件,也就是class文件(java的运行程序)
java:负责运行的部分,会启动jvm加载运行时所需要的类库,并对class文件进行执行,一个文件要被执行,必须要有一个执行的起始点,这就是main函数
二、入口函数:
2.1权限修饰符
public:公开的,权限最大,任何情况下只能自己调用
private:私有的,权限最小,只能自己访问
protected:受保护的
2.2主函数为什么要这样写
class Demo{
public static void main(String[] args){ //这个是固定写法
System.out.println("hello world");
}
}
public:main主方法是由jvm调用的,jvm实际上也是一个程序,为了保证jvm能在任何情况下来调用主函数
static修饰:如果没有static修饰,就需要用到对象来调用主 方法,jvm如果创建对象的话不知道该创建什么样的对象,所以为了避免麻烦,就将方法定义为静态的,可以直接类名调用
void:主函数是由jvm调用的,因此返回值就是给jvm使用,jvm接收返回值没有意义,因此不需要返回值
main:不是关键字,main是已经被约定俗成的入口函数方法名
args:用来接收程序在运行时传递进来的参数
三、标识符
1.什么叫做自定义标识符
在java中,有些自定义的名字就叫做自定义标识符
2.标识符的命名规则
a)标识符的元素组成:字母、数字、下划线和美元符号
b)不能以数字开头
c)严格区分大小写
d)不能以关键字、保留字命名
e)标识符名称没有长短限制
f)标识符命名要有意义
关键字:其实就是某种语言赋予了特殊含义的单词。
保留字:其实就是还没有赋予特殊含义,但是准备日后要使用过的单词。
3.标识符命名规范
a)类名和接口名单词的首字母大写,其他小写
b)变量名和方法名的命名第一单词首字母小写,多个单词间使用驼峰标识
c)包名全部单词小写
d)常量全部单词大写,单词与单词之间用下划线隔开,比如:PI_2
四、注释
java中有三种注释:
1.单行注释://
2.多行注释:/* 注释的内容*/
3.文档注释:/** 注释的内容*/
注释注意点:
多行注释中不能嵌套使用,单行注释可以
注释的作用:
1.解释说明程序
2.调试程序
五、数据类型
java中数据类型主要分为两种:
1.基本数据类型:byte、short、int、long、float、double、char、boolean
2.引用数据类型:数组、类、接口
数字类型:int (整型)float (单精度浮点型)double(双精度浮点型)
字符型常量:char 用单引号引起来
字符串常量:String 用双引号引起来
布尔值类型:boolean true / false
long: 长整型
级别从低到高为:byte,char,short(这三个平级)-->int-->float-->long-->double
六、 运算符号
1)、算术运算符。
+ - * / %
%:任何整数模2不是0就是1,所以只要改变被模数就可以实现开关运算。 +:连接符。 ++,--
2)、赋值运算符。
= += -= *= /= %=
3)、比较运算符。
特点:该运算符的特点是:运算完的结果,要么是true,要么是false。
4)、逻辑运算符。
& | ^ ! && ||
逻辑运算符除了 ! 外都是用于连接两个boolean类型表达式。
&: 只有两边都为true结果是true。否则就是false。
|:只要两边都为false结果是false,否则就是true
^:异或:和或有点不一样。
两边结果一样,就为false。
两边结果不一样,就为true.
& 和 &&区别:
& :无论左边结果是什么,右边都参与运算。
&&:短路与,如果左边为false,那么右边不参数与运算。
| 和|| 区别:|:两边都运算。
||:短路或,如果左边为true,那么右边不参与运算。
数据类型中需要注意的点:
1.凡是short、byte、char定义的变量,做运算时,自动变为int类型
2.级别从低到高:short、byte、char(三者平级)--->int --->float--->long--->double