
JAVA中对一个实例对象的跨类引用和操作
比如在一个类里实例化了一个对象,想在另外一个类里调用这同一个对象的getset方法来修改这个对象的变量值该怎么做?目的只是在不同的类里实现对同一个实例对象的操作和修改。...
比如在一个类里实例化了一个对象,想在另外一个类里调用这同一个对象的getset方法来修改这个对象的变量值该怎么做?
目的只是在不同的类里实现对同一个实例对象的操作和修改。 展开
目的只是在不同的类里实现对同一个实例对象的操作和修改。 展开
3个回答
展开全部
我的理解是有3个类,A,B,C
package com.interview;
public class A {
private int a;
public int getA() {
return a;
}
public void setA(int a) {
this.a = a;
}
}
package com.interview;
public class B {
static A aa = new A();
public static void setBA(int i){
aa.setA(i);
}
public static void main(String[] args){
B.setBA(10);
System.out.println(aa.getA());
}
}
package com.interview;
public class C {
static B bb = new B();
public static void setCA(int i){
bb.setBA(i);
}
public static void main(String[] args) {
C.setCA(20);
System.out.println(bb.aa.getA());
}
}
B,C 运行时
输出:10, 20
通过B,C改变B中aa的 a值
package com.interview;
public class A {
private int a;
public int getA() {
return a;
}
public void setA(int a) {
this.a = a;
}
}
package com.interview;
public class B {
static A aa = new A();
public static void setBA(int i){
aa.setA(i);
}
public static void main(String[] args){
B.setBA(10);
System.out.println(aa.getA());
}
}
package com.interview;
public class C {
static B bb = new B();
public static void setCA(int i){
bb.setBA(i);
}
public static void main(String[] args) {
C.setCA(20);
System.out.println(bb.aa.getA());
}
}
B,C 运行时
输出:10, 20
通过B,C改变B中aa的 a值
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
直接调用set方法就能改变变量的值啊
public class B
{
private static int a = 10;
public static int getA() {
return a;
}
public static void setA(int a) {
B.a = a;
}
}
public class C
{
public static void main(String[] args)
{
B.setA(13);
System.out.println(B.getA());
}
}
输出值为13
public class B
{
private static int a = 10;
public static int getA() {
return a;
}
public static void setA(int a) {
B.a = a;
}
}
public class C
{
public static void main(String[] args)
{
B.setA(13);
System.out.println(B.getA());
}
}
输出值为13
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
在第一个类里面写个方法把你这个实例化的对象返回出去,然后再另外一个类中引用这个方法,不知道这个思路可以不
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询