Java 总结 一
JAVA语言:
第一代 机器语言 ;
第二代 汇编语言 ;
第三代 高级语言 。
**java的发展史:**
95年,Sun发布了jdk1.0 ,
98年 , jdk1.2 更名为jsk2 ,
接着jdk1.3 等到现在的11.0.2 。
**java的三大平台:**
Java SE(Java Platform Standard Edition):标准平台。
Java EE(Java Platform Enterprise Edition):企业平台。
Java ME(Java Platform Micro Edition):微型平台。
**java语言的特点:**
简单性,面向对象,分布式,健壮性,安全性,跨平台性。
**java的三大注释:**
单行注释: //
多行注释: /* */
文档煮熟: /** */
java关键字 保留字
关键字:在编程语言中有一些事先定义的,有着特殊含义和用途的单词。
保留字:和关键字一样都是编程语言事先定义好的,只是说现在暂时没
有特殊的用途,但说不定以后某天会突然被赋予意义和被使用到,因
此被保留下来的单词。byValue, cast, false, future, generic, inner,
operator, outer, rest, true, var,goto,const,null
java分隔符 (必须都是半角英文符号)
分号 (;) :语句的分割,表示一句话结束,好比咱们使用的句号。
花括号({}):表示一个代码块,是一个整体,花括号要成对使用。
方括号([]):定义数组和访问数组元素时使用。
圆括号(()):使用很广泛,具体用到细讲。
圆点(.):类和对象访问它的成员时使用。
空格( ):把一整条语句分割成几段,空格的次数不限制,好比一句英文里单词都要分开写一样。
标书符命名规则
- 由字母、数字、下划线、$组成,但不能以数字开头(注:此处的字母可以是中文、日文等)。
- 区分大小写
- 不得使用java中的关键字和保留字
- 不得使用java API 中的类名作为自己的类名
java数据类型分两种:
1.基本数据类型
- 字节型(byte): 占用一个字节。
- 整型(int): 占用四个字节。
- 短整型(short): 占用两个字节。
- 长整型(long): 占用八个字节。
- 布尔型(Boolean): 占用一位。
- 双精度(double): 占用八个字节。
- 浮点型(float): 占用四个字节。
- 字符型(char): 占用两个字节。
- 基本数据类型保留原有的值。
2.引用数据类型
- String类型
- 数组
- 集合
- 枚举
- 引用数据数据类型的变量保存引用。
基本数据类型的转换
- 自动类型装换:也称隐式类型转换。把小数据范围类型的数值或变量赋给另一个大数据范围类型变量时,称为自动类型转换。
- 强制类型转换:也称显示类型转换。把大范围类型的数值或变量赋给另一个小范围类型变量时,此时系统不能自动完成转换,需要加上强制转换符,但这样的操作可能造成数据精度的降低或溢出,称为强制类型转换。
运算符
- 算术运算符:+ 加 - 减 * 乘 / 除 % 取模 ++ 自增 – 自减 + 字符串相加
- 赋值运输符 : = 赋值 += 加等于 -= 减等于 *= 乘等于 /= 除等于 %= 模等于
- 比较运算符 : == 相等于 != 不等于 < 小于 > 大于 <= 小于等于 >= 大于等于
instanceof 检查是否是类的对象 - 逻辑运输符:
&&与 : 同时为 ture 时,返回 ture , 否则返回 false
|| 或 : 有一个为 ture 时则返回 ture ,同时为false值返回 false
! 非 : 值为 ture 返回 false ,值为 false 返回 true - 三元运输符:三元运算符,表示有三个元素参与的表达式
,所以又称为三目运算符,其语义表示if-else.
语法格式:X ? Y :Z, 其中x为boolean类型表达式,先计算X的值,若X结果为true则整个三目运算表达式的结是Y,否则就是Z。三目运算符结果的类型由Y和Z决定 。
变量和常量
常量:程序中固定不变化的值。
变量:表示存储空间,可以来存放某一类型的常量,没有固定的值,并可以重复使用,也可以来存储某种类型的未知数据。
常量的分类:
根据定义位置的不同可以分为:
全局变量,又称成员变量或字段
局部变量
作用域:从定义开始到花括号结束
变量的三种表现形式:方法形参,方法内变量,代码块变量
变量的使用规则:
- 变量必须先声明,并且初始化后才能使用
- 声明变量必须有数据类型
- 同一作用域内的变量不能重复定义
使用方法:
方法1 先定义变量,再赋值:
数据类型 变量名 ;
变量名 = 值 ;
方法2 在声明的同时赋值 :
数据类型 变量名 = 初始化值 ;
选择结构
if选择结构
//if 结构
if(a=b){
System.out.println("值相等");
}else if(a>b){
System.out.println("值不相等");
}else{
System.out.println("其他");
}
switch语句
switch(1){
//如果case已经满足条件后,case以下多有语句将失去判断作用
case 1:
System.out.println("一月");
break; //语句遇到break才会结束![在这里插入图片描述](https://img-blog.csdnimg.cn/20190214203621638.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQyNzMxNTE3,size_16,color_FFFFFF,t_70)判断
case 2:
System.out.println("二月");
break; //可以放在任意位置
default:
System.out.println("十二月");
break;
}
循环结构
满足条件就可以重复执行一段代码
while和do while 循环
int i = 4 ;
while( i > 0){
//表达式为真执行循环体,表达式假 跳出循环体
System.out.println("大于零 ");
i--; //对变量处理 不然会导致死循环
}
//while 循环可能一次也不执行
do{
i--;
}while(i > 0)
//do while 循环无论条件是否满足,都要先去执行一次循环体
for循环
for(int i = 0 ; i > 10 ; i++ ){
System.out.println(i+"比十小。");
}
/*
for语法
for(表达式1;表达式2;表达式3){
循环体
}
表达式1 初始量
表达式2 结束循环的条件
表达式3 增量*/
循环得终止方式
java中循环的不同终止方式
1、break:直接强行跳出当前循环,不再执行剩余代码。但在多重循环的情况下,若break在内层循环中,则仅仅终止了内层循环,外循环照常执行。
2、continue:仅仅终止此次循环。
3、return:使程序返回到调用某方法的地方。
4:、break+标签:可用于终止多重循环。在多重循环前设置一个标签,配合break即可终止整个循环。
5、boolean标签+break:与4相似。
方法:方法是组合在一起来执行操作语句的集合.
方法格式:
方法格式:
[修饰符] 返回值类型 方法名([参数类型 形参1,参数类型 形参2,……])
{
执行语句;
[return 返回值;]
}
方法的设计规则:
-
明确在实现该功能的过程中是否有未知元素参与运算,确定参数列表;
-
明确该功能运算后的结果是否需要返还给调用者,确定返回值类型。
a:无参数无返回
b:有参数无返回
c:无参数有返回
d:有参数有返回
方法的重载: 在同一个类中,某方法允许存在一个以上的同名方法,只要它们的参数列表不同即可。
jvm内存模型图
方法传递,基本数据类型和引用数据类型的区别
基本数据类型:
1.每一个方法都是一个栈区;
2.方法栈区与main中的数据是不共享;
3.方法掉用结束时释放内存;
引用数据类型:
1.每一个方法都是一个堆区;
2.方法堆区与main中的数据是共享,
也就是说,通过方法可以改变main中
的数据;
3.系统结束时释放内存,也就是说,
在main方法结束时释放;
数组 ( .length 方法可以获取数组长度)
数组可以看做是一个容器,可以存储一组相同数据类型的变量。
数组的使用步骤:
- 声明数组
- 分配内存空间
- 数组进行赋值
- 处理数据
初始化的步骤:
第一种:1.声明数组 例如:int[]arr;
2.分配内存空间 arr=new int[内存空间大小]
第二种:数据类型 []数组名=new 数据类[内存空间大小];
数组赋值:
通过数组的下标来访问数组中元素。
数组中的下标从0开始 最大的下标 长度-1;
语法:
数组名[下标]=值;
工具类Scanner
- import java.util.Scanner //导入Scanner 的包
- Scanner name=new Scanner(System.in); //建立扫描仪
- name.next数据类型(); //获取键盘输入的键值