欢迎访问悦橙教程(wld5.com),关注java教程。悦橙教程  java问答|  每日更新
页面导航 : > > 文章正文

java 访问控制符,

来源: javaer 分享于  点击 6313 次 点评:51

java 访问控制符,


对于类: 默认的:可以在同一个包中的其它类中被访问,在同一个包中被其它的类所继承。 public:可以在任何一个包中的任何一个类中被访问和继承。 //-------------------------------------------------------------------------------------------------------------------- 一个类作为整体对程序的其它部分可见,并不能代表类内的所有的域和方法也对程序的其它部分可见,前者是后者的必要条件,类的域和方法能否为其它所有类访问(含继承),还要看这些域和方法自己的访问控制符。 //--------------------------------------------------------------------------------------------------------------------- 如果一个类的构造方法声明为private,则其它类不能生成该类的一个实例。 //--------------------------------------------------------------------------------------------------------------------- 处在不同包中的子类虽然可以访问父类中限定为protected的成员,但访问这些成员的对象必须具有子类的类型或者子类的子类的类型,而不能是父类类型。 //---------------------------------------------------------------------------------------------------------------------
  同一个类中 同一个包中 不同包中的子类 不同包中的非子类
private 允许      
默认 允许 允许(子类和非子类)    
protected 允许 允许(子类和非子类) 允许(仅子类,且无法通过子类的实例访问子类继承的protected方法) 无法访问protedted方法
public 允许 允许(子类和非子类) 允许 允许(子类和非子类)
对于类成员: //--------------------------------------------------------------------------------------------------------------------- 子类可以继承父类中访问权限设定为public,protected的”默认的”的域变量及方法,但是不能继承访问权限为private的域变量和方法。 //--------------------------- 不能同时使用的访问修饰符和非访问修饰符: abstract与final不能同时修饰同一个类; abstract与private,static,final或native不能并列修饰同一个方法; abstract类中不能的private修饰的域和方法; abstract 方法必须存在于abstract类中; static 方法中不能处理非static的域。 示例代码: package pkg1;
public class Country
{
 protected String name;
 protected void value()//friendly
 {
  name="China";
 }
} //------------------------ package pkg2;
import pkg1.Country;
public class Main6
{
 public static void main(String[]args)
 {
  Country c=new Country();
  //c.value();//错误
 }
}
//子类可以继承父类中访问权限设定为public,protedted和friedly(默认的)的
//域变量和方法,但是不能继承访问权限设定为private的域变量和方法
class City extends Country
{
 void setValue()
 {
  this.value();//正确
  super.value();//正确
  Country c=new Country();
  //c.value();//错误:即访问protected成员的对象类型不能是父类类型
  City cc=new City();
  cc.value();//正确
 }
}  

相关文章

    暂无相关文章
相关栏目:

用户点评