黑马程序员技术交流社区
标题:
技术贴
[打印本页]
作者:
张四叁
时间:
2018-11-15 12:55
标题:
技术贴
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 方法。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2