Day01 1. 字节(Byte)是我们常见的计算机中最小存储单元。 2. 进入DOS窗口:window + R 常用DOS 命令:
1. JDK,JRE,JVM的关系: JDK ~~>JRE ~~>JVM 2. Java程序开发三步骤: 编写、编译、运行。 编译Java源文件: javac Java源文件名.后缀名 运行Java程序: java 类名字 3. 单行注释: //开头 换行结束 多行注释: /*开头 */结束 4. 标识符的命名规则:不能以数字开头;不能是关键字;除了26个英文字母和0-9数字外, 只能有$(美元符号),_(下划线). 5. 常量:指在Java程序中固定不变的数据。 6. 变量:程序运行期间,内容可以发生改变的量。
格式:数据类型 变量名 = 数据值; 例如: int i = 10; 7. Java的数据类型分为两大类:基本数据类型、引用数据类型 基本数据类型:(四类八种)byte、short、int、long;float、double;char;boolean。 引用数据类型:类、数组、接口。简单说,不是基本数据类型的就是引用数据类型。 8. 对于float和long类型来说,字母后缀F和L不要丢掉。
如果使用byte或者short类型的变量,需要注意右侧的数据值不能超过左侧类型的取值范围。 Day02 1. 自动类型转换: 将[取值范围小的类型] 自动提升为 [取值范围大的类型。 2. 强制类型转换: 将[取值范围大的类型] 强制转换成 [取值范围小的类型。 格式:范围小的类型 范围小的变量名 = (范围小的类型) 原本范围大的数据 3. 注意事项: (1)强制类型转换一般不推荐使用,因为有可能发生精度损失、数据溢出。
(2) byte/short/char这三种类型都可以发生数学运算,例如加法“+”.
(3) byte/short/char这三种类型在运算的时候都会被首先提升成为int类型,然后再计算。
(4) boolean类型不能发生数据类型转换 4. 算数运算符:加+ 减- 乘* 除/ 取模(取余数)% 自增++ 自减-- 需要注意混合运算时,前++/--和后++/--的区别 混合运算中,前++:是先加后用;后++:是先用后加。 5. 四则运算当中的加号“+”有常见的三种用法: (1) 对于数值来说,那就是加法。 (2) 对于字符char类型来说,在计算之前,char会被提升成为int,然后再计算。
char类型字符,和int类型数字,之间的对照关系表:ASCII、Unicode(万国码) (3) 对于字符串String(首字母大写,并不是关键字)来说,加号代表字符串连接操作。
任何数据类型和字符串进行连接的时候,结果都会变成字符串 6. 基本赋值运算符:就是一个等号“=”,代表将右侧的数据交给左侧的变量。
int a = 30;
复合赋值运算符:
+= a += 3 相当于 a = a + 3
-= b -= 4 相当于 b = b - 4
*= c *= 5 相当于 c = c * 5
/= d /= 6 相当于 d = d / 6
%= e %= 7 相当于 e = e % 7 7. 比较运算符:等于==、小于<、小于等于<=、大于>、大于等于>=、不等于!= 比较运算符的结果一定是一个boolean值,成立就是true,不成立就是false 8. 逻辑运算符:与“&&”、或“||”、取反“!”。逻辑运算符的运算结果都是布尔值。 与“&&”,或“||”,具有短路效果:如果根据左边已经可以判断得到最终结果,那么右边的代码将不再执行,从而节省一定的性能。 单与“&”,单或“|”,跟“&&”、“||”效果一样,只是不具备短路效果,后面的代码也会执行。 9. 三元运算符格式: 数据类型 变量名 = 布尔类型表达式 ? 结果1 : 结果2 10. 方法:就是将一个功能抽取出来,把代码单独定义在一个大括号内,形成一个单独的功能。方法在定义完后,自己不会运行,必须要调用才能执行。 方法的格式:public static void 方法名(){ 方法体; } 方法的好处:一旦写好了一个方法,可以反复的使用。 Day03 1. 判断语句if If语句有三种格式:if 、 if...else 、 if...else if...else 根据判断条件灵活使用if语句。 2. 选择语句switch 格式: switch(表达式){
case 常量值1:
语句体1;
break;
case 常量值2:
语句体2;
break;
…
default:
语句体n+1;
break;
}
注意事项: (1) 多个case后面的数值不可以重复。 (2) switch后面小括号当中只能是下列数据类型:
基本数据类型:byte/short/char/int
引用数据类型:String字符串、enum枚举 (3) 如果case的后面不写break,将出现穿透现象,也就是不会再判断下一个case的值,直接向后运行,直到遇到了break或者整体结束为止。 3. 循环语句 循环语句有三种格式:for 、 while 、 do...while 已知循环次数 推荐使用 for循环 ,未知循环次数 推荐使用 while循环,do...while用的比较少。 4. 跳出语句 (1) break : 终止switch语句或者循环。 (2) continue: 结束本次循环,继续下一次的循环。 5. 死循环:也就是循环中的条件永远为true。例如:while(true){ }。 6. 嵌套循环:指一个循环的循环体是另一个循环,如for循环里面还有一个for循环。 Day04 1. IDEA是一个专门针对Java的集成开发工具。 2. IDEA 常用的快捷键
1. 方法调用的三种形式: (1) 直接调用: sum(a:12, b:20); (2) 打印调用: System.out.println(sum(a:20, b:25)); (3) 赋值调用: int num = sum(a:15,b:20); 4. 方法重载:指在同一个类中,允许存在几个相同名称的方法,只要他们的参数列表不同即可,与修饰符和返回值类型无关。其中,参数的个数不同、数据类型不同、数据类型顺序不同都可以形成方法重载,跟参数的变量名称及返回值类型无关。 Day05 1. 数组的定义有三种格式(用的最多的只有两种): (1) 动态初始化数组: 例 int[] array = new int [5]; 数组存储的数据类型[] 数组名字 = new 数组存储的数据类型[长度 (2) 静态初始化数组标准格式: 例 int[] array = new int[]{10,20,30}; 数据类型[] 数组名字 = new 数据类型[] {元素1,元素2,元素3......} (3) 静态初始化数组省略格式: 例 int[] array ={100,200,300}; 数据类型[] 数组名字 ={元素1,元素2,元素3......} 2. 数组长度: 数组名.length 3. 数组索引: 数组名[索引值 注意:索引值从0开始 4. 数组两个异常: (1) 数组越界异常:ArrayIndexOutOfBoundsException,当访问的索引值在数组中没有对应元素时,即会发生数组越界异常。 (2) 数组空指针异常:NullPointerException,当定义array=null时,意味着变量array将不会在保存数组的内存地址,这时候就会发生空指针异常。 5. 数组的遍历:就是将数组中的每个元素分别获取出来。利用for循环即可实现。 6. 数组作为方法参数传递,传递的参数是数组内存的地址值。 数组作为方法返回值,返回的也是数组内存的地址值。 Day06 1. 类:类是一组相关属性(成员变量)和行为(成员方法)的集合。 2. 对象:对象是一类事物的具体体现,对象是类的一个实例,必然具备该类事物的属性和行为。 3. 类的定义格式:public class ClassName{ //成员变量 //成员方法 } 4. 成员变量:和以前定义变量几乎一样,只不过位置发生了变化,在类中,方法外。 成员方法:和以前定义方法几乎一样,只不过把static去掉。 5. 对象的使用: ① 创建对象: 类名 对象名 = new 类名(); ② 使用对象名访问类中的成员: 对象名.成员变量; 对象名.成员方法(); 6. 成员变量的默认值: ① 基本数据类型: 1) 整数(byte, short, int, long) 默认值:0 2) 浮点数(float, double) 默认值:0.0 3) 字符(char) 默认值:’\u0000’ 4) 布尔(boolean) 默认值:false ② 引用数据类型 1) 数组,类,接口 默认值:null 7. 面向对象的三大特征:封装、继承、多态。 8. 封装的关键字:private (private是一个权限修饰符,代表最小权限) 被private修饰后的成员变量和成员方法,只在本类中才能访问。 对需要访问的成员变量,提供对应的一对get/set方法。 9. this关键字:方法被哪个对象调用,方法中的this就代表那个对象。 JavaBean 是Java语言编写类的一种标准规范。要求类必须是具体的和公共的,并且具有无参数构造方法,提供用来操作成员变量的set 和 get 方法。
|