-
引言:11月份开始为明年的春季实习作准备;博客只为对自己的java知识的一个复习和巩固,有些技术点表达得不对的地方还望见谅,恳请各位大佬批评指正!(部分内容我是直接从wolai笔记上转到CSDN的,格式可能有些许的差别)
-
java命名规范
1.类名所有单词大写,类名和源文件名相同; JavaDemo.java JavaDemo
- 变量名、方法名采用驼峰原则;userName
3.常量名,大写下划线隔开;CACHE_USE
4.项目、包的名称采用小写规则;.和-隔开
5.主方法入口:public static void main(String[] args)方法
6.注释的三种方法:
1. /* * */ 2. /* ...*/ 3. //
-
java变量
1.变量声明,变量的初始化,变量的使用,变量的命名规范;
2.基本数据类型(byte,short,int,long(L),float(f),double,char,boolean)引用数据类型;
3.数据类型转换(自动类型转换,强制类型转换规则),浮点数不精确问题,不同数据类型的计算问题(先转int,再转其他,往高位数转化);
4.转义字符,字符串(不属于基础数据类型,属于引用数据类型)""和字符’'的区别与联系;
-
成员变量和局部变量的区别
1.在类中的位置不同
成员变量:在类中方法外面**[方法中可以直接使用类的成员变量]**
局部变量:在方法或者代码块中,或者方法的声明上(即在参数列表中)
2.在内存中的位置不同,可以看看Java程序内存的简单分析
成员变量:在堆中(方法区中的静态区)
局部变量:在栈中
3.生命周期不同
成员变量:随着对象的创建而存在,随着对象的消失而消失
局部变量:随着方法的调用或者代码块的执行而存在,随着方法的调用完毕或者代码块的执行完毕而消失
4.初始值
成员变量:有默认初始值
局部变量:没有默认初始值,使用之前需要赋值,否则编译器会报错(The local variable xxx may not have been initialized) -
运算符
1.算术运算符
2.关系运算符
3.逻辑运算符&& || !与或非(优先级非>与>或)
4.赋值运算符
5.条件运算符(三元运算符)布尔表达式?表达式1:表达式2
6.字符串运算符 字符串+任意类型数据(eg:""+1+2输出为12,1+2+""输出为3,但而这输出都是字符串);
7.位运算符
-
输入
//Scanner类 import java.util.Scanner; // 创建对象 Scanner scan = new Scanner(System.in); // 接收数据 scan.nextLnt(); // 停止输入 scan.close; //!!注意:scan.close(只能用一次,一旦关闭,System.in不再可用)
-
if语句;
-
switch语句;
-
while,do while,for循环
-
break,continue,嵌套循环,死循环
-
数组
1.数组初始化长度就不可变;
2.数组存储的元素必须为同一数据类型;
3.声明方式: type[] arrayName;
4.初始化数组:
静态初始化:arrayName = new type[]{element1…}
type[] aarayName = {element1...}//声明的同时初始化
总结:两种静态初始化方法:1.int[] a a = new int[]{};2.int[] a ={}
动态初始化:arrayName = new type[length],和静态初始化类似
初始化完以后数组每个元素都完成了初始化,默认赋值;
5.数组的长度:arrayName.length;
-
数组的遍历
1.for循环
for(int i =0; i < array.length; i++)
2.foreach循环|这种遍历方式一定是从头到尾的
for(type 变量:数组|集合)
-
数组的工具类arrays
Array.toString(array);转化成字符串,多维数组用deepToString
Arrays.equals(array1,array2);比较
Arrays.sort(array);排序(有小到大排序,直接改变原数组,没有返回值)
Arrays.copyOf(array,newLength)复制,也可用于数组扩容
-
内存中的数组
-
多维数组
-
方法(函数)
完成特定任务的独立代码单元** **
public static void main(String[] args){}
修饰符 返回值类型 方法名(参数列表)
eg:public static int sum(int m; int n){
return m + n; }
-
方法参数
-
可变参数
1.在定义方法是,可以声明数量不确定的参数,这样的参数叫可变的参数;
2.一个方法最多声明一个可变参数,并且该参数必须置于参数列表的末尾;
3.可变参数是一个数组,在调用的时候可以分开传入多个值,也可以直接传一个数组;
-
方法重载
在同一个类中,定义多个名称相同、参数列表不同的方法;