`

proteced 作用范围

 
阅读更多

struts2 ajax 页面得不到类中的变量的值。可能是因为变量的访问权限的问题。比如:proteced

 

 

 

public,protected,private,static,什 么时候用,为什么要用,怎么用

每个类都创造了有自己的名字空间,指方法和变量可以知道彼此的存在,可以使用。
public类不但可以被同一程序包中的其它类使用,别的程序包中的类也可以使用;
变量和方法的修饰字public、protected、private:
public:任何其他类、对象只要可以看到这个类的话,那么它就可以存取变量的数据,或使用方法。

protected变量和方法:
如果一个类中变量或方法有修饰字protected,同一类、同一包可以使用。不同包的类要使用,必须是该类的子类,可以存取变量或调用。

同包的类

不同包但是是子类

private不允许任何其他类存取和调用;
当子类中的变量名与父类的相同,原来的变量被遮盖。
方法的覆盖(overriding)和重载(overloading)。子孙类中定义的方法和祖先类中某个方法同名、同参数行,则祖先类中的该方法被覆盖;方法的重载是指一个对象的多态性,即多个方法用相同的名称,但参数行不同。


final:
final在方法之前,防止该方法被覆盖;
final在类之前,标是该类不能被继承;
final在变量之前,定义一个常量。


static:
在变量或方法之前,表明它们是属于类的;
静态变量在各实例间共享,如果是public静态变量,则其它类可以不通过实例化访问它们;
静态方法称为类的方法,因此不用实例化即可调用(面向过程)
一个对象的方法可以访问对象的数据成员,尽管不属于方法的局部变量;一个类的方法只能访问自己的局部变量。

分享到:
评论

相关推荐

    php开发文档注释规范_规范_文档规范_开发规范_

    所有的文档标记都是在每一行的*后面以@开头。如果在一段话的中间出来@的标记,这个标记将会被当做普通内容而被忽略掉。 @access该标记用于指明关键字的存取权限:private、public或proteced使用范围:

    PHP文件注释标记及规范小结

    PHP 注释标记 @access 使用范围:class,function,var,define,module 该标记用于指明关键字的存取权限:private、public或proteced @author 指明作者 @copyright 使用范围:class,function,var,define,module,...

    java7hashmap源码-AnnotationDemo:注解基础知识,编译时注解和运行时注解例子

    其实不是这些标签自己起了什么作用,而且外部工具通过访问这些标签,然后根据不同的标签做出了相应的处理。这是注解的精髓,理解了这一点一切就变得不再那么神秘。 例如我们写代码用的IDE(例如 IntelliJ Idea),它...

    C++Builder (BCB)编程规范

    类中不永许写类的实现,类成员函数不超过20个,需要被外界调用的成员函数放在Public外,其余的全部放在Proteced,明确的不想让继承者修改的话放在Private中。 包含的头文件 也就是#include <VCL.h> 在头文件应该包含...

    PHP抽象类与接口的区别实例详解

    例如,某个抽象方法被声明为proteced,那么子类中的实现,就应该声明为protected或者public,而不能定义为private。 方法的调用方式必须匹配,即类型和所需参数数量必须一致,例如,子类定义了一个可选参数,而父类...

    深入PHP5中的魔术方法详解

    其规定以两个下划线(__)开头的方法都保留为魔术方法,所以建议大家函数名最好不用__开头,除非是为了重载已有的魔术方法。...这里的没有声明包括当使用对象调用时,访问控制为proteced,private的属性(即没有权限访

    疯狂内核之——内核初始化

    3.4 实模式代码go_to_proteced_mode函数 91 3.4.1 禁止可屏蔽和不可屏蔽中断 92 3.4.2 打开A20地址线 93 3.4.3 安装临时全局描述符表 99 3.4.4 第一次启动保护模式 101 4 保护模式下的内核代码 107 4.1 32位x86保护...

Global site tag (gtag.js) - Google Analytics