Java面向对象



package github.oop;
import java.io.IOException;
/**
* @author subeiLY
* @create 2021-05-30 17:54
*/
// 类
public class Demo01 {
// main方法
public static void main(String[] args) {
}
/*
修饰符 返回值类型 方法名(...){
// 方法体
return 返回值;
}
*/
public String sayHello(){
return "hello,world!";
}
public int max(int a,int b){
return a>b ? a : b; // 三元运算符
}
// 数组下标越界:Arrayindexoutofbounds
public void readFile(String file) throws IOException{
}
}



封装的作用:
- 提高了代码的安全性,保护数据;
- 隐藏代码的实现细则;
- 统一接口;
- 系统可维护增加了。

super注意点:
- super调用父类的构造方法,必须在构造方法的第一个
- super必须只能出现在子类的方法或者构造方法中!
- super和this不能同时调用构造方法!
VS this:
- 代表的对象不同:
- this:本身调用者这个对象;
- super:代表父类对象的应用;
- 前提
- this:没有继承也可以使用;
- super:只能在继承条件才可以使用;
- 构造方法
- this():本类的构造;
- super():父类的构造。
方法的重写:
- 重写:需要有继承关系,子类重写父类的方法!
- 方法名必须相同;
- 参数列表列表必须相同;
- 修饰符:范围可以扩大但不能缩小: public>Protected>Default>private
- 抛出的异常:范围,可以被缩小,但不能扩大;ClassNotFoundException–> Exception(大)
- 重写,子类的方法和父类必要一致;方法体不同!
- 为什么需要重写:父类的功能,子类不一定需要,或者不一定满足!

多态注意事项:
- 多态是方法的多态,属性没有多态;
- 父类和子类,有联系,类型转换异常!ClassCastException!
- 存在条件:继承条件,方法需要重写!父类引用指向子类对象!
- static 方法,属于类,它不属于实例
- final 常量;
- private 方法;
instanceof:判断一个对象是什么类型。
- 父类引用指向子类的对象;
- 把子类转换为父类,向上转型;
- 把父类转换为子类,向下转型,强制转换;
- 方便方法的调用,减少重复的代码!简洁。




浙公网安备 33010602011771号