void_fduse 2021-09-21 18:13 采纳率: 100%
浏览 37
已结题

为什么返回类型为String的成员函数必须有public在前?(java)

img


img


eclipse给出的错误原因:
Multiple markers at this line
- overrides java.lang.Object.toString
- Cannot reduce the visibility of the inherited method from Object

  • 写回答

3条回答 默认 最新

  • 普通网友 2021-09-21 18:25
    关注

    出现你这个提示的原因是因为toString()是Object中的方法,在Object中定义的是public,
    也因为在java中,默认所有对象继承Object对象,如果你要重写这个方法,那么你所定义的权限必须是大于等于pulic。

    但你换成其他Object中没有定义的方法,则不会受限于这个规则,你可以随便定义default,private,public等!

    如有疑问,欢迎来交流

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
  • [PE]经典八炮 2021-09-21 19:09
    关注

    并不是返回值是string的非得是public,而是名字是toString的函数必须是public,不信你换个名字试试

    评论
  • CSDN专家-Time 2021-09-21 18:15
    关注

    也可以是private,如果不指定,就是private

    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 9月29日
  • 已采纳回答 9月21日
  • 创建了问题 9月21日

悬赏问题

  • ¥60 PCDN如何使用宽带的电视业务通道拨号叠加带宽?
  • ¥15 遇到这种校园宽带网络应该怎么样解决?
  • ¥30 AXI VIP验证多余打印问题
  • ¥15 利用加权最小二乘法求某品牌手机价格指标,已按照总销量计算出权重,各类型号手机价格已知,如何求得价格指标?
  • ¥15 如何自制一个硬件钱包,有兴趣的朋友一起交流
  • ¥15 (关键词-聊天软件)
  • ¥15 求大家看看这个编程的编法没有思路啊
  • ¥20 WSL打开图形化程序子窗口无法点击
  • ¥15 Jupyter Notebook 数学公式不渲染
  • ¥20 ERR_CACHE_MISS 确认重新提交表单