首页 > 其他分享 >继承与多态中动手动脑

继承与多态中动手动脑

时间:2022-10-10 22:22:34浏览次数:86  
标签:初始化 调用 子类 成员 动脑 多态 动手 父类 构造函数

- 子类自动拥有父类声明为public和protected的成员,这就是继承特性的体现之一。

- public:外界可自由访问
- private:外界不可访问
- protected:同一包中的子类都可以访问,另一包中的子类(派生于同一个父类)也可以访问;
- default:如果不指明任何权限,则默认同一包中的类可以访问;

 

 

 

 

 

在构建一个子类对象,自动调用父类的无参构造。先调用父类,在调用子类。

在子类中写入super调用有参时,先调用父类的无参构造,再构造无参构造。

但是super()只能写在子类构造里的第一句。

构造函数(constructor)是一种特殊的方法 。主要用来在创建对象时初始化对象, 即为对象成员变量赋初始值,总与new运算符一起使用在创建对象的语句中 。特别的一个类可以有多个构造函数 ,可根据其参数个数的不同或参数类型的不同来区分它们 即构造函数的重载。构造函数的功能主要用于在类的对象创建时定义初始化的状态。
构造一个对象,先调用其构造方法,来初始化其成员函数和成员变量。
子类拥有父的成员变量和成员方法,如果不调用,则从父类继承而来的成员变量和成员方法得不到正确的初始化。
不能反过来调用也是这个原因,因为父类根本不知道子类有神魔变量而且这样一来子类也得不到初始化的父类变量,导致程序运行出错!

标签:初始化,调用,子类,成员,动脑,多态,动手,父类,构造函数
From: https://www.cnblogs.com/daitu66/p/16777039.html

相关文章

  • 动手动脑
    引用类型vs原始数据类型“引用”一个对象的变量称为“引用类型”的变量,有时又简称为“对象变量”。例:MyClassobj=newMyClass();诸如int,float之类的变量称为“原始......
  • 动手动脑:方法覆盖
    注:方法覆盖要求子类与父类的方法一模一样,否则就是方法重载(overload)测试:1.  在子类中,若要调用父类中被覆盖的方法,可以使用super关键字。packagetest2;classGrandp......
  • 动手实验:继承条件下的构造方法调用
    packagetest2;classGrandparent{publicGrandparent() { System.out.println("GrandParentCreated."); }publicGrandparent(String......
  • 自己动手写ls命令——Java版
    自己动手写ls命令——Java版介绍在前面的文章Linux命令系列之ls——原来最简单的ls这么复杂当中,我们仔细的介绍了关于ls命令的使用和输出结果,在本篇文章当中我们用Java代......
  • 多态
    多态 多态机制的实现就是通过虚函数。 虚函数的原理  虚函数表单个类的虚函数表以上结论通过以下代码测试:运行结果: 证明内存就是如上分布。通过调用命......
  • 多态的优势和弊端
    在多态形式下,右边对象可以实现解耦合,便于扩展和维护personp=newStudent();定义方法的时候,使用父类型作为参数,可以接收所有子类对象,体现多态的扩展性与便利。1.多态的优......
  • Java封装、继承、多态、抽象、接口基础知识
    Java封装、继承、多态、抽象、接口基础知识封装面向对象三大特性:封装、继承、多态(四大特性则多一个抽象)定义把对象的属性和方法结合为一个独立的整体,并尽可能隐藏对......
  • Java语言中多态的机制
    1.方法解析Class文件的编译过程中,不包含传统编译中的连接步骤,一切方法的调用在Class文件中存储的都只是符号引用,而不是方法在实际运行时内存布局中的入口地址。这个特性......
  • 封装继承多态
    封装继承多态封装封装的意义在于保护或者防止代码(数据)被我们无意中破坏。保护成员属性,不让类以外的程序直接访问和修改。隐藏方法细节。关于对象封装的原则:......
  • 9.30动手动脑
    对于Java字段的初始化来说,共有以下几种方法:1.类的构造函数(构造方法):当创建一个对象时,其构造函数就会自动调用。构造方法必须与类名相同,无返回值。如果程序员没有定义一......