当前位置: 首页 > 知识库问答 >
问题:

使用父类和子类声明新对象的方法之一的结果

和嘉澍
2023-03-14

我有一个与Java有关的问题。

我有一个public类Parent和它的子类public类Child扩展Parent。

如果我要将一个新对象声明为

Parent p = new Child();

p能够使用Child和parent的方法吗?还是唯一的父母?

另外,将p声明为

Child p = new Child(); 

子级是否已经扩展到父级?

共有2个答案

张坚白
2023-03-14

Java继承

class Parent
{
    public void p1()
    {
        System.out.println("Parent method");
    }
}
public class Child extends Parent {
    public void c1()
    {
        System.out.println("Child method");
    }
    public static void main(String[] args)
    {
        Child cobj = new Child();
        cobj.c1();   //method of Child class
        cobj.p1();   //method of Parent class 
    }
}

输出

Child method
Parent method
龙弘盛
2023-03-14

看情况.

把它想象成一个电视遥控器和一个特定品牌的电视。

父类是较旧的Samsung模型。child类是较新的Samsung模型(并且可以做更多的事情!)。

如果您执行parent p=new Child();,则表示您希望在新三星型号上使用旧三星型号的遥控器。当然,您可以这样做,但您不会拥有所有按钮来使用child类的所有新功能。这样声明,p只能访问方法。

但是,如果您执行Child p=new Child();,那么您已经购买了一台全新的遥控器来配合您的新电视--现在您可以使用您的电视的所有功能了。p现在可以访问方法。

 类似资料:
  • 问题内容: 从子类对象调用该方法时,是否有任何优雅的方法可以使位于父类中的Java方法返回子类的对象? 我想在不使用其他接口和方法的情况下实现此功能,并在没有类强制转换,辅助参数等的情况下使用此功能。 更新: 抱歉,我不太清楚。 我想实现方法链,但是父类的方法存在问题:调用父类方法时,我无法访问子类方法… 我想我已经提出了我的想法的核心。 因此,方法应返回类的对象。 问题答案: 如果您只是在寻找针

  • 问题内容: 我有以下课程 这只是我实际架构的简化版本。最初,我不知道需要创建的人员类型,因此处理这些对象创建的函数将常规对象作为参数。 现在,我想使用此父类对象访问子类的方法。我还需要不时访问父类方法,所以 我不能 使其 抽象 。 我想我在上面的示例中简化太多了,所以这是实际的结构。 if语句显示“无法为QuestionOption找到getMultiple”。OuestionOption具有更多

  • 本文向大家介绍如何使用JSP声明来声明类的对象?,包括了如何使用JSP声明来声明类的对象?的使用技巧和注意事项,需要的朋友参考一下 声明声明了一个或多个变量或方法,您可以稍后在JSP文件中的Java代码中使用它们。在JSP文件中使用变量或方法之前,必须先声明该变量或方法。 以下是JSP声明的语法- 您可以编写与上述语法等效的XML,如下所示- 以下是JSP声明中对象声明的示例-

  • 这是一个与实现相关的问题,或者我可能想多了。假设我有一个子类继承了父类。根据我的理解,它将继承父类的方法定义,而不是构造函数。我们需要通过超级方法调用提供或编译器将提供构造函数。我们这样做的原因是,如果没有父类对象实例,我们从子类中的父类获得的方法定义将不存在。 这是否意味着,当我调用父类对象定义的方法(该方法尚未在子类中重写)时,将在父对象实例的子类内部调用?我在想,由于子类会调用父类构造函数并

  • 这是我的代码想要使用AdapterVersion(父类)的对象引用访问AdapterVer1 getAdaptObj1()的子类方法(没有类型转换)