tmrd.net
当前位置:首页>>关于关于java的问题 假如接口A被B类实现了,那么实现的...的资料>>

关于java的问题 假如接口A被B类实现了,那么实现的...

A a=new B( ) 是可以, 但是不是你说那样, 他不可以调用B的方法

你不知道Java多态吗? 声明了private A a,这并没有实例化变量,只是有这么一个名字为a的变量而已,直接用a.方法的话会报空指针异常。 假如类C 实现了A接口 , 可以在后面用到a时给a 实例化 a = C c; 这样就不会报错

public class MyTest { static int factorial(int i) { if (i > 0) { return i * factorial(i - 1); } return 1; } interface F { int calcN(); } static class A implements F { @Override public int calcN() { int rtn = 0; for (int i = 1; i

B类有一个成员a,其类型为A类. 好比下面这个,C类有一个成员a,其类型为int class C { int a = 1; }

多态。子类可以继承父类的方法,也可以覆盖父类方法。原因在于对象实例中的方法表。 “方法表”是对象实例的一个内部数据结构,它保存了“方法”在方法区中的地址。 继承:子类调用父类方法,本质上是子类方法表中对应方法的指针指向了父类的方法表...

接口里面是方法的定义,内里面是方法的实现! 接口:饮料 接口方法:返回饮料的味道 类A:矿泉水 重写:矿泉水是白味的 类B:汽水 重写:矿泉水是甜的 类C:果汁 重写:果汁是水果的 接口 a = new 矿泉水(); a.味道 = 白味; a = new 汽水(...

楼主你理解的没错,是书打印错了吧, A 继承自 B 就是 A extends B B 继承自 A 才是 B extends A A extends B 就是说 B是父类 A 是子类 B extends A 则是 B 是子类 A是父类 接口A继承自另外一个接口B那当然B是父类A是子类了,所以是 A extends B...

继承不了的,你不用操心了

这一点不需要在程序执行时,而是在程序被编译的时候就定下来了。 class C extends B implements A表示扩展了B类的C类必须实现了A接口,否则编译时就会出错,根本轮不到执行。

A.a,A.b,A.c的时候就已经初始化了,即使你没有new A,而当你B类中使用完毕之后,再new A对象,数值肯定还存在,因为静态变量是全局的,而且只有一份,所以对象共用,所以不需要重新初始化了,静态变量的改变是程序运行的时间内是永久生效的。

网站首页 | 网站地图
All rights reserved Powered by www.tmrd.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com