public:这个不用说啦,公用的,谁都可以访问。
protected:这个有点搞笑,很容易搞错。在java中,protected的定义为:子类或者同一个package里面的类均可访问。经常遗忘后者。所以说java的protected比C++的限制力要弱很多。
friendly:不加任何修饰符就为friendly了。同一个package里面的类可访问,但是子类不可以。
private:这个不用说了,私有的。
protected和friendly是最容易搞错的地方,friendly的限制性要比protected的要大。一定要仔细分清。顺便提一下,在java中,父类和子类可以在不同的package中。这有点confused,也有点不合情理,可能出现某个函数同一个package的类可以访问,而子类不可以的情况,不过没计,this is rule。