注释
被注释掉的文本不再显示在运行页面
单行注释
表示方法: //
注释一行文字
多行注释
表示方法: /**/
注释多行文字
文档注释
表示方法:/** */
关键字
Java的组成结构都少不了标识符、关键字的参与
标识符
标识符使用时候注意事项
数据类型
Java属于强类型语言,要求变量使用严格符合规定,所有的变量都必须先定义后才能使用
八大数据基本类型
public class demo01 {
public static void main(String[] args) {
//八大数据基本数据类型
//整数
int num1 = 10; //最常用
byte num2 = 20;
short num3 = 30;
long num4 = 30L;//Long类型要在数字后面加L
//浮点数
float num5 = 2.6F; //float类型要在数字后面加F
double num6 = 30.14151233;
//字符
char name = '过';
//字符串String 不是关键字是一个类
String name1 = "黄冉";
//布尔值
boolean flag = true;
}
}
科普小知识——什么是字节
-
位(bit):是计算机内部数据储存的最小单位,11001100是一个八位二进制数
-
字节(byte):是计算机中数据处理的基本单位,习惯上用大写B来表示
-
1B(字节)=8bit(位)
-
字符:是指计算机中使用的字母、数字、字、符号
单位换算
数据类型转化
-
Java是强类型语言,所以运算的的时候要用到类型转化。
-
低————————————————————高
byte、short、char、int、long、float、double
-
类型转换分为强制类型转换和自动类型转换。
-
强制转换:高到低 自动类型转换:低到高
-
转换时注意的问题:
public class demo03 {
public static void main(String[] args) {
int i = 128;
double b = i;
System.out.println(i);
System.out.println(b);//128.0
/*
* 注意点:
* 1.不能对布尔值进行转化
* 2.不能把对象类型转换为不相干的类型
* 3.在高容量转为低容量的时候,强制转换
* 4.转换的时候可能存在内存溢出,或者精度问题
* */
}
}
public class demo04 {
public static void main(String[] args) {
//操作比较大的数字,注意溢出为问题
//JDK7 新特性,数字之间可以用下划线分割
int money = 10_0000_0000;
int years = 20;
int total1 = money * years;
System.out.println(total1);//-1474836480,计算时溢出了
long total2 = money * years;//-1474836480,转换之前就已经存在问题
//改正方法:
long total3 = money * ((long)years);//先把一个数转换为long
System.out.println(total3);//20000000000
}
}
public class demo05 {
public static void main(String[] args) {
//定义变量
//int a,b,c;
//int a=1,b=3,c=3; //不建议,注重程序的可读性
String name = "huangran";
char x = 'X';
double pi = 3.14;
}
}
变量
-
变量的定义
public class demo05 { public static void main(String[] args) { //定义变量 //int a,b,c; // int a=1,b=3,c=3; //不建议,注重程序的可读性 String name = "huangran"; char x = 'X'; double pi = 3.14; } }
-
变量的作用域
类变量 : 使用static修饰符修饰
实例变量 : 根据 变量类型 变量名字 = new 变量类型(); 可以不初始化 ,会有默认的初始值 调用的时候要用到
局部变量 : 需要初始化
public class demo06 { //属性=变量 //类变量 前面加了static的修饰 static double salary = 2500; //实例变量:从属于对象;如果不进行初始化,就会是这个类型的默认值 布尔值:默认是false 除了基本类型,其余的默认值是null String name; int age; public static void main(String[] args) { //局部变量:必须声明和初始化值 int i = 10; System.out.println(i); //10 //实例变量 格式:变量类型 变量名字 = new demo06(); demo06 demo06 = new demo06(); System.out.println(demo06.age);//0 System.out.println(demo06.name);//null //类变量 System.out.println(salary);//2500.0 } //其他方法 public void add(){} }
-
变量的注意事项
· 每个变量都有类型,类型可以是基本类型,也可以是引用类型
· 变量名必须是合法的标识符
· 变量声明是一条完整的语句,必须以分号结束
-
常量
-
初始化后不再改变值
-
final 常量名 = 值
-
常量名一般使用大写
运算符
算术运算符
- +、-、*、/、%、++、–
赋值运算符
- =
关系运算符
- “>”,<“,”>=“,”<=“,”==“,”!=",“instanceof”
位运算符
- &,|,~,^,>>,<<,>>>
条件运算符
- 判断式子 ? 输出1: 输出2
逻辑运算符
- &&、||、! (与或非)
public class demo07 {
public static void main(String[] args) {
/*
A = 0011 1100;
B = 0000 1101;
--------------------
A&B = 0000 1100;
A|B = 0011 1101;
A^B = 0011 0001;
~B = 1111 0010;
2*8 = 16 ==> 2*2*2*2
问题:寻找一个计算 2*8 最快的方法(效率最高)
<< *2 //左移*2
>> /2 //右移/2
0000 0000 0
0000 0001 1
0000 0010 2
0000 0011 3
0000 0100 4
0000 1000 8
0001 0000 16
都是*2的关系
*/
System.out.println(2<<3); //16
}
}
扩展赋值运算符
- +=、-=、*=、/=
包机制
- Java 提供了包机制,用于区别类名的命名空间。
- 包语句语法:package [pkg1,pkg2……];
- 一般用公司域名的倒置作为包名。 eg: com.baidu.www
- 导入包的语句: import package[pkg1,pkg2……]
JavaDoc命令
- javadoc命令是用来生成自己API文档的(index.html中的)。详细点解释:JavaDoc是一种将注解生成HTML文档的技术,生成的HTML文档类似于Java的API,易读清晰明了。
- 参数信息
@author 作者名
@version 版本号
@since 指明最早使用的jdk版本
@param 参数名
@return 返回值情况
@throws 异常抛出情况
-
用命令行生成doc文件 :
javadoc -encoding UTF-8 -charset UTF-8 文件名字.java
-
在IDEA中实现生成doc文件
步骤:
(1) 点击IDEA中的Tools栏,找到 生成JavaDoc 的选项
(2) 进行如下的配置