面向对象oop(六)

1.多态:
      1)意义
:
            1.1)同一类型的引用指向不同的对象时,有不同的实现。
             -------行为的多态: cut()、run()、study()......
    1.2)同一个对象被造型为不同的类型时,有不同的功能。
             -------对象的多态: 我、你、水......
     2)向上造型:

            2.1)父类型的引用指向子类的对象。

            2.2)能造型为的类型有: 父类+所实现的接口。

    2.3)能点出来什么,看引用的类型。
      3)引用类型之间强制类型转换,成功的条件有两种:

            3.1)引用所指向的对象,就是该类型。

    3.2)引用所指向的对象,实现了该接口。

    4)强转若不符合如上两个条件,则发生ClassCastException类型转换异常。

            建议在强转之前通过instanceof来判断引用的对象是否是该类型。

2.成员内部类: 应用几率比较小

      1)类中套类,里面的称为Inner内部类,外面的称为Outer外部类。


      2)内部类通常只服务于外部类,对外不具备可见性。

      3)内部类对象通常在外部类中创建。

 

      4)内部类中可以访问外部类的成员(包括私有的),内部类中有个隐式的引用指向了创建它的外部类对象。

3.匿名内部类:

  1)若想创建一个类(子类)的对象,并且对象只被创建一次, 此时该类不必命名,称为匿名内部类


  2)匿名内部类若想访问外部的变量,该变量必须是final的


面向对象特征:

    1.封装:
          1)类:封装的是对象的属性和行为。

  

           2)方法:封装的是特定的业务逻辑功能。

          3)访问控制修饰符:封装的是访问的权限。
    2.继承:

           1)实现代码的复用。

          2)父类:所有子类共有的属性和行为        子类:子类所特有的属性和行为。

          3)子继承父后,子具有:子+父。

           4)单一继承、多接口实现、传递性。

    3.多态:
        1)意义: 行为的多态、对象的多态。

 

        2)向上造型、强转、instanceof。

         3)多态的表现形式:
            3.1)重写:根据对象来实现多态。

            3.2)重载:根据参数来实现多态。






总结:
第一天:
  1)什么是类?什么是对象?
  2)如何创建类?如何创建对象?如何访问类中的成员?
  3)引用类型之间画等号
  4)null和NullPointerException
第二天:
  1)方法的重载:
  2)构造方法:
  3)this:
  4)引用类型数组:
第三天:
  1)内存管理:
  2)继承:
  3)super:
  4)向上造型:
第四天:
  1)方法的重写
    重写与重载的区别
  2)package和import
  3)访问控制修饰符
  4)static
  5)final
  6)static final
第五天:
  1)抽象方法
  2)抽象类
  3)接口
  4)接口与抽象类的区别
第六天:
  1)多态: 意义、向上造型、强转、instanceof
  2)成员内部类、匿名内部类

猜你喜欢

转载自blog.csdn.net/qq_41264674/article/details/80350442