ITjingxinbao 2023-03-04 20:33 采纳率: 80.8%
浏览 19
已结题

java这个报错怎么改


class hello {
    public static void main(String[] args) {
        b b = new b();
        b.s(3,3,h);


    }
}


class h {
    public void print(int n) {
        System.out.println(n);
    }

    public void say() {
        print(5);
        System.out.println("我是最帅的啊");

    }
}
class b{
    String name;
    public  void s(int col,int row,char c){
        for(int i=0;i<row;i++){
            for(int j=0;j<col;j++)
                System.out.print(c);
        }
    }



}
  • 写回答

3条回答 默认 最新

  • CodeBytes 2023-03-04 20:43
    关注

    该回答引用ChatGPT

    在代码 b.s(3,3,h); 中,你尝试将一个类 h 传递给了 s 方法,但是 s 方法的第三个参数期望的是一个 char 类型,而不是一个类。

    如果你想传递一个实例 h,你需要先创建一个 h 对象,然后将其传递给 s 方法。你可以像下面这样修改代码:

    
    class hello {
        public static void main(String[] args) {
            h h = new h(); // 创建一个 h 对象
            b b = new b();
            b.s(3, 3, 'h'); // 将字符 'h' 传递给 s 方法
            h.say(); // 调用 h 对象的 say 方法
        }
    }
    
    

    现在,代码会输出以下内容:

    hhh
    我是最帅的啊
    
    

    其中,第一行是由 b.s 方法输出的,而第二行是由 h.say 方法输出的。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 3月12日
  • 已采纳回答 3月4日
  • 创建了问题 3月4日

悬赏问题

  • ¥20 sim800c模块 at指令及平台
  • ¥15 stm32开发clion时遇到的编译问题
  • ¥15 lna设计 源简并电感型共源放大器
  • ¥15 如何用Labview在myRIO上做LCD显示?(语言-开发语言)
  • ¥15 Vue3地图和异步函数使用
  • ¥15 C++ yoloV5改写遇到的问题
  • ¥20 win11修改中文用户名路径
  • ¥15 win2012磁盘空间不足,c盘正常,d盘无法写入
  • ¥15 用土力学知识进行土坡稳定性分析与挡土墙设计
  • ¥70 PlayWright在Java上连接CDP关联本地Chrome启动失败,貌似是Windows端口转发问题