java - 传递对象作为参数

标签 java function object

我有一个 java 代码,我试图通过将类的对象传递给函数来打印语句。以下是代码:

import java.io.*;

class Abc
{

    public static void print(Object o)
    {
       o.name();
    }

    public static void main(String args[])
    {
       Vendor obj=new Vendor();
       print(obj);
    }
}

class Vendor
{
    public void name()
    {
       System.out.println("The name of the customer is chandeep");
    }

}

我遇到的错误是,无法在 Abc 类中找到符号名称 ()。我知道这是一个适当的错误,但我该如何解决它!?

最佳答案

它不起作用,因为 Object 类没有 name() 这样的方法,而您正试图在 类型的引用上调用它对象

只需更改方法签名以将 Vendor 引用作为参数:-

public static void print(Vendor vendor) {
     vendor.name();
}

由于您的方法 name() 位于 Vendor 类中,并且您传递的是 Vendor 的引用,因此您不需要在您的方法中使用 Object 作为形式参数。

关于java - 传递对象作为参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13499731/

相关文章:

java - 何时为每个应用程序 java 创建多个执行程序服务

javascript - 元素函数appendchild is null错误

php - 什么是更好的 stdClass 或(对象)数组来存储相关数据?

PHP Yield,奇怪的行为

java - ArrayList 如何在恒定时间内检索数据?

java - 使用物理体编辑器进行 Libgdx Box2d 碰撞检测

java - 检查 Java-8-Stream 中两个元素的顺序

不带参数在函数内部调用函数

c - 函数定义中的指针与数组 : what is the difference between void fct1(int *p) and void fct1(int p[])?

javascript - 如何为对象的所有实例调用方法