先给你个例子吧,晚上在给你早资料
class Superclass
{
protected String x = "Super variable";
}
class Subclass extends Superclass
{
public String x = "Sub variable";
}
class Childclass extends Superclass
{
public String x = "Child variable";
}
public class Test
{
public static void main(String args[])
{
Subclass sc = new Subclass();
Superclass sp = sc;
Superclass ssp = new Superclass();
Childclass ch = new Childclass();
System.out.println(sc.x);
System.out.println(sp.x);//here
System.out.println(ssp.x);
System.out.println(ch.x);
}
}

解决方案 »

  1.   

    你是指封装而言的吧?就按我的理解说说吧,也不一定是你想要的。
    封装就是指隐藏对象中的数据或方法。变量隐藏是说限制对对象中的变量的直接访问,而是应该通过对象中的相应方法来间接地访问。同时还应注意在定义成员变量时,应给与适当的访问权限。
    public class Employee{
      protected int employeeID;  public int getEmployeeID(){
        return employeeID;
      }  public int setEmployeeID(int id){
        employeeID = id;
      }
    }