作用域的区别看下面这个链接就行
Java中private、protected、public和default的区别
由于最近需要根据源码开发东西,但有不想彻底重来,于是打算直接继承,但运行的时候通不过,这才发现了过去学习时问题
一、private
父类private修饰的属性无法被访问也无法被重载
比如这玩意:
我的解决方法是把它私有的方法和变量都copy一遍,比较笨,有好的方法麻烦说下
二、default
基本看不到default修饰的变量,所以建议不要不加访问修饰符
特别说一句,非同包下,子类无法访问其父类default修饰的属性(方法和变量)
三、protect
protect的目的是为了让子类能继承和使用这个属性和方法,而其他包的类无法访问,算是default和public直接的妥协
用于你想让类的某个属性被继承,但又不想其被随意访问