public void aaa(){}
这是声明了公共的,所有成员都可以访问。
请问:以下两个程序集有什么区别。
private void aaa(){} //声明了私有的。
与
void aaa(){} //那么这个没有声明的,是属于私有的吗?
这是声明了公共的,所有成员都可以访问。
请问:以下两个程序集有什么区别。
private void aaa(){} //声明了私有的。
与
void aaa(){} //那么这个没有声明的,是属于私有的吗?
函数默认是internal的,变量应该是private
protected:访问仅限于包含类或从包含类派生的类型。
Internal:访问仅限于当前程序集。
protected internal:访问仅限于当前程序集或从包含类派生的类型。
private:访问仅限于包含类型。
Private,选择它的方法是在成员声明中包括 private 修饰符。private 的直观含义是“访问范围限定于它所属的类型”。 如果在编程过程中对类或者成员不加修饰,默认的就是这个。java的访问修饰符
1, 公有访问控制符public:
Java的类是通过包的概念来组织的,包氏类的一个松散的集合。处于同一个包中的类可以不需要任何说明而方便的互相访问和引用,而对于不同包中的类,则不行。但当一个类被声明为public时,他就具有了被其他包中的类访问的可能性,只要这些其他包中的类在程序中使用import语句引入public类,就可以访问和引用这个类。
类中被设定为public的方法是这个类对外的接口部分,避免了程序的其他部分直接去操作类内的数据,这实际就是数据封装思想的体现。
每个Java程序的主类都必须是public类,也是基于相同的原因。
用public修饰的类的域称为公共域。如果公共域属于公共类,则它能被所有的其他类所引用。public修饰符会造成安全性的数据封装性下降,所以一般应减少public域的使用。 2, 缺省访问控制符:
缺省访问控制权规定,该类只能被同一个包中的类访问和引用,而不可以被其他包中的类使用,这种访问特性又称为包访问性。
同样道理,类内的域或方法如果美育访问控制符来限定,也就具有包访问性。
简单说,定义在同一个程序中的所有类属于一个包。 3,私有访问控制符private :
用private修饰得域或方法只能被该类自身所访问和修改,而且不能被任何其他类(包括该类的子类)来获取和引用。private修饰符用来声明那些类的私有成员,它提供了最高的保护级别。 4,保护访问控制符protected :
用protected修饰的成员变量可以被三种类所引用:该类自身、与它在同一个包中的其它类、在其他包中的该类的子类。使用protected修饰符的主要作用是允许其他包中该类的子类来访问父类的特定属性。 5,私有保护访问控制符 private protected :
用private protected修饰的成员变量可以被两种类访问和引用,一种是该类本身,一种是该类的所有子类。把同一个包内的非子类排除在可访问的范围之外,使得成员变量更专于具有明确继承关系的类,而不是松散地组合在一起的包。