多态!!!!!

/**

  • 1.要有继承关系
  • 2.方法重写
  • 3.父类的引用指向子类的对象
  • @author Administrator

/
/

  • this:表示当前对象自身 this.name=name;
  • this(参数):调用同一个类中不同的构造方法 一定要写在方法的第一行否则编译报错
    *this.方法名()
  • @author Administrator

/
/

  • 基本类型转换:
  •  1.自动类型转换  大类型=小类型
    
  •  2.强制类型转换  小类型=(小类型)大类型
    
  • 引用类型
  •  1.向上造型  Pet p=new Cat();  大类型=小类型
    
  •  2.向下造型  Penguin penguin=(Penguin)p;   小类型=(小类型)大类型
    
  • 注意:如果子类对父类新扩充了一些方法,使用父类型是访问不到这些方法
  •       解决方法:将父类型向下造型成子类型,就可以访问到子类新扩充的方法了。
    
  • 为什么要使用多态?有什么好处
  • 继承多态可以优化程序的设计,可以提高重用性,让程序更加灵活。但多态不会提高程序效率。

@author Administrator

*/
子类继承父类,测试类中引用父类创建的子类对象如果调用子类中和父类重名的属性,输出为父类中的属性,构造器也一样
如果引用子类创建子类对象则输出子类中的属性
但是不管是引用父类还是引用子类,如果调用重写的方法一定是调用子类中的方法。

封装用private 安全,必须调用get,set方法 可以隐藏属性的细节
继承 涉及到两个类 子类会继承父类中的属性和方法 在项目中起到减少代码量提高代码重用的功能
多态 项目里运用多态 工厂,接口,io

你可能感兴趣的:(多态!!!!!)