`

构造方法的继承

 
阅读更多
构造方法是一种特殊的方法,它的继承规则比较简单,而且与普通方法有较大的区别
1 无参数构造方法的构造方法示例
class hasConstructor{
protected int x=100;
public void showMsg(){
System.out.println("this is a method in ancesstor");
}
public hasConstructor(){
System.out.println("this is a constructor in ancestor without parameter");
}
public hasConstructor(int ix){
System.out.println("this is a constructor in ancestor with parameter");
}

}
下面这个子类会自动调用不带参数的构造方法
public class inheritConstruct_1 extends hasConstructor{
   public static void main(String args[]){
         inheritConstruct_1 oa=new inheritConstruct_1 ();
}
}
在类inheritConstruct_1 中并没有定义不带参数的构造方法,但调用的是父类的不带参数的构造方法,这看上去是一种继承,实际上系统是为子类添加了一个不带参数的构造方法,而子类这个构造方法又会自动调用父类无参的构造方法。
2 带参数的构造方法的继承
带参数的构造方法不会被子类继承,也不会自动调用
public class inheritConstruct_1 extends hasConstructor{
   public static void main(String args[]){
         inheritConstruct_2 oa=new inheritConstruct_1(100);
         //错误,试图调用不带参数的构造方法,它没有被继承下来
}
}

3 无参数构造方法的覆盖
首先明确一点带参数的构造方法不会被继承,也不存在覆盖的问题,因此只有无参的构造方法才存在覆盖这个问题,但是由于构造方法必须与所在的类同名,而子类的名称和父类不同,因此构造方法名字也显然不同,所以这种覆盖和普通方法的覆盖相比,无论从形式上还是从执行方法上都有很大的区别
分享到:
评论

相关推荐

    计算机前端-核心编程.视频07构造方法继承.avi

    计算机前端-核心编程.视频07构造方法继承.avi

    java面试题静态加载顺序构造方法

    Java中的继承与静态static等的执行先后顺序的面试题 java面试题静态加载顺序构造方法 ...2、调用类的构造方法时先调用父类的构造方法,在调用子类的构造方法 3、类初始化时,先初始化类的属性成员,在执行构造方法。

    构造方法JAVA构造方法

    Java构造方法是面向对象编程中的一个关键概念,用于初始化新创建的对象。在Java类中,构造方法是一个特殊的方法,它的名字...在实践中,要灵活运用构造方法的重载、`this`关键字以及与继承的关系,以满足各种编程需求。

    java构造方法

    在类的继承结构中,构造方法的调用顺序遵循自底向上的原则,即从最底层的子类开始,逐级向上调用父类的构造方法,直到到达最顶层的基类(通常是`Object`类)为止。这一过程确保了所有层次上的初始化逻辑都被正确执行...

    java中的继承(子类调用父类构造方法还不懂).doc

    Java 中的继承(子类调用父类构造方法还不懂) Java 中的继承是指一个类可以继承另一个类的属性和方法,这样可以实现代码的复用和提高开发效率。在 Java 中,继承使用关键字 `extends` 来实现。 Java 中继承的注意...

    java 构造方法的资源

    当一个类继承自另一个类时,子类的构造方法可以使用`super`关键字调用父类的构造方法,确保父类的状态得到正确初始化。例如: ```java public class Student extends Person { private String major; public ...

    java 实现接口和继承关系

    继承关系中的类同样可以定义自己的普通方法和构造方法。例如,在上面的`Cat`类中,我们可以添加一个`meow()`方法来表示猫的叫声,并且可以通过构造方法初始化猫的一些初始状态,如名字、年龄等。 ### 接口与继承的...

    第十章 C#继承 派生类 派生类的构造方法.docx

    C#继承和派生类的构造方法 在C#中,继承是面向对象编程的基本概念之一。继承是指一个类可以继承另一个类的成员字段和函数,从而实现代码的复用和扩展。 在C#中,我们可以通过两种方式实现继承,即实现继承和接口...

    java继承例题

    【例 4.2】:构造方法继承 在这个例子中,我们定义了两个类:A和B。类B继承自类A,并继承了类A的构造方法。 在main方法中,我们创建了一个B类的对象,并访问了它的成员变量和成员方法。 【例 4.3】:访问控制 在...

    java学习笔记(构造方法及继承)

    内容为本人在学习java构造方法及继承部分时整理的笔记,内容为构造方法及继承基础知识

    Java 构造方法

    Java 构造方法是编程语言中的一个重要概念,特别是在面向对象编程中,如Java。它们是类的特殊方法,用于初始化新创建的对象。当一个对象被创建时,构造方法会被自动调用,为对象的成员变量赋值,进行必要的设置,...

    java 子类构造方法

    在Java编程语言中,子类继承父类时,构造方法起着至关重要的作用。它们用于初始化对象,并在创建新实例时执行特定的设置步骤。理解如何在子类中使用构造方法是掌握面向对象编程的关键部分。本文将深入探讨Java子类...

    java复习与练习答案(老师给的答案).docx

    4. 构造方法继承:子类可以继承父类的非私有构造方法,但不能直接调用。如果子类没有定义构造方法,它将自动拥有一个默认的无参构造方法。子类构造方法可以使用super关键字调用父类的构造方法,但这不是强制性的。...

    类继承构造方法super()调用可以吃吗

    ### 类继承构造方法super()调用解析 在Java编程语言中,类的继承是一个非常重要的概念,它允许我们创建一个新类(子类)来继承现有类(父类)的属性和方法。本文将深入探讨Java中如何通过`super()`关键字来调用父类...

    C#入门资料

    7. **构造方法继承与调用**: - 子类的构造方法可以调用父类的构造方法,使用`base`关键字指代父类的构造方法。 8. **多态**: - 多态允许不同的对象执行相同的方法,但根据对象的实际类型执行特定的实现。 - 虚...

    构造方法11_2.zip

    在编程领域,构造方法是面向对象编程中的一个重要概念,它在创建对象时起着...在实际编程中,我们需要根据具体需求灵活运用构造方法的各种特性,如构造方法的重载、继承和内部调用,以实现对象的正确初始化和状态设置。

    Java中构造方法的深入研究与探讨.pdf

    本文探讨了 Java 中构造方法的概念、特点和应用,通过对构造方法的深入研究和探讨,阐述了其在继承和设计模式中的重要作用。 知识点一:构造方法的概念和特点 构造方法是 Java 中一个特殊的方法,它用来初始化对象...

    JAVA语言中构造方法的继承与重载探讨.pdf

    JAVA语言中构造方法的继承与重载探讨

    详解 Java继承关系下的构造方法调用

    Java继承关系下的构造方法调用详解 Java继承关系下的构造方法调用是Java语言中一个非常重要的概念,它关系到类的继承和对象的实例化。在Java中,创建一个类的对象时,如果该类存在父类,则先调用父类的构造方法,...

    Java中的构造方法分析.pdf

    关于构造方法的继承,Java中类的继承并不包括构造方法。子类不能直接继承父类的构造方法,但它可以通过`super`关键字调用父类的构造方法。例如: ```java public class DerivedClass extends BaseClass { public ...

Global site tag (gtag.js) - Google Analytics