首先会按照类->变量->方法的顺序进行阐述
1.类
1.1外部类
只能有一个用public修饰且与文件名相同的java类
外部类只能有一个使用public
只能使用默认的default修饰符进行修饰,可以使用final(不接受继承),不可以使用static修饰
1.2内部类
什么修饰符都可以使用
内部类使用的修饰符
内部类使用方式1.在本类中
本类中
2.在其他类中:遵循修饰符的权限逻辑
2.变量
2.1 类变量(用static修饰的变量实例变量--位于方法外)
遵循修饰符权限,只是访问时可以直接加上类名访问
2.2实例变量(位于方法外)
变量的声明
同一个包下的类访问
同一个包下的访问时public protected default修饰的变量都可以
不同包下的类访问
不同包下的访问只有public可以
不同包下的子类重载父类的方法
可以访问除了private default的变量,而且不用新建父类对象
2.3局部变量(位于方法体中)
局部变量
因为局部变量随着方法的调用结束生命周期也结束了,所以不需要修饰符。不可以使用static,可用final修饰
3.方法
同一包下的访问
除了private之外的都可以访问
不同包下的访问
除了public其他都不能访问
不同包下的子类访问
可以看到直接调用的话,protected和public都可以使用,但是如果用父类的对象的话和其他类没有区别!
网友评论