Java中的变量和方法的访问权限问题

私有变量和私有方法

用关键字private修饰的成员变量和方法称为私有方法和私有变量。如:

class Tom{
      private float weight;
      private float w(int a,int b){
        }
}

当在另外一个类中用类Tom创建一个对象后,该对象不能访问自己的私有变量和私有方法。如:

class Zhang{
      void Z(){
          Tom cat=new Tom;
          cat.weight=23f;//非法
          cat.w(3f,4f);//非法 
      }
}

对于私成员变量和方法,只有在本类中创建该类的对象时,这个对象才能访问自己的私有成员变量和类中的私有方法。如:

public class Exp9 {
	private int money;
	//默认money
	void Exp(){
		money=2000;
	}
	//获得金钱
	private int getMoney(){
		return money;
	}
	public static void main(String[] args) {
		Exp9 exa=new Exp9();
		exa.money=1000;
		int m=exa.getMoney();
		System.out.println(m);	

	}

}

共有变量和共有方法

用public修饰的成员变量和方法称为共有变量和公有方法。如:

class Tom{
      public float weight;
      public float w(int a,int b){
      ......  
      }
}

当任何一个类中用类Tom创建了一个对象之后,该对象能访问自己的public变量和类的public方法。如:

class Zhang{
      void Z(){
          Tom cat=new Tom;
          cat.weight=23f;//合法
          cat.w(3f,4f);//合法
      }
}

友好变量和友好方法

不用private、public、protected修饰符的成员变量和方法被称为友好变量和友好方法。如:

class Tom{
      float weight;
      float w(int a,int b){
      ......  
      }
}

当在另一个类中用类Tom创建了一个对象后,如果这个类与Tom类在同一个包中,那么该对象能访问自己的友好变量和有好方法。如:

class Zhang{
      void Z(){
          Tom cat=new Tom;
          cat.weight=23f;//合法
          cat.w(3f,4f);//合法
      }
}

受保护的成员变量和方法

用protcected修饰的成员变量和方法被称为受保护的成员变量和受保护的方法。如:

class Tom{
      protected float weight;
      protected float w(int a,int b){
      ......  
      }
}

当在另一个类中用Tom创建一个对象后,如果这个类和类Tom在同一个包中,那么该对象能访问自己的protected变量和方法。如:

class Zhang{
      void Z(){
          Tom cat=new Tom;
          cat.weight=23f;//合法
          cat.w(3f,4f);//合法
      }
}

猜你喜欢

转载自blog.csdn.net/qq_20799821/article/details/102921847