java在一个类里如何在一个方法得到另一个方法的对象??
答案:2 悬赏:20 手机版
解决时间 2021-02-22 02:35
- 提问者网友:寂寞梧桐
- 2021-02-21 14:48
java在一个类里如何在一个方法得到另一个方法的对象??
最佳答案
- 五星知识达人网友:底特律间谍
- 2021-02-21 15:58
首先,你问的就不对,方法没有对象,类才有对象,你的意思应该是如果在一个方法里使用另一个类的方法。
那么你需要2个步骤,
第一,如果这2个类不是在同一个包下,那么你需要把另一个类,假设是B类,import进来,如果在同一个包下,则不用import
第二,在你的A类中的方法里,用new 关键字来得到B类的对象,比如说 B b = new B(),
然后用b.方法名()来调用B类中的方法
代码:
class A {
public void aMethod(){
B b = new B();
b.bMethod();
}
}
那么你需要2个步骤,
第一,如果这2个类不是在同一个包下,那么你需要把另一个类,假设是B类,import进来,如果在同一个包下,则不用import
第二,在你的A类中的方法里,用new 关键字来得到B类的对象,比如说 B b = new B(),
然后用b.方法名()来调用B类中的方法
代码:
class A {
public void aMethod(){
B b = new B();
b.bMethod();
}
}
全部回答
- 1楼网友:话散在刀尖上
- 2021-02-21 17:28
java内存分两种:堆内存和栈内存,普通类型分配堆内存,引用类型分配栈内存
ref r=new ref();//这时候r.i被赋值为9
之后执行r.amethod(r),这时r的引用被作为参数传递给amethod
接着amethod执行multi(r);这时r的引用又被作为参数传给multi
在multi中执行了r.i=r.i*2;这时r所指向的堆内存地址的值被改成了18(他的引用本身即地址是不会改变的)
之后amethod继续system.out.println(i);这个i是this.i,当前的this指向的是调用amethod的r,所以现在他们指向了同样的内存,最后输出18
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯