精华内容
下载资源
问答
  • Java多态之父类调用子类的方法//多态的体现import javax.print.attribute.standard.RequestingUserName;import java.util.Scanner;public class testfather {public static void main(String[] args){Animal a = new...

    package test1;

    Java多态之父类调用子类的方法//多态的体现

    import javax.print.attribute.standard.RequestingUserName;

    import java.util.Scanner;

    public class testfather {

    public static void main(String[] args)

    {

    Animal a = new fish(); //父类对象被赋以子类类型

    /*Animal a;

    fish b = new fish b;

    a= b

    ; //向上转型,不丢失精度

    a.talk();*/ //可达到相同效果

    a.talk(); //fish覆写animal talk方法

    Animal c = new bird();

    //C.talk2(); //不能实现,因为animal中没有此方法,必须向下转型

    bird b = (bird)c; //如果不进行转换,父类无法看到子类新扩充的方法

    b.talk2();

    }

    }

    class Animal

    {

    public void talk() //如果父类方法不想被覆写,可改为public

    static

    void talk()

    {

    System.out.println("walk");

    }

    }

    class fish extends Animal

    {

    public void talk()

    {

    System.out.println("swim");

    }

    }

    class bird extends Animal

    {

    public void talk()

    {

    System.out.println("fly");

    }

    public void talk2()//父类中没有此方法,调用必须进行强制转换,向下转型。

    {

    System.out.println("i am a bird");

    }

    }

    展开全文
  • 父类能调用子类的方法吗?答:能。...● 父类调用子类的静态方法。案例展示:package com.ywq;public class Test2{public static void main(String[] args){Son son = new Son();Father father=new...

    父类能调用子类的方法吗?

    答:能。

    怎么做?

    ● 把子类传递到父类的有参构造中,然后调用。

    ● 使用反射的方式调用,你使用了反射还有谁不能调用的?!

    ● 父类调用子类的静态方法。

    案例展示:

    package com.ywq;

    public class Test2{

    public static void main(String[] args)

    {

    Son son = new Son();

    Father father=new Father(son);

    father.fun1();

    father.fun4();

    }

    }

    class Father{

    public Son son;

    public Father(Son son){

    this.son=son;

    }

    public Father() {

    }

    public void fun4(){

    //方法3:使用反射的方式调用子类方法

    try {

    Class cls=Class.forName("com.ywq.Son");

    Son son=(Son) cls.newInstance();

    son.fun2();

    } catch (Exception e) {

    e.printStackTrace();

    }

    }

    public void fun1(){

    //方法1:把子类传递到父类的有参构造函数中,然后调用。

    System.out.println("我是父类的方法");

    son.fun2();

    //方法2:父类调用子类的静态方法。

    Son.fun3();

    }

    }

    class Son extends Father{

    public static void fun3(){

    System.out.println("我是子类的静态方法");

    }

    public void fun2(){

    System.out.println("我是子类的方法");

    }

    }

    这三种都是父类直接调用子类的方法,

    好用不?好用!

    解决问题了吗?解决了!

    项目中允许使用不?不允许!

    我就一直没有搞懂为什么要用父类调用子类的方法。如果一定要调用子类,那为什么要继承它呢?搞不懂。其实这个问题可以换个角度去理解,父类建立框架,子类在重写了父类部分的方法后,再调用从父类继承的方法,产生不同的结果(而这正是模板方法模式)。这是不是也可以理解为父类调用了子类的方法呢?你修改了子类,影响了父类行为的结果,曲线救国的方式实现了父类依赖子类的场景,模板方法模式就是这种效果。

    ---------------------

    作者:温柔狠角色

    原文:https://blog.csdn.net/qq_25827845/article/details/52916513

    展开全文
  • 父类和子类的相互转换及父类调用子类的方法 父类转换为子类的前提条件是:父类引用指向子类; Parent p=new Son() Son s=(Son)p; –正确 Parent p=new Parent() Son s=(Son)p; –错误搜索 根本原因:因为继承的...

    父类和子类的相互转换及父类调用子类的方法

    1. 父类转换为子类的前提条件是:父类引用指向子类;
      Parent p=new Son()
      Son s=(Son)p; –正确
      Parent p=new Parent()
      Son s=(Son)p; –错误搜索

    根本原因:因为继承的概念就是子孙类会越来越比祖先类详细,所以可以将子孙类强制转换成祖先类,因为祖先有的行为子孙类示例都有了(重新定义的或者是默认的);但是当将祖先类示例强制转换成子孙类示例的时候,一些子孙类有的行为祖先是没有的(即使的是默认的实现也没有)

    展开全文
  • 父类调用子类类属性

    2021-03-24 23:18:48
    父类调用子类类属性,应该由子类进行初始化

    在这里插入图片描述
    父类调用子类类属性,应该由子类进行初始化

    展开全文
  • 父类 FatherClasspackage 父类子类方法调用顺序;/*** 父类* @author shundong**/public class FatherClass {private int i =0;private String name;/*** 父类无参构造*/FatherClass(){System.out.println("--父类...
  • 父类调用子类方法

    2020-04-01 14:47:11
    父类调用子类方法 子类可能会在父类的基础上增加一些方法。 简单工厂模式中,会创建出子类然后将子类的指针赋给父类。 // Factory.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include<...
  • 文章开始前,我们先抛出一个链式问题:Java中父类调用子类的方法吗?如果不可以,原因?如果可以,如何做?每种实现方式,在实际项目被允许吗?不被允许的原因有哪些?如果在实际项目中,的确有这样的特殊业务场景...
  • !... 我现在有这几个类,A B1 B2是接口,A是B1 B2的父类,B1 B2是C1 C2父类, 现在我用A a = new C1(); (a as C1).... 可以调用子类方法。如果父类不转为子类,还有什么方法父类可以访问到子类的方法。
  • Typescript实现单例之父类调用子类

    千次阅读 2018-10-22 11:48:28
    Typescript实现单例之父类调用子类 设计要求 在程序中,需要一个对象可以全局使用,并且只有一个实例 Breakpoint 类是一个可以被继承的类,然后子类必须实现 updateView函数 updateView 这个函数可以被自动调用,当窗口...
  • c#中 父类调用子类的属性、方法

    千次阅读 2016-08-17 17:50:08
    我们习惯认为,子类对父类是不可见的,或者说父类不知道子类的存在,所以父类是调用不到子类的方法、属性的,以下这种方式,可以实现父类调用子类属性、方法的功能,欢迎拍砖。。。   public class ...
  • PHP父类调用子类方法

    千次阅读 2014-11-12 12:13:59
     * 父类调用子类方法 基类   * @author ikmb   *   */  class Base {   /**   * 调用子类方法   * @author ikmb email:ikmb@163.com   * @version 创建时间:2011-7-8 下午...
  • php 父类调用子类方法

    万次阅读 2011-07-08 23:23:42
    /** * 父类调用子类方法 基类 * @author ikmb * */ class BaseApp { /** * 调用子类方法 * @author ikmb email:ikmb@163.com * @version 创建时间:2011-
  • 在spring的设计中 上层HttpServletBean的init 方法中会调用 子类FrameworkServlet 的方法 initServletBean 方法 涉及到的就是父类只想子类的方法父类方法package com.baiwang.UtilsTest.fatherinvokSon; public ...
  • Java父类调用子类

    2015-06-05 14:42:13
    因为父类根本不知道是谁要继承自己,所以一般情况下不能调用子类,但还是有特殊的情况.package com.skymr.learn; /** * 父类调子类方法 * @author skymr * */ public class SubParentTest extends ParentClass{...
  • PHP父类调用子类的protected方法

    千次阅读 2017-05-22 20:52:25
    public 表示全局,类内部外部子类都可以访问; private表示私有的,只有本类内部可以使用; protected表示受保护的,只有本类内部或子类内部或父类内部可以访问;...//父类内部调用子类的protected方法
  • python 在父类中如何去调用子类里面得函数方法呢? 如下: 用 getattr class father(): def call_children(self): child_method = getattr(self, 'out')# 获取子类的out()方法 child_method() # 执行子类的out()...
  • Python 父类调用子类方法

    千次阅读 2017-11-20 17:23:27
    class father(): def call_children(self): child_method = getattr(self, 'out')# 获取子类的out()方法 child_method() # 执行子类的out()方法class children(father): def out(self): print "hehe"ch
  • 前言本文主要给大家介绍了关于python子类调用父类函数的相关内容,Python中子类中的__init__()函数会覆盖父类的函数,一些情况往往需要在子类调用父类函数。下面话不多说了,来一起看看详细的介绍:如下例程里,?...
  • /* 多态 1.没有继承就没有多态 ...1》父类类型的变量,不能直接调用子类特有的方法,必须强转为子类类型变量后,才能直接调用子类特有的方法 Animal*aa = [Catnew]; // Animal是父类 Cat是子类 Cat*dd...
  • 今天遇到了这样一个问题,通过重载方法来设置不同的字段值, 而这个设置方法对于类外部来说...结果在调用的时候,始终调用的是父类的方法而不是子类重载的方法, 如下例: class A(): def __init__(self): ...
  • 我们可以通过参数将子类传递给父类,实现在父类调用子类方法。 实现方式有两种: 一、 基于接口 定义接口,父子类都实现接口,父类方法接收接口类型参数 特点: 结构简单,思路清晰。 基于接口,轻松应对多级继承...
  • 在java中父类调用子类中的方法

    千次阅读 2013-06-16 22:28:33
    main方法中是可以的,父类是不能调用子类 的方法的。从面向对象上来说吧。 父类先于子类存在,子类从父类中生出来,所以子类知道父类,可以调用父类方法。但父类不知道子类,子类可以任意的出生,只要你愿意,所以...
  • 父类调用子类的成员变量

    千次阅读 2018-05-26 16:55:21
    上面程序调用this.getClass()来获取this代表对象的类,将看到输出的是Derived类,这表名此时this引用代表的是 Derived对象,但接下来,程序通过this调用sub方法时,则无法通过编译,这就是因为 this的编译时类型是...
  • Python 父类调用子类方法、属性!

    千次阅读 2019-06-27 21:46:20
    A_class.py # _*_ coding:utf-8 _*_ class base(): def step(self): ...个人觉得可能是初始化父类传入的self是子类实例,导致父类执行self.xx的时候调用的是子类的方法和、属性吧。 不明其原理,望指教。
  • php父类调用子类方法

    千次阅读 2016-08-19 16:39:39
    class a { public function geta() { $str = $this->getstr($msg); return "class a and ".$msg; } public function getstr(&$msg){} ...多重继承,子类调用父类方法,父类调用子类方法;
  • Collection c = new HashSet(); c.add("hellow");...用父类调用子对象时不能调用子类中特有的方法,但是当需要调用时会很方便只需new HashSet()改成其他的子类名即可,例如可以改成new LinkList();

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 25,586
精华内容 10,234
关键字:

父类调用子类