JAVA访问控制变量、类变量、类方法
2016-01-02 10:08
267 查看
1.私有:同类中
2.默认:同包中的类
3.保护:同包中的类 子类中(继承性)
4.公有:无范围
创建子类并覆盖方法时,必须考虑原来方法的访问控制:
作为通用的规则,覆盖方法是,新方法的访问控制不能比原来的方法的更严格,但可以更松。
涉及方法的访问控制:
1.在超类中被声明为公有(public)的方法在子类中必须也是共有的(public);
2.在超类中被声明为保护(protected)的方法在子类中可以是保护(protected)的或公有的(public),但不能为私有。
3.在超类中没有访问控制的方法在子类中其访问控制可以更严格,也可以跟宽松。
类变量适用于整个类,是作为用于同一种类的不同对象之间共享信息或记录类级信息的。
类方法可以被任何类的实例使用,也可被其它类使用。与实例方法不同,调用类方法不需要有类的对象。
实例方法只能在对象中运行,而不能在类中运行。
不同于实例方法,类方法不能被继承,因此在子类中不能覆盖超类的类方法。
大多数操纵或影响特定对象的方法都应定义为实例方法,那些提供通用功能,不直接影响特定对象的方法应声明为类方法。
相关文章推荐
- 对Java方法内部使用this访问成员变量的深入理解
- Java 声明和访问控制(三) finalize方法 成员访问修饰符
- jsp:synchronized方法控制对类成员变量的访问(实例)
- Adnroid ndk 中jni访问java方法、对象、成员变量
- 为什么 Java 与 Python 在对待成员变量的访问控制方式截然相反?
- java多线程的共享变量访问控制实例
- 内部类访问外部类的变量必须是final吗,java静态方法中不能引用非静态变量,静态方法中不能创建内部类的实例
- Java通过反射访问私有成员变量和私有方法
- 【Java】内部类访问的外部变量定义成final (数据保持一致,外部修改后无法通知内部,编译的时候会通过构造方法传进来) Java内部类一般访问不了外部变量
- 面试题:说说Java中接口、类、成员变量、成员方法、构造方法有哪些访问修饰符和他们的作用范围
- Java中同一个类下一个方法怎样访问另一个方法下的变量
- 【java基础】变量和方法的访问权限
- JAVA 方法内部类为何只能访问外部final类型变量
- java成员变量和方法的public等访问限定符的访问权限
- Java中方法和成员变量的访问控制
- 【java performance】让访问实例内变量的getter/setter方法变成”final”
- Java反射访问私有变量和私有方法相关搜集
- java中实例变量、类变量以及构造方法的加载顺序
- 成员变量或者成员方法的访问控制
- java 父子实例的内存控制 继承变量和继承方法的区别