ArrayList类中的removeRange(int formIndex, int toIndex)方法
- 我们的ArrayList类中的removeRange(int formIndex , toIndex)方法声明为了一个protected(受保护的方法)
这里我们做一个假设: – - 如果我们创建一个ArrayList类型的引用指向一个ArrayList类型的对象,这个时候我们可以通过这个引用访问到我们的ArrayList类中的removeRange()方法吗?
- 是访问不到的,为什么?
- 我们的受保护的方法只有在本类中,或者本包中的类中,或者不同包中的具有继承关系的类中我们才可以调用到受保护的方法,但是这个时候我们创建一个普通的类,这个时候我们的ArrayList类位于java.util包中,这个时候我们的这个创建的类显然和我们的java.util在不同的包中,因为我们这里的java.util包是java官方为我们写好的工具包,我们不能去在这个包中去创建一个类,这个时候我们的创建的这个类和我们的java.util包就一定是不同包,那么这个时候也就调用不到我们的ArrayList类中的受保护的方法,也就是调不到ArrayList类中的removeRange()方法
但是这个时候我们已经是不同包中的类了,这个时候我们想调用到这个方法就只能是创建一个类,然后让这个类继承与我们的java.util.ArrayList类,这个时候我们通过创建我们的这个继承了ArrayList类的子类的对象,通过这个对象我们就可以访问到ArrayList类中的removeRange()方法
- 但是这里我们又要注意:我们只能是在我们创建的ArrayList类的子类中访问我们的ArrayList类中的removeRange()方法
- 我们不能是在其他类中又创建一个我们的ArrayList类的子类对象,然后在其他类中通过这个对象访问,这样是访问不到的,因为这个时候我们这个对象还是在另外一个和我们的ArrayLIst类无关的类中进行的调用,所以也就是调用不到的