1.编写代码
public class Hello{
public static void main(String[] args){
System.out.println("Hello World!");
}
}
2.编译 javac java文件,会生成一个class文件
3.运行class文件,java class文件
Java程序运行机制
-
编译型:新增修改都需要重新编译,成本较高
-
解释性:用到那编译到哪,方便新增,但性能可能有损耗
java程序运行机制:
源文件--》Java编译器预编译--》字节码--》类装载器--》字节码校验器--》解释器--》面向操作系统平台的软件
IDEA
IDE:集成开发环境,用于提供程序开发环境的应用程序,一般包括代码编辑器、编译器、调试器和图形用户界面等工具
快捷键:
1. 快速生成main方法:psvm
2. 快速生成输出语句:sout
Java基础语法
注释
-
单行注释 //
-
多行注释/* */
-
JavaDoc:文档注释 /** */
标识符
-
Java所有的组成部分都需要名字。类名、变量名以及方法名都被称为标识符
-
所有的标识符都应该以字母或者美元符或者下滑线靠头
-
首字符之后可以是字母、下划线、美元符、数字的任意组合
-
不能使用关键字作为变量名或者方法名
-
标识符是大小写敏感的
-
合法标识符举例:age,$123,_laofan
-
非法标识符举例:1abc,-sm,#C
-
可以使用中文命名
数据类型
-
强类型语言
-
要求变量的使用要严格符合规定,所有变量都必须先定义后才能使用
-
安全性高
-
速度慢
-
-
弱类型语言反之
-
Java的数据类型分为两大类
-
基本类型
-
数值类型
-
整数类型
-
byte一个字节:-128~127
-
short两个字节:-32768~32767
-
int四个字节:-2^31~2^31-1
-
long八个字节:
-
-
浮点型
-
float占四个字节
-
double占八个字节
-
-
字符类型char占两个字节 String不是关键字,是类
-
-
boolean类型:占1位值只有true和false
-
-
引用类型
-
类
-
接口
-
数组
-
-
-
什么是字节
-
位(bit):是计算机内数据储存的最小单元,为一个二进制位
-
字节(byte):是计算机中数据处理的基本单位,习惯上用大写的B来表示,1B=8bit
-
字符:是指计算机中使用的字母、数字、字和符号
-
1024B=1KB
-
1024KB=1M
-
1024M=1G
-
-
整数拓展:
-
二进制0b
-
十进制
-
八进制0
-
十六进制0x
-
0b10=2;
010=8;
0x10=16;
-
浮点数拓展
-
有限的 离散的 舍入误差 大约 接近但不等于
-
最好完全避免使用浮点数去比较
-
BigDecimal:数学工具类
-
-
字符拓展
-
所有的字符本质还是数字
-
编码:Unicode 0~65535 \u0063 is A
-
类型转换
-
强制转换 (类型)变量名 高-》低
-
自动转换 低-》高
int i=127;
byte j=(byte)i;
注意点
-
不能对布尔值进行转换
-
不能把对象类型转换为不相干类型
-
在把高容量转换到低容量的时候,强制转换
-
转换的时候可能存在内存溢出,或者精度问题
操作比较大的数的时候,注意溢出问题
-
JDK7新特性,数字之间可以用下划线分割
变量
-
变量:可以变化的量
-
Java是一种强类型语言,每个变量都必须声明类型
-
Java变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域。
type varName [=value][{,varName[=value]}];
-
注意事项:
-
每个变量都有类型,类型可以是基本类型,也可以是引用类型
-
变量名必须是合法的标识符
-
变量声明是一条完整的语句,因此每一个声明都必须以分号结束
-
类变量:前加static关键字
实例变量:从属于对象,如果不自行初始化,会自动给一个初始值,原因是类初始化时已经将该变量在内存上分配了空间,boolean值默认为false,基本类型为0,引用类型都是null
局部变量:必须初始化才能使用,且跟随类的结束而释放内存
常量
-
常量:初始化后不能再改变,不会变动的值
-
一种特殊的变量,值被设定后,在程序的运行过程中不允许改变
final double PI=3.14159265;
-
常量名一般使用大写字符
变量的命名规范
-
所有的变量、方法、类名:见名知意
-
类成员、局部变量:驼峰命名
-
常量:大写字母与下划线
-
类、方法名:首字母大写和驼峰原则
运算符
-
关系运算符:instanceof(它的作用是测试它左边的对象是否是它右边的类的实例,返回 boolean 的数据类型。)
-
位运算符:>>>(无符号右移。无论整数还是负数,高位统统补0)
该处只记录C#中未学到的运算符
包机制
包的本质就是一个文件夹
-
为了更好的组织类,Java提供了包机制,用于区别类型的命名空间
-
包语句的语法格式为:
package pkg1[.pkg2[.pkg3……]];
-
一般利用公司域名倒置作为包名;
-
为了能够使用某一个包的成员,我们需要在Java程序中明确导入该包。使用“import”语句即可完成此功能
import package1[.package2……].(classname|*);
通配符--*
import src.*;//导入该路径下的所有的类
JavaDoc
-
使用cmd命令
javadoc -encoding UTF-8 -charse UTF-8 Doc.java