zoukankan      html  css  js  c++  java
  • Java第11次作业:什么是继承?继承的好处?什么是覆写?super()?构造代码块?子父类初始化顺序? 抽象类能用final声明吗?final关键字声明类 方法 变量以及全局常量?抽象类的构造方法?

    什么是继承?

    继承是以父类为基础,子类可以增加新的数据或新的功能。子类不能选择性地继承父类。这种技术使得复用以前的代码非常容易。

    JAVA不支持多继承,单继承使JAVA的继承关系很简单,一个类只能有一个父类,易于管理程序,同时一个类可以实现多个接口,从而克服单继承的缺点。

    继承好处?

    1、这种技术使得复用以前的代码非常容易。

    2、让类与类之间产生关系。

    3、没继承没多态。

    什么是覆写?

    子类方法名及参数类型、位置、数量都与父类中的方法名相同。

    高权限可覆写低权限,private和static无法被覆写。

    super关键字?

    在子类构造方法第一行隐藏这一句super(),作用是实例化子类前先实例化其父类。

    构造代码块?

    直接在类中定义且没有加static关键字的代码块称为{}构造代码块。构造代码块在创建对象时被调用,每次创建对象都会被调用,并且构造代码块的执行次序优先于类构造函数。

    子父类初始化顺序?

    子父类顺序(1)开辟空间都为0(2)父类初始化不管值(3)成员变量赋值的显示初始化(4)构造代码块(5)子类初始化

    继承 抽象类能用final声明吗?


    final关键字声明类 方法 变量以及全局常量?


    抽象类不能实例化,可以有构造方法吗?

    package com.swift;
    
    public abstract class A {
        private String name;
        public A(String name) {
            this.name=name;
        }
        public String getName() {
            return this.name;
        }
        public abstract void fun();
    }
    
    package com.swift;
    
    public class B extends A {
        //抽象类不能实例化
        public B(String name) {
            super(name);
        }
        public void fun() {
            System.out.println(super.getName());
        }
    
    }
    
    package com.swift;
    
    public class DemoAB {
    
        public static void main(String[] args) {
            B b =new B("悟空");
            b.fun();
        }
    }

     通过子类的super();调用构造方法

  • 相关阅读:
    深入解析 float
    解决 css 浮动后 父元素高度失效问题
    高性能 Socket 组件 HP-Socket v3.2.1-RC1 公布
    基于lucene.net 和ICTCLAS2014的站内搜索的实现1
    史上最简单的个人移动APP开发入门--jQuery Mobile版跨平台APP开发
    【OpenCV新手教程之十三】OpenCV图像金字塔:高斯金字塔、拉普拉斯金字塔与图片尺寸缩放
    栈模拟队列 队列模拟栈
    状态机的两种写法
    Hadoop-2.2.0中文文档—— MapReduce 下一代--容量调度器
    OpenGLES 与 WebGL 中顶点属性的组织格式的误解
  • 原文地址:https://www.cnblogs.com/qingyundian/p/7736957.html
Copyright © 2011-2022 走看看