继承与接口的课后作业

1.动手实验:继承条件下的构造方法调用

源代码: class Grandparent {

public Grandparent()

{

System.out.println("GrandParent Created.");

}

public Grandparent(String string)

{

System.out.println("GrandParent Created.String:"+string);
}

}

class Parent extends Grandparent {

public Parent()

{

//super("Hello.Grandparent.");

System.out.println("Parent Created"); // super("Hello.Grandparent.");

}

}

class Child extends Parent{

public Child()

{

System.out.println("Child Created");

}

}

public class TestInherits {

public static void main(String[] args) { // TODO 自动生成的方法存根 Child c=new Child(); }

}

运行结果截图:

结论:

通过 super 调用基类构造方法,必须是子类构造方法中的第一个语句。

思考:为什么子类的构造方法在运行之前,必须调用父类的构造方法?能不能反过来?为什么不能反过来?

构造函数(constructor)是一种特殊的方法 。主要用来在创建对象时初始化对象, 即为对象成员变量赋初始值,总与new运算符一起使用在创建对象的语句中 。特别的一个类可以有多个构造函数 ,可根据其参数个数的不同或参数类型的不同来区分它们 即构造函数的重载。构造函数的功能主要用于在类的对象创建时定义初始化的状态。    所以说构造函数的作用,简单来说就是初始化,初始化一个新建的对象。

时间: 2024-10-12 14:57:56

继承与接口的课后作业的相关文章

继承与多肽:课后作业

class Grandparent { public Grandparent() { System.out.println("GrandParent Created."); } public Grandparent(String string) { System.out.println("GrandParent Created.String:" + string); } } class Parent extends Grandparent { public Pare

12.面向对象(继承/super/接口/抽象类)

面向对象继承与派生继承继承顺序继承原理子类调用父类的方法(super)组合接口接口的概念:接口的概念解释和使用:python中的接口:抽象类 面向对象 继承与派生 继承 什么是继承?继承是一种创建新的类的方式 class A: pass class B(A): pass 在python中,新建的类可以继承自一个或者多个父类,原始类称为基类或者超类,新建的类称为派生类或者子类 python中类的继承分为,单继承和多继承. 查看继承的方法B.__bases__ 如果没有指定基类,python的类会默

课后作业

课后作业 "类型转换"知识点考核-2 程序源代码: 1 class Mammal{} 2 class Dog extends Mammal {} 3 class Cat extends Mammal{} 4   5 public class TestCast 6 { 7      public static void main(String args[]) 8      { 9             Mammal m; 10             Dog d=new Dog();

数组课后作业

课后作业: 随机生成10个数,填充一个数组,然后用消息框显示数组,接着计算数组元素的和,将结果也显示在消息框中. 设计思路:首先使用random随机产生10个数,存储在数组中,然后使用for循环把数字存储在一个String对象中,再使用for循环求出数组中所有数字的和,最后用对话框输出内容. 程序流程图: 源程序代码: import javax.swing.*; public class Test1{ public static void main( String args[] ){ Strin

继承与接口1

下面程序输出什么: #include<iostream> using namespace std; class A { public: void virtual f(){ cout<<"A"<<endl; } }; class B:public A{ public: void virtual f(){ cout<<"B"<<endl; } }; int main() { A* pa=new A();//定义

Javascript面向对象特性实现封装、继承、接口详细案例——进级高手篇

Javascript面向对象特性实现(封装.继承.接口) Javascript作为弱类型语言,和Java.php等服务端脚本语言相比,拥有极强的灵活性.对于小型的web需求,在编写javascript时,可以选择面向过程的方式编程,显得高效:但在实际工作中,遇到的项目需求和框架较大的情况下,选择面向对象的方式编程显得尤其重要,Javascript原生语法中没有提供表述面向对象语言特性的关键字和语法(如extends.implement).为了实现这些面向对象的特性,需要额外编写一些代码,如下.

lhtjzC++征对视频教程的课后作业在哪里可以找到哦

⌒鉴闽 lhtjzC++征对视频教程的课后作业在哪里可以找到哦

异常处理---动手动脑及课后作业

动手动脑1:请阅读并运行AboutException.java示例,然后通过后面的几页PPT了解Java中实现异常处理的基础知识. 源码: import javax.swing.*; class AboutException { public static void main(String[] a) { int i=1, j=0, k; k=i/j; try { k = i/j; // Causes division-by-zero exception //throw new Exception

课后作业---字符串

一.课后作业一 1.设计思想:根据题意,首先提示输入要进行的操作:解密或加密,然后输入一个字符串,利用charAt()方法将改变的字母连接到结果上,加密:将前23个大小写字母+3,后3个-23强制转化为char:解密:后23个大小写字母-3,前3个+23.再根据结果进行改变,添加提示. 2.程序流程图: 3.源代码: package T4; //胡建峰,2016.10.25 //字串加密 import java.util.Scanner; public class Test { public s