m0_73997865 2023-02-15 20:11 采纳率: 100%
浏览 39
已结题

Java接口变量调用

想请教各位大师,
若在A类别里实现接口,
在该类里可以直接调用该接口变量;

但若是在main测试类创建该A类对象,
要调用该接口变量时,必须得接口名.变量才能进行调用,
但照理说A类别当初设计时已经实现接口了,为什么创立对象后就不能直接调用接口里的变量呢?

烦请各位神人帮忙解惑,
感激不尽!

  • 写回答

3条回答 默认 最新

  • 社区专家-Monster-XH 2023-02-15 20:20
    关注

    在Java中,一个类实现一个接口意味着该类要实现接口中的所有方法,并且该类可以被当做接口类型来使用。当你在A类中实现接口时,你可以直接访问该接口的变量和方法,因为A类已经实现了该接口。

    然而,在创建A类的对象时,如果你将其声明为A类类型,那么你只能访问A类中定义的成员变量和方法。这是因为在Java中,一个对象的类型决定了它可以访问哪些成员变量和方法。因此,在你的main测试类中创建A类的对象时,你只能访问A类中定义的成员变量和方法。

    如果你想访问A类实现的接口中的变量和方法,你需要将对象声明为接口类型。例如,假设你的接口名为MyInterface,你可以这样创建A类对象:

    MyInterface a = new A();
    
    
    

    然后你就可以通过a对象来访问MyInterface中定义的变量和方法了。

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

报告相同问题?

问题事件

  • 系统已结题 2月24日
  • 已采纳回答 2月16日
  • 修改了问题 2月15日
  • 请提交代码 2月15日
  • 展开全部

悬赏问题

  • ¥15 无源定位系统的时差估计误差标准差
  • ¥15 请问这个代码哪里有问题啊
  • ¥20 python--version在命令端输入结果Python is not defined怎么办?还有pip不是exe格式是不是没安装成功?
  • ¥15 通过GaussianView进行结构微调消除虚频
  • ¥15 调用transformers库
  • ¥15 由于导出的数据名字中带有/,导致Matlab打不开,怎么办?
  • ¥15 新硬盘安装的程序总是崩溃,提示遇到错误
  • ¥15 openpcdet自制数据集评估bev精度和3d精度相同
  • ¥15 excel 上下按钮 显示行
  • ¥20 云卓h12pro 数传问题