java中如果有一个A类,怎样从b类访问a中的私有成员变量


如题

您好,提问者:

 猛丛耐   如果这个类的成员、方法定义为private只支持本类访问。

    public、protected、defualt(默认不写)继承、同包是都可以访问到的。

    可以封装成方法,对外暴露,例如:

public class Test{
    private String name;
    //提供公共的赋枝春值方法
    public void setName(String name){
        this.name = name;
    }
    //提供公共的获取方法
    public String getName(){
       return name;
   郑绝 }
}

在A类中写set方法和get方法,然后在B类中实例化A类,调用A类的get方法和set方法访问A类的私有成员变量缺吵衫a。

public class A{    
    private int a = 0;

    public void setA(int a){
      伏腔  this.a=a;
    }

    public int getA(){
        return a;
    }
}

public class B{
    public static void main(String[] args){
        A instance = new A();

    碰判    instance.setA(2);
        int a = instance.getA();

        System.out.println(a);
    }
}



在A类中给私有变量增加 get 和 set方法, 在b类中族毕通兆册芹过getxxx setxxx访问

例如:

public class A{

private String aa;

public String getAa(){return this.aa}

public String setAa(String aa) {this.aa=aa;}

}

public class B{
public static void main(String[] args){
A a = new A();
a.setA("姿渣qqqqq");
System.out.println(a.getAa());
}
}
通过A类中的set方法设置变量值,get方法获取变量

在A类中创羡旅贺建getter setter方法

private String str;

public 镇枯void 兄派setStr(String str){
    this.str = str;
}
public String getStr(){
    return str;
}