给你4种吧
第一种是包内可见,第二种是私有的,第三种是公有的,最后一种是保护类。
里面是一个可见性和继承的东西。
私有就是说只能在被定义的类中使用,比如我定义了一个class A{}
那么如果里面的成员变量被定义为私有的,那么其他的外部类不能访问这个私有的变量;
如果是公有的PUBLIC则刚好相反,它可以在任何地方被任意类调用,也就是公开的成员变量,向任意的类开放,那么什么是包内可见呢?就是不加修饰符如
int a,如果定义在类里,那么就是包内可见,也就是默认的;
只有子类才可以调用其,还包括同包内(同包:JAVA里文件夹即使包,可以被同一个文件夹里调用,如果一个文件夹里写了2个JAVA文件,同时生成了CLASS文文件,那么就可以调用,用import导入),至于
protected(保护类),只能被其子类的成员方法调用,其他类,如果不是这个类继承来的,那么就不能被调用,知道吗?
好了,总结下:
1。看区别,一继承,二可见性
2.看作用:private可见性最烂,保护性最好,public刚好相反,
其它2个各有千秋。
就这么多了,都是我上课学到的,鄙人不才,还忘多多批评指正!!
这是个典型的面向对象的问题。
首先用一个Person类来举例。
有一个Person类,这么个结构:
public void Person(){
priate String name="小强";//定义类变量
pribate String age="15";
public void playFootBall(){//定义类方法
}
.....其他方法,比如Setter和Getter方法
}
有这个类后,就可以创建一个对他的引用。
比如: Person personOne = new Person();
Person personTow = new Person();
现在出现了两个Person对象,那么这两个对象都有name和age属性,playFootBall方法。但是,personOne 和personTow 虽然都叫小强,都是15岁,但是他俩可不是一个人,绝对不是,可能一个在北京,一个在吉林。
他们都有playFootBall()方法,但是这个方法的引用是因人而异的。比如他们是两个人自身的爱好。可以这个方法加上动作。然后保存的时候每个不同的对象就有不同的动作了。
调用的时候: personOne.playFootBall(),可以制定一个返回类型。
通俗的讲,
JAVA 中定义类变量和类方法有什么用处就是创建不同的对象,去保存不同的值,实现不同的功能(方法)。
三个访问限定符private、public和protected提供了多种方法,以便生产这4类可见度所要求的多级别访问。表9-1总结了相互间的关系。
表 9-1 类成员访问
private 没有限定符 protected public
同一类中可见 是 是 是 是
同一包中对子类可见 否 是 是 是
同一个包中对非子类可见 否 是 是 是
不同包中对子类可见 否 否 是 是
不同包中对非子类可见 否 否 否 是
类名前加public 要放在独立文件中以此类名为文件名。
class前面有两个修饰,一个事public和private,前面试公有的,后面是私有的