Java基础
1.注释、标识符、关键字
注释
介绍:
用于注解说明解释程序的文字就是注释,注释提高了代码的阅读性(可读性);注释是一个程序员必须要具有的良好编程习惯。将自己的思想通过注释先整理出来,再用代码去体现,注释可以注释内容,被注释的内容不执行,所以我们可以利用注释手段对进行分段代码测试
类型:
单行注释 // 格式://注释文字
多行注释 /* */ 格式:/*注释的文字*/
文档注释 /** */ 格式 /** */ 还可以添加一些额外的信息 作者 时间 版本参数 返回值类型
标识符
标识符可以简单的理解成一个名字
在java中,我们需要给代码中的很多元素起名,包括类名、方法名、字段名、变量名等。给对应元素起的名称就被称为标识符,一个正确的标识符要遵循以下规则:
1.标识符可以由字母、数字、下划线(_)、美元符($)组成,但不能包含@、%、空格等其它特殊字符
2.不能以数字开头。比如123name就是不合法
3.标识符严格区分大小写。小写的a和大写的A就是两个不同的标识符
4.标识符的命名最好能反映出其作用,做到见名知意
5.标识符不能是java的关键字
关键字
介绍:
在java中,有一些单词被赋予了特定的意义,一共有50个关键字
在这50个单词都全是小写,其中有两个保留字 const和goto
关键字是不能做为标识符使用的
除了以上50个关键字以外,true false null也不能作为标识符使用
2.数据类型
数据类型分为基本数据类型和引用数据类型
基本数据类型
介绍:
变量要保存值,这个值存在内存中的,所以需要向内存申请存储空间
java是一个强类型语言
为了方便内存管路系统根据变量的类型进行合理的分配内存空间
不同类型分配的内存大小是不同的,这个大小的单位就是字节BYte
八大基本数据类型:byte、short、int、long、float、double、char、boolean
扩展知识:
位 bit,比特,表示二进制
1byte = 8bit(1字节=8位)
1KB = 1024byte
1MB = 1024KB
1GB = 1024MB
1TB = 1024GB
案例:
public class Demo1 {
public static void main(String[] args) {
/*1.定义变量的规则:变量的类型 变量名 变量的值*/
/*2.String是字符串类型,用来保存多个字符*/
/*定义变量*/
String name = "小陈";//定义了一个String变量用来保存姓名"小陈"
int age = 20;//定义了一个int类型的变量 名称为age用来保存年龄20
char sex = '女';//定义了一个字符类型的变量sex保存了"女"
double salary = 8888.88;//定义了一个double类型的salary用来保存工资
float money = 189.6f;//定义了一个单精度浮点数
boolean flag = false;//定义了一个布尔类型的变量 注意:布尔类型的变量只有两个参数true false
//3.通过打印语句查看变量的值
System.out.println(name);
System.out.println("人民的公仆:"+ name +"是一个温柔可爱的"+sex +"孩子"+",今年" +age+ "岁,每月工资"+salary+"RMB");
}
}
3.类型转换
·····强制类型转换和隐式类型转换(自动转换)
···· 强制类型转换
···········容量大的类型转换为容量小的类型时必须使用强制类型转换
转换过程中可能导致溢出或损失精度
例如:int i =128; byte b = (byte)i; //打印的结果是-128
因为 byte 类型是 8 位,最大值为127,所以当 int 强制转换为 byte 类型 时,值 128 时候就会导致溢出。
浮点数到整数的转换是通过舍弃小数得到,而不是四舍五入
例如:float f = 32.7f; int a2 =(int) f; //打印的结果是32
不能对boolean类型进行类型转换。
小到大,直接转
大到小,强制转
浮变整,小数没
低------------------------->高
byte,short,char->int ->long ->float->double
数据类型高的转低的需要进行强制转换
一个int类型转一个byte类型就要进行强制转
int a = 10;
byte b = a;//此时如果不进行强转程序将会报错,会提升说会丢失精度
byte b = (byte) a;//这样就可以正常运行了
数据溢出问题:
就是说本身你定义了一个byte类型,它的取值范围在-128~127之间,当你执行了以下代码就会产生问题:
byte a = 127;
byte b = a + 1;//此时输出结果按正常来讲是128
System.out.println(b);//实际结果为-128
原因是:因为它已经超过byte的取值范围,此时就会产生这种数据溢出问题,所以在定义变量的时候自己需要注意,所用的类型的取值范围是否满足你当下的条件
类型转换图:
内存溢出图:
4.变量、常量
变量
概述:
在Java中,我们需要记录一些数据,这些数据的值是不固定的,总在变,我们可以把这些数据理解为变量。
总结:可以变化的量被称为变量
通过三个元素来描述变量: 变量类型 变量名以及变量值
定义变量的两种格式:
声明变量时并赋值: int age = 18;
先声明变量: byte a; 然后给变量赋值 a = 66;
注意:
1.变量名必须是一个有效的标识符
2.变量名不可以使用java关键字
3.变量名不能重复
常量
值一旦定义就不能被修改,值不会被改变的值称为常量。
使用 final修饰 例如:final int MAX = 2134687978;
5.运算符
算术运算符 + - * / %
注意:取商 int/int得到的结果是int而且没有四舍五入直接丢弃小数部分
比较运算符 > < >= <= != ==
逻辑运算符 && || !
6、包机制、JavaDoc
包机制:
为了更好地组织类,java提供了包机制,用于区别类名的命名空间
包语句的语法格式:
package 包的路径
一般使用公司域名倒置作为包名 : www.baidu.com
为了能够使用某个包的成员,需要在java程序中明确导入该包,使用“import”语句可以完成此功能
JavaDoc:
javadoc命令是用来生成自己API文档的
javadoc -encoding UTF-8 -charset UTF-8 类.java
参数信息
@author 作者名
@version 版本号
@since 指明需要最早使用的jdk版本
@param 参数名
@return 返回值情况
@throws 异常抛出情况