面向对象(Day11)

Final                         

        final是修饰符,表示最终的,无法修改。

        注意:

        1.修饰的变量不能进行二次赋值,一般叫做常量(但是常量一般是psf的 public static final)

        2.修饰的成员方法不可以被覆写

        3.修饰的类不能被继承

多态

        JVM四大特性:多线程、跨平台、自动垃圾回收、面向对象

        面向对象特性: 封装、继承、多态、抽象

        多态:指同一操作用于不同对象可以有不同的解释,产生不同的结果。 简单来说,可以通过父类创建的引用类型变量能够找到子类的对象。

        语句: 1父类 变量名 = new 子类();

        注意:能够用父类的地方一定可以使用子类(里氏替换原则)

        六大设计原则:单一职责原则、开闭原则、里氏替换原则、迪米特原则、接口隔离原则、依赖倒置原则

        优点:提高代码的灵活度、扩展性、维护性

        缺点:丢失子类特有属性(父类没有的,子类有,属于子类特有,无法访问)

        语法调用规则:1.父类没有的,都调用不了,直接报错  2.父类有的,子类没有的,执行父类

3.父类有,子类也有的,除了成员方法执行子类的,其他的都执行父类的

        多态发生在赋值时。

        多态右叫向上转型。子到父,类似于自动类型转换,

                       向下转型,父到子。类似于强制类型转换

        注意:必须先发生向上转型,才能发生向下转型

        多态的几种形式:

                1.直接多态:父类 变量名 = new 子类();

                2.形参实参多态:参数列表用父类声明,调用方法是传入子类对象

                3.返回值多态:返回值类型为父类类型,但返回的值为子类对象

                4.隐式多态

        简单的来说:只要是父类的应用类型变量,保存的是子类的对象,就是多态

abstract

        abstract修饰符,表示抽象的

        注意:

                修饰成员方法的方法抽象方法,并且没有方法体,

                修饰的类为抽象类,抽象类不能创建对象。

                抽象方法必须在抽象类中,用于被子类覆写(或实现)。

                抽象类中可以没有抽象方法。

                abstract和final不能同时出现,

                如果一个类继承一个抽象类,需要实现所有的抽象方法,

                一个抽象类继承一个抽象类,需要实现0-N个抽象方法

        

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值