2016/04/07
构造函数在new对象的时候执行
super关键字必须写在构造函数的第一行
super可以调用父类的方法
用static声明的变量成为静态变量,一次声明以后不能再次声明
{}表示初始化块 可以加载当前类依赖的工具 加载必要的函数以及其他类
static {} 静态初始化块
初始化块和构造函数在new的时候执行
fianl最终的 fianl也是修饰符/他是可有可无的
还没有运行就报错的叫做编译期错误
被fianl的变量不能被修改和重写
fianl修饰符不能被继承
子类有单独的方法,父类没有方法,将不能被调用
abstract抽象方法:表示只声明不实现
抽象类不能被实例化
封装:隐藏内部的实现,暴露使用方法/也就是对数据进行保护
向上转型和向下转型总结:
1、父类引用可以指向子类对象,子类引用不能指向父类对象。
2、把子类对象直接赋给父类引用叫upcasting向上转型,向上转型不用强制转型。
如Father father = new Son();
3、把指向子类对象的父类引用赋给子类引用叫向下转型(downcasting),要强制转型。
如father就是一个指向子类对象的父类引用,把father赋给子类引用son 即Son son =(Son)father;
其中father前面的(Son)必须添加,进行强制转换。
4、upcasting 会丢失子类特有的方法,但是子类overriding 父类的方法,子类方法有效
5、向上转型的作用,减少重复代码,父类为参数,调有时用子类作为参数,就是利用了向上转型。这样使代码变得简洁。体现了JAVA的抽象编程思想。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步