zoukankan      html  css  js  c++  java
  • 初步掌握java——java三大特点之二 继承

      继承这个词一眼看过去就能知道这个特点的大概,是一种基于已有类来创建新类的机制。由继承而得到的类称为子类(或派生类),被继承的类称为父类(或超类)。一个类只能有一个父类,但特殊情况object.java是所有类的父类,并且被final修饰的类不能有子类。

      根据访问权限修饰符的不同,子类可以继承父类中某些成员变量和方法,提高了代码的重用性,子类也可以添加新的成员变量和方法,这样有利于软件等的升级。父类的方法可以被重写,但要保证一些条件:  1、重写后子类中方法的权限不能小于父类中被重写方法的权限。

        2、如果父类的方法被static 和 final修饰则不能被重写。

        3、如果父类中方法的返回值为基本数据类型,则返回值类型必须相同,如果是引用类型,则返回值类型相同或是父子关系(重写的方法返回值类型是被重写方法返回值类型的子类)。

        4、父类和子类的方法名和参数列表(参数的数量及对应的类型必须相同,但是参数名可以变,一般没必要改)必须相同。

      继承又因对象可以不同产生了上转型对象和下转型对象,

        上转型对象:父类声明,子类实例化。上转型对象隐藏了子类自定义的功能和成员变量。

        下转型对象:将上转型对象还原回原来类型的对象。

        例:

            父类:package test.td;

                 public class Parent {
                      void Parent1() {
                          System.out.println("我是父类");
                    }
               }
          

            子类:package test.td;

               public class Son extends Parent {
                    void Son1() {
                          System.out.println("我是子类中的新建方法");
                     }
                    void Parent1() {
                          System.out.println("我是子类");
                    }
               }

            Main方法:package test.td;

                 public class Main {
                     public static void main(String[] args) {
                          Parent up=new Son();//上转型对象
                          up.Parent1();//结果为        我是子类
                          Son down=(Son) up;// 下转型对象
                          down.Son1();//结果为  我是子类中的新建方法
                      }
                 }




      

      

  • 相关阅读:
    捕获异常的两种方式Exception
    线程的随机性
    单例模式简单解析--Singleton 单例模式(懒汉方式和饿汉方式)
    LeetCode 116. 填充每个节点的下一个右侧节点指针
    LeetCode 129. 求根到叶子节点数字之和
    LeetCode 124. 二叉树中的最大路径和
    LeetCode 119. 杨辉三角 II
    LeetCode 118. 杨辉三角
    LeetCode 113. 路径总和 II
    LeetCode 114. 二叉树展开为链表
  • 原文地址:https://www.cnblogs.com/zzz1976/p/9524696.html
Copyright © 2011-2022 走看看