java向上转型和向下转型有什么用_多年积累分享Java传说找对象技术总结

e561f3b3b21670be5b93fcb9b02120a2.gif


c5514057415882a93a90ce2dcf8250f0.png

一、static关键字

作用:用来修饰类的成员(属性、方法)

static关键字特点: 在类加载时就加载(运行、初始化)(类先于对象加载,程序中只加载一次,搞清楚看先后顺序) 静态初始化优于对象的  静态的成员(属性和方法)可以通过类名.操作符直接访问 注意: 1.只有在所有对象都是同一个属性值的时候我们才建议到属性上用static修饰 2.静态方法中不能有this关键字 总结:静态只能访问静态,非静态能访问静态 二、super关键字 super代表当前类的父类的对象,super == new Person(); super作用访问父类的成员 子类中所有的构造方法默认都会访问父类中的无参构造方法 ,默认有super(),如果父类没有无参构造子类会报错 子类构造方法执行前必须先执行父类的构造方法 三、final关键字

final代表最终的,是一个修饰符用来修饰类,方法,变量。

1.修饰类则表示这个类不能被继承。 2.修饰方法则表示这个方法不能被重写。 3.修饰变量,那么该变量的值一旦被指定,就不能再改变 。这个变量其实就是常量。 命名规范:变量名所有字母大写。 注意:修饰的变量是引用变量时,不可以改变的是地址值,而不是堆内存中的值

3ed10c0985e12c2fa3c8bf4895a3630f.png

四、代码块

静态代码块:类中方法外,类加载时执行,并且只执行一次,给类进行初始化

构造代码块:类中方法外,创建对象是执行,并且在构造方法前执行,可以把不同构造方法中相同共性的东西写在它里面。 五、继承 概述: 多个类中存在相同属性和行为时,将这些内容抽取到单独一个类中,那么多个类无需再定义这些属性和行为,只要继承那个类即可。 多个类可以称为子类,单独这个类称为父类或者超类。 通过 extends 关键字让类与类之间产生继承关系。 super代表当前类的父类的对象,super == new Person(); 特点: Java只支持单继承 ,不支持多继承,但支持多层继承。 一个类只能有一个父类,不可以有多个父类。 注意: 不要仅为了获取其他类中某个功能而去继承类与类之间要有所属( " is a " )关系,xx1是xx2的一种。 六、重写 定义: 如果在子类有和父类相同的方法,子类的这个方法叫方法重写。 作用:父类的方法无法满足子类的需求。子类重写父类方法后,子类对象调用重写方法。 注意: 1.如果要构成方法的重写,返回值、方法名、参数列表要相同,修饰符的访问范围不能小于父类。public==》默认==》private 私有 2.静态的方法不存在重写,但是可以继承。 3.私有方法和构造方法不能被重写。 ctrl+鼠标左键,进入类或者方法 七、多态

作用:代码扩展能力增强。编程不要面向对象和面向具体编程,要面向父类面向抽象编程,代码的可扩展型才好。

类之间的转型: 向上转型(多态):子---->父(自动类型转换)动物 f = new 狗(); 狗 f = new 动物(); 向下转型:父---->子(强制类型转换) instanceof 运算符:判断对象属不属于某个类。 弊端: 不能使用子类特有的功能 总结: 1.多态三要素:继承,方法重写,父类的引用指向子类的对象===》Father f = new Son(); 2.如果重写,运行看右边,编译全部都是看左边的 3.向上默认转型,向下需要强转

bf116dfb325d8f82c27a787703271416.gif

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值