springboot框架中通过父类对象调用子类方法

今天刚好看到这个地方,所以学习了一下,虽然说不完全是继承关系,但是这个例子有助于我们对“父类对象调用子类方法”的理解。新建一个springboot,结构目录如下:
在这里插入图片描述

package com.example.demo.service.interFace;

public interface TaskService {
    String create();
}

package com.example.demo.service.impl;

import com.example.demo.service.interFace.TaskService;
import org.springframework.stereotype.Service;

@Service
public class TaskImpl implements TaskService {
    @Override
    public String create(){
        return "create a task!";
    }
}

package com.example.demo.controller;

import com.example.demo.service.interFace.TaskService;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

import javax.annotation.Resource;

@Controller
public class TaskController {
    @Resource
    private TaskService taskService;

    @RequestMapping("/task")
    @ResponseBody
    public String create(){
        return taskService.create();
    }

}

最后在浏览器输入:http://localhost:8080/task
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
### 回答1: 可以使用虚函数来实现父类调用子类方法,示例代码如下: ``` #include <iostream> using namespace std; class Parent { public: virtual void callChild() { cout << "Parent calling child method." << endl; childMethod(); } virtual void childMethod() { cout << "Parent's default child method." << endl; } }; class Child : public Parent { public: void childMethod() override { cout << "Child's method." << endl; } }; int main() { Parent* parent = new Child(); parent->callChild(); delete parent; return ; } ``` 在这个例子父类 Parent 定义了虚函数 callChild(),其调用了虚函数 childMethod()。子类 Child 继承了 Parent 并重写了 childMethod(),在调用 callChild() 方法时,实际上调用的是子类 Child 的 childMethod() 方法,输出了 "Child's method."。 ### 回答2: 在Python,我们可以通过继承来实现父类调用子类方法的功能。 首先,定义一个父类ParentClass,其包含一个名为parent_method()的方法: ```python class ParentClass: def parent_method(self): print("这是父类方法") ``` 然后,定义一个子类ChildClass,继承自父类ParentClass,并重写(override)了父类的parent_method()方法,并添加一个名为child_method()的子类方法: ```python class ChildClass(ParentClass): def parent_method(self): print("这是子类重写的父类方法") def child_method(self): print("这是子类自己的方法") ``` 接下来,我们创建一个父类实例和一个子类实例,并调用它们的方法: ```python parent = ParentClass() child = ChildClass() parent.parent_method() # 输出:这是父类方法 child.parent_method() # 输出:这是子类重写的父类方法 child.child_method() # 输出:这是子类自己的方法 ``` 通过使用继承,我们在父类调用子类重写的方法,并且还可以直接调用子类自己的方法。这是面向对象编程的一种常见用法,通过继承可以实现代码的重用和扩展。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值