zoukankan      html  css  js  c++  java
  • Java基础学习之final和多态及类型转换

    finalkeyword:

         finalkeyword是终于的意思,能够修饰类,成员变量,成员方法。

             •    修饰类,类不能被继承

            •    修饰变量,变量就变成了常量,仅仅能被赋值一次。

            •    修饰方法,方法不能被重写

        

         finalkeyword面试题

            •    final修饰局部变量

                在方法内部,该变量不能够被改变,仅仅能够赋值一次。

                在方法声明上,分别演示基本类型和引用类型作为參数的情况

                基本类型。是值不能被改变

               引用类型,是地址值不能被改变。

    对象在堆内存的值是能够改变的。

          •    final修饰变量的初始化时机

                    在对象构造完成前就可以(非静态常量)

     

    权限修饰符修饰局部变量没有不论什么意义。

     

    多态:某一个事物,在不同一时候刻表现出来的不同状态。

     

    看对象时,从有往左看。

     举例:

      猫能够是猫的类型。猫 m = new 猫();

      同一时候猫也是动物的一种,也能够把猫称为动物。

      动物 d = new 猫();

     

    多态前提和体现

          •    有继承关系

         •    有方法重写

         •    有父类引用指向子类对象

     

    多态时成员訪问特点

        成员变量

               编译看左边。执行看左边

       成员方法

              编译看左边,执行看右边

        静态方法和类相关

              编译看左边,执行看左边

             所以静态方法不能算方法的重写

     

    对象的转换关系

    (1)      向上转型:在创建对象时,对象能够作为本身的类型引用,能够作为父类型的引用(将一个子类对象直接赋值给一个父类的引用变量)。

    向上转型语法:<父类型><引用变量>=new<子类型>

    实际调用的是子类的方法。

    (2)向下 转型:将父类的对象作为其子类的类型的引用(须要强制类型转换)。

                       向下转型的语法:<子类型> <引用变量> = (<子类型>)<父类型引用变量>;

    类型转换注意事项

    (1)向上,向下都必须是两个类型之间存在继承关系。

    (2)向上时,系统会自己主动进行类型转换,无强制转换。

    (3)向下时。仅仅有父类的引用变量才干转换成子类。一个父类的实例对象是不能被强制转换成子类的。

    (4)基本数据类型的转换时仅仅能是数值型的数据(包含整型,字符型,浮点型),同一时候数值型无法同布尔类型转换。

     

    多态的优点:提高代码的可维护性(由继承体现)   提高代码的扩展性

     

     

     


  • 相关阅读:
    php设计模式注册表模式
    zend studio
    java中模仿C++实现条件编译
    javascript去掉字符串空格——转
    领域模型谈实体对象和值对象
    面向对象语言的多分派、单分派、双重分派
    Java中Split函数的用法技巧
    web页面导出到Excel乱码解决
    在web项目中如何使用rdlc报表
    ASP.NET控件10个最有用的属性详解
  • 原文地址:https://www.cnblogs.com/lxjshuju/p/7144263.html
Copyright © 2011-2022 走看看