• Java编程思想学习(六) 多态


    1、Java语言的三大特性:继承、封装和多态。

            继承:复用类的一种方法,可以简省很多代码;

            封装:通过合并特征和行为来创建新的数据类型。【这种“数据类型”跟Java本身提供的8大“基本数据类型”的地位完全相同。Java通过封装这种方式来扩充数据类型。】

            多态:消除创新的数据类型之间的耦合关系。

    2、前期绑定:static和final方法都是前期绑定(在编译时绑定和执行);

    3、后期绑定:Java中除了static和final方法,都是后期绑定(前面提到过,private方法属于final方法)。

    4、多态性:

            只有后期绑定的方法具有多态性【其他的,如:前期绑定方法、域(字段)等不具有多态性】;

            换句话说就是,多态性是面向对象的特性(三大特性之一)。而Java语言并不是一门完全的或者说纯粹的面向对象语言,像静态的这些就是反对象的东西。

    5、构造器初始化

            一定会调用父类的构造器,先为父类初始化,获取父类的对象(子对象),再进行自身初始化。

    6、转型:

            向上转型:会丢失新方法;

            向下转型:需要作类型检查。

    例子:

     1 package lkl;
     2 
     3 public class Cycle {
     4        public int wheels    (){
     5            return 0;
     6        }
     7 }
     8 
     9 public class Tricycle  extends  Cycle{
    10          public int wheels(){
    11              return 3;
    12          }
    13 }
    14 
    15 public class BiCycle extends Cycle{
    16      public int wheels(){
    17          return 2;
    18      }
    19 }
    20 
    21 public class Unicycle extends Cycle{
    22        public int wheels(){
    23            return 1;
    24        }
    25 }
    26 
    27 public class RideTest {
    28          public int wheels(Cycle cy){
    29              return cy.wheels();
    30          }
    31          public static void main(String[] args){
    32              RideTest rt = new RideTest();
    33              ///根据传入的不同子类表现不同的行为,称为多态 
    34              System.out.println(rt.wheels(new Unicycle()));
    35              System.out.println(rt.wheels(new BiCycle()));
    36              System.out.println(rt.wheels(new Tricycle()));
  • 相关阅读:
    正则表达式
    Java 枚举(enum) 详解7种常见的用法
    【20170921】(Unfinished)2017暑假北京学习 day 2
    (Unfinished)2017暑假北京学习 day 2
    Openjudge NOI题库 数论4975 两只鼹鼠
    Openjudge NOI题库 数论185 反正切函数的应用
    Noip1998 提高组3 卢斯加法表
    【自己的小玩具程序】化学方程式配平【测试中】【未完成】
    Code Vs 1010 过河卒
    NOI 练手题 图像旋转翻转变换
  • 原文地址:https://www.cnblogs.com/benchao/p/5263149.html
Copyright © 2020-2023  润新知