Java基础(十一)多态

一、什么是多态

        指的是一个对象的多种形态,使用多态的前提为必须有类的继承和接口的实现
       1.方法的重载和重写就是一种多态
       2.子类对象的多态性
           1)分类的引用指向的是子类的实例
           2)在执行时,调用的是子类的方法;在编译时调用的时父类的方法
           3)编译时看左边,运行时看右边
           特点:安全性高

        对象的多态性是什么?

         一个对象多种形态;在Java,子类的对象可以替代父类的对象使用。

二、方法重写

      1.在继承关系的子类中

      2.重写的方法名、参数、返回值类型必须与父类相同

      3.私有方法不能继承因而也无法重写

对象转型:1.向上转型       2.向下转型

        举例:Pet是父类,Dog是继承Pet类的子类。

 Pet pet1=new Dog("小白", "泰迪");   //即为向上转型,现在pet1引用指向一个Dog对象

Dog dog1=(Dog) pet1;    //为向下转型,现在pet1还是指向Dog对象

三、final关键字

       可以修饰什么?
        1.可以修饰类
        2.方法
        3.成员变量
        4.局部变量
  
        1.修饰类,这个类有什么特点?
           这个类不能被继承,但是可以继承别的类
         2.修饰方法
             这个方法就是一个最终方法,不能被重写
         3.修饰成员变量
            成员变量的值不可改变
           1)成员变量没有默认值了
           2)如果使用final关键字必须赋初值

 

四、static关键字

       1.在Java类中,可用static修饰属性、方法、代码块、内部类

       2.被修饰后的成员具备以下特点:

1)随着类的加载而加载
2)优先于对象存在
3)   修饰的成员,被所有对象所共享

                  4)   访问权限允许时,可不创建对象,直接被类调用  

  五、类变量

          由类创建的所有的对象,都共用这一个属性

          1.当其中一个对象对此属性进行修改,会导致其他对象对此属性的一个调用。

          2.类变量随着类的加载而加载的,而且独一份

          3.静态的变量可以直接通过“类.类变量”的形式来调用

          4.类变量的加载是要早于对象。所以当有对象以后,可以“对象.类变量”使用。但是".实例变量"是不行的。

          5.类变量存在于静态域中。

 

         

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值