想请教各位大师,
若在A类别里实现接口,
在该类里可以直接调用该接口变量;
但若是在main测试类创建该A类对象,
要调用该接口变量时,必须得接口名.变量才能进行调用,
但照理说A类别当初设计时已经实现接口了,为什么创立对象后就不能直接调用接口里的变量呢?
烦请各位神人帮忙解惑,
感激不尽!
想请教各位大师,
若在A类别里实现接口,
在该类里可以直接调用该接口变量;
但若是在main测试类创建该A类对象,
要调用该接口变量时,必须得接口名.变量才能进行调用,
但照理说A类别当初设计时已经实现接口了,为什么创立对象后就不能直接调用接口里的变量呢?
烦请各位神人帮忙解惑,
感激不尽!
在Java中,一个类实现一个接口意味着该类要实现接口中的所有方法,并且该类可以被当做接口类型来使用。当你在A类中实现接口时,你可以直接访问该接口的变量和方法,因为A类已经实现了该接口。
然而,在创建A类的对象时,如果你将其声明为A类类型,那么你只能访问A类中定义的成员变量和方法。这是因为在Java中,一个对象的类型决定了它可以访问哪些成员变量和方法。因此,在你的main测试类中创建A类的对象时,你只能访问A类中定义的成员变量和方法。
如果你想访问A类实现的接口中的变量和方法,你需要将对象声明为接口类型。例如,假设你的接口名为MyInterface,你可以这样创建A类对象:
MyInterface a = new A();
然后你就可以通过a对象来访问MyInterface中定义的变量和方法了。