java题求详细解释

选出正确的选项:A实例方法可以直接调用父类的实例方法B实例方法可以直接调用父类的类方法C实例方法可以直接调用其他类的实例方法D实例方法可以直接调用本类的类方法答案是AC,... 选出正确的选项:
A实例方法可以直接调用父类的实例方法
B实例方法可以直接调用父类的类方法
C实例方法可以直接调用其他类的实例方法
D实例方法可以直接调用本类的类方法
答案是AC,找了好久找不到解释,书上也没讲,求大侠相助
展开
 我来答
掌心童话
2013-06-30
知道答主
回答量:0
采纳率:0%
帮助的人:0
展开全部
首先你要弄清楚 什么是实例方法,什么是类方法。确切地说这些选项里只有D是对的。
首先名词解释,实例方法是 非static的方法,类被实例化后,由实例调用的方法,方法的存在依赖于类对象
类方法是 static 的方法,类无需实例化,就可以被调用。方法的存在依赖于类。
A 实例方法可以直接调用父类的实例方法,错,实例方法可以直接调用父类的public 和protected的实例方法。
B 实例方法可以直接调用父类的类方法,错,任何一个类的 1,public 的类方法可以在任意地方被调用。2,protected类方法可以在任意子类方法中被调用,3,无修饰符类方法可在本包内任意方法处被调用。4,private类方法呆可以在本类中任意方法调用。
C 实例方法可以直接调用其他类的实例方法。 错,如果该其他类的实例方法是private的呢?
D 实例方法可以直接调用本类的类方法。对。看B的解释。
追问
这样的话是不是可以抛开静态非静态只看访问权限呀
追答
正确,可不可以访问到本来就是访问权限修饰符的问题,跟 静态非静态无关系啊。
小童鞋_成er
2013-06-30
知道答主
回答量:0
采纳率:0%
帮助的人:0
展开全部

您好,提问者:

    我感觉答案不是AC,而是AD。

   1、 实例方法可以直接调用父类的实例方法,使用super();

   2、实例方法可以直接调用父类的类方法,这个是不对的,因为必须new。

   3、实例方法可以直接调用其他类的实例方法,这肯定不可以啊。

   4、实例方法可以直接调用本类的类方法,这个完全是可以的,不用new就可以。

例子:

class Person{
Person(){
System.out.println("父类构造方法");
}
}
public class Hello extends Person{

 Hello(){
super();
add();
}
void add(){
System.out.println("子类的类方法");
}  

public static void main(String[] args) {
             new Hello();
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
rayregister
2013-06-30
知道答主
回答量:0
采纳率:0%
帮助的人:0
展开全部
尽信书不如无书
在可见的情况下,实例方法可以调用父类的实例方法、其他类的实例方法,本类或父类的类方法

反之,类方法是不能调用实例方法的

你可以自己写代码测试一下
追问
为什么说法不一啊,另一种回答是只看访问权限修饰符。。。
还有按你这么说的话不是四个都是对的了吗
追答
注意,我说的是在“可见”的情况下,可见也就是访问权限

严格说ABC都可能不可见,D才是可见的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
?>

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式