:子类中访问父类的protected方法
并且觉得很奇怪,并且认为 子类不同包中并不能访问父类的protected方法
其实这是概念错了
虽然是在子类中,但是却是使用父类的对象,调用父类的protected...方法
这是在不同包中,访问protected方法 当然是错误的
protected的含义是指子类可以访问,说的是子类直接访问父类的protected方法
而不是说子类中,可以调用父类的对象访问父类的..., 子类对象可以访问,不管是不是同一个包,而不是在子类中用父类对象访问
关于protected关键点在于:
先看下官方文档中的说明:
地址:https://docs.oracle.com/javase...,子类可以使用
子类继承了父类的protected方法,所以子类有这个方法,所以子类可以使用,但是子类是不能读取某个父类对象的保护方法的(在包外)
继承是继承的结构,跟任何具体的对象的数据没关系,所以子类中不能创建父类的对象然后调用父类的...protected方法,不能在包外访问protected方法
但是如果父类的方法是protected static的,可以在子类中创建父类对象然后调用方法
因为子类是继承的父类的,着重点在于类,继承了类的成员