zoukankan      html  css  js  c++  java
  • 面向对象 面试题

    面象对象的三大特征:

    • 继承:extends

       作用:代码复用、传递性。  

       子类继承父类的特征和行为。子类可以有父类的方法,属性(非private)。子类也可以对父类进行扩展,也可以重写父类的方法。缺点就是提高代码之间的耦合度。

       super关键字:通过super实现对父类成员的访问。用来引用当前对象的父类。通过super显示的调用父类的有参构造,无参构造可以隐式调用

       this:用来引用当前对象,指向自己

       final:可以修饰类,方法,属性;修饰的类不能继承,修饰的方法不能重写,修饰的属性不能修改。

    • 封装:隐藏内部实现,只暴露公共行为

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

               2.  方法:封装一段特定的业务逻辑功能

       3. 访问控制修饰符:封装的是具体的访问权限

    • 多态:分为:

       1. 行为多态(所有抽象方法)体现在:

        重载:

          1) 发生在一个类中,方法名称相同,参数列表不同,方法体不同

          2)  遵循"编译期"绑定,看参数/引用的类型来绑定方法

        重写:

          1)  发生在父子类中,方法名称相同,参数列表相同,方法体不同
          2)  遵循"运行期"绑定,重写方法被调用时,看对象的类型
          3)  遵循"两同两小一大"原则:
             两同:
            -  方法名称相同
               参数列表相同
             两小:
            1.  派生类方法的返回值类型小于或等于超类方法的
                1)  void时,必须相等
                2)  基本类型时,必须相等
              3)  引用类型时,小于或等于
               2. 派生类方法抛出的异常小于或等于超类方法的-----异常之后
               一大:
                派生类方法的访问权限大于或等于超类方法的-

       2. 对象多态(所有对象)体现:

           向上造型:向上转型是自动的   Father  f  = new Children();不需要强转

           向下造型:向下转型需要强转   Children c = (Children)new Father()需要强转。让父类知道具体转成哪个子类   

  • 相关阅读:
    静态初始化块和main方法哪个先被执行?
    Java中的构造方法
    Java中的局部变量、成员变量和静态变量
    经典算法冒泡排序java版
    Java里数组的三种初始化方式
    聊天,发朋友圈可以不打字,但是表情怎么能少呢?那么如何用win10自带的微软拼音输入法打出表情呢?
    java打印实心10*10正方形, 空心10*10正方形
    安卓工程目录
    (1)开源中国android客户端源码分析
    认识电脑的开机流程与主引导分区(MBR)
  • 原文地址:https://www.cnblogs.com/677-code/p/9451330.html
Copyright © 2011-2022 走看看