最近,也不能说是最近吧,应该说是从二月份到现在,自己对自身java知识做了一个回顾和查漏补缺。主要针对的是自己SE部分的复习和巩固,休息一个,换换心情,在这个夜深人静的时候来个小小的总结。也算是个放松心情吧,希望自己能在这次春招中,有个好的结果,去到自己心里梦想的地方。那么,话不多说我们开始。
一.数据类型
说到数据类型,我们一定不陌生,伸出我们的手有:byte、short、int、long、float、double、char和布尔型boolean八个。而这里我要说的是数据类型的转换。当数据不一样时,将会发生数据类型转换。数据类型转换有两种:
1.自动数据类型转换(自动完成,数据范围从小到大):
long num =100;这里100默认的是int类型。
float——>double
2.强制类型转换(需要一个特定的格式,不能自动完成):
int num =(int)100L; ——> 括号里,转谁写谁!
此外,强转一般不推荐使用,会有精度损失。byte/short/char在运算时,首先被提升成为int 类型 再计算。
二.方法重载注意事项(overload):
1.参数个数不同
2.参数类型不同
3.与参数名称无关。
4.与参数返回值无关。
三.数组
1.它是一种引用数据类型
2.多数据类型必须统一
3.长度在运行期间不会改变
动态初始化 : int[ ] 数组名称 = new int [长度 ];
静态初始化:int [ ] 数据类型 = new int [ ]{1,2,3,4,5,6 };
四.Java内存5各部分:
1.栈(stack):方法中的局部变量,方法的运行
2.堆(Heap):存放对象(new出来的东西)
3.方法区:存储.class相关信息
4.本地方法栈:与操作系统有关
5.寄存器:与CPU相关
五.成员变量和局部变量:
1.成员变量在类中,局部变量在方法中
2.作用范围不同,成员整个类中都可以使用
3.成员变量可以没有赋值(默认值),局部变量就要手动赋值
4.局部变量在栈内存,成员变量在堆内存
5.局部变量随着方法进入栈生,出栈死!
成员变量随对象生,随对象回归死!
六.this关键字:
1.this的作用:
a、this表示的是当前对象本身;
b、更准确地说,this代表当前对象的一个引用。
2.普通方法中使用this
a、区分类成员属性和方法的形参;
b、调用当前对象的其他方法(可以省略);
c、位置:任意;
3.构造方法中使用this
a、使用this来调用其他构造方法;
b、位置:必须是第一条语句;
4.this不能用于static方法。
七.Scanner sc =new Scanner(System.in);
八.继承
继承是多态的前提,没有继承,就没有多态
特点:1.子类可以拥有父类的内容 2.子类还可以拥有自己的内容。
在父子类的继承关系中,如果成员变量重名,则创建子类对象时,访问有两种方式:
1.直接通过子类对象访问成员变量:等号左边是谁,就优先用谁,没有向上找。
2.间接通过成员方法访问成员变量:
该方法属于谁,就优先用谁,没有则向上找。