面向对象04--多态 / final / 各种修饰符 / 代码块

一、多态

1. 对象的多种形态

2. 一个对象可以创建多个形态    比如:Student可以创建Person形态

3. 前提是①Student继承了Person   ②并且方法进行了重写   ③Fu f = new Zi();

4. Animal a = new Dog();    a.name是父类中的name属性,a.show()是子类中的show方法

    简单来说:属性用父类的,方法用子类的

    这是因为:

    编译看左边(看父类中有没有这个成员变量/成员方法,有的话才能正确编译运行,没有的话会      报错)

    成员变量:运行看左边  只要父类中有,就是用父类中的

    成员方法:运行看右边,用子类中的(因为子类重写方法时会覆盖掉父类的)

5. 多态的弊端:不能使用子类的特有功能(除非强转)(强转时最好用instanceof进行判断)

二、final修饰符

1. 被final修饰的方法,是最终方法,不能被重写(一般用于,固定规则)

2.被final修饰的变量,叫做常量(例如PI = 3.14)

    变量名规则:全部大写  若是多个单词,中间用_隔开

    ①基本数据类型:数据值不能变

    ②引用数据类型:地址值不能变,里面的数据还是可以变的

三、各种修饰符

    

2.使用规则

    一般只用private、public

    成员变量私有    、   方法公开

    特例:如果方法中的代码是抽取其他方法中共性代码,这个方法一般也私有

  (不想被其他类使用)

四、代码块

1. 局部代码块:节省内存空间(已淘汰)

2. 构造代码块:写在成员位置的代码块(不怎么用了,不够灵活)

    作用可以把多个构造方法中重复的代码抽取出来

    执行时机:我们在创建本类对象的时候会先执行构造代码块再执行构造方法

3. 静态代码块:static  随着类的加载而加载  只执行一次

    用处:在程序刚开始的时候,做一些数据初始化

  • 4
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值