fina 接口 多态

final
    最终修饰符 可以修饰 类 方法 变量
    修饰类   类不能被继承
    修饰方法 方法不能被重写
    修饰变量 只能赋值一次 不能2次赋值 是常量
    
    1.final修饰引用数据类型变量 变量的地址值不能改变 但是属性值可以变
    2.final修饰成员变量 不能使用默认值 创建对象之前赋值 
                     直接显示赋值 
                     所有构造方法中赋值
接口 
    接口是功能的集合 描述的是功能 接口中都是抽象方法(JDK1.8之前)
    定义格式 
        public interface 接口名{
             抽象方法;
        }
    接口的使用 
        1.接口不能创建对象
        2.使用类实现接口  
        3.重写抽象方法 
        4.创建实现类对象 调用方法
        
        实现的动作类似继承 就是关键字不同 
        public class 类  implements 接口{
              重写方法
        }
    接口的成员特点 
         接口没有构造方法 
         接口中的成员变量 被public static final修饰 是常量
         接口中的成员方法 被public abstract修饰 
    
    接口的特点 
        类与类 单继承 
        类与接口 多实现
        接口与接口 多继承 
        类可以在继承一个类的同时 实现多个接口
        
    接口与抽象类的区别
        成员区别 
             构造方法 
                 接口没有构造方法
                 抽象类有构造方法 给子类使用
              成员变量 
                 接口没有变量 只有常量
                 抽象类既可以有变量 也可以有常量
              成员方法 
                 接口中的方法都是抽象的 
                 抽象类中 既可以有抽象方法 也可以有具体的方法
        思想的区别
            抽象类描述的是一类事物的共性内容 
            接口描述的是功能
多态 
    多态的前提 
         1.继承或者是实现关系 
         2.需要有方法重写
    多态的格式 
        父类引用指向子类对象 
        具体类  变量 = new 子类对象();
        抽象类  变量 = new 子类对象();
        接口  变量 = new 实现类对象();
        
     多态后访问的成员特点 
        成员变量  
              编译时 到父类中找 如果有编译通过 没有报错
              运行时  打印的父类成员变量的值
              编译时  看左边
              运行时  看左边 
        成员方法 
             编译时 到父类中找 如果有编译通过 没有报错
             运行时  子类重写后的方法 
             
             编译时 看左边 
             运行时 看右边
        
        多态后 一切都是父类的表现形式 只有方法运行的子类重写后的方法.
        
     向上转型 
         多态本身就是向上转型 
         Fu fz = new Zi();
     向下转型 
         向上转型后 不能访问子类特有功能
         要想访问 需要向下转型
         Zi zf = (Zi)fz;
            
         需要注意 
            Fu fu = new fu();
            Zi  zi = (Zi)fu; //抛运行时异常  ClassCastException 类型转换异常
            
     instanceof关键字 
     boolean b = 对象 instanceof 类型;
     
     if(对象 instanceof 类型){
        向下转型 避免出现类型转换异常
     }
            

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值