caller
返回一个对函数的引用,该函数调用了当前函数。
functionName.caller
functionName 对象是所执行函数的名称。
说明
对于函数来说,caller 属性只有在函数执行时才有定义。 如果函数是由 Javascript 程序的顶层调用的,那么 caller 包含的就是 null 。
下面的例子说明了 caller 属性的用法:
以下是Javascript代码:【运行代码】【复制代码】 function callerDemo() {
if ( arguments.caller) {
var a= callerDemo.caller.toString();
alert(a);
} else {
alert("this is a top function");
}
}
function handleCaller() {
callerDemo();
}
handleCaller();
function calleeDemo() {
alert(argu...
在以前的ASP.NET 1.x版本中,设置为ReadOnly的TextBox控件在客户端更改了值后,在服务器端仍然可以得到修改后的值,但在ASP.NET 2.0中,这种做法已经限制。这是为了提高应用程序安全性所考虑的。下面就是TextBox控件获得数据的内部方法,由此可以看出ReadOnly的限制:
protected virtual bool LoadPostData(string postDataKey, NameValueCollection postCollection)
{
base.ValidateEvent(postDataKey);
string text1 = this.Text;
string text2 = postCollection[postDataKey];
if (!this.ReadOnly && !text1.Equals(text2, StringComparison.Ordinal))
{
this.Text = ...
我们开发出来的控件一般都需要跟使用控件的人编程人员交互,其中交互有两个途径:一个是属性还有就是事件。属性可能是简单的类型如:int、string等并不太复杂的类型,也有比较复杂的类型如:集合。
一、属性实现交互
我们还是沿用上面的例子来添加属性 PicShow示例:
public class PicShow : Control
{
private string _imgUrl;
//属性
public virtual string ImgUrl
{
get
{
return this._imgUrl;
}
set
{
this._imgUrl = value;
}
}
protected override void Render(HtmlTextWriter writer)
{
writer.AddStyleAttribute(HtmlTextWriterStyle.TextAlign, "center");
writer.Ad...
static readonly与const的变量,作用是一样的,无论访问修饰符是不是public,还是其它(private、protected、internal),变量名称一般为大写,中间以下划线。
public static readonly int MAX_HEIGHT;
public const int MIN_HEIGHT = 10;
有些程序员对大写不敏感,上例中,MAX_HEIGHT用Max_Height代替也未尝不可,甚至MaxHeight也可以。在.Net类库中,int.MaxValue与int.MinValue便是这样定义的。
const常量更确切的说是编译时常量,因为它在运行时是不存在的,在编译中所有变量引用将被实际值替掉。而static readonly...
<?php
ob_start();
session_start();
$num=0;
$dirpt = "online";
$reftime = 1;
if (is_dir($dirpt) && $dir = opendir($dirpt)) {
while (($file = readdir($dir)) !== false) {
if(strcmp($file,"..")==0 || strcmp($file,".")==0){
continue;
}
$D_[date("Y-m-d H:i:s",filemtime($dirpt."/".$file))]=$file;
$num++;
unset($cum);
}
closedir($dir);
$filename = session_id();
$fp = fopen($dirpt."/".$filename,"w");
fputs($fp,"");
fclose($fp);
$ntime = date("Y-m-d H:i:s",mktime(date("...
一个对象实例的属性是变量,就像PHP的其他变量一样。但是你必须使用->运算符来引用它们。不需要在属性前使用美元符$。
可以联用->,如果一个对象的属性包含了一个对象,你可以使用两个->运算符来得到内部对象的属性. 你甚至可以用双重引用的字符串来放置这些表达式. 下面的例子中,对象House中的属性room包含了一组Room对象。
访问方法和访问属性类似。->运算符用来指向实例的方法. 在下面的中调用getLastLogin就是。方法执行起来和类外的函数几乎相同.
如果一个类从另一类中继承而来,父类中的属性和方法将在子类中都有效,即使在子类中没有声明. 像以前提到过的,继承是非常强大的. 如果你想访问一个继承的...
本节课将介绍C#的属性,其目的包括:1.理解什么是属性2.如何实现属性3.创建一个只读属性4.创建一个只写属性属性是C#中独具特色的新功能。通过属性来读写类中的域,这具有一定的保护功能。在其它语言中,这是通过实现特定的getter和setter方法来实现的。C#的属性具有保护功能,可以让你就象访问域一样访问属性。要了解属性的用法,我们先来看看如何用传统的方法对域进行封装。1.清单 10-1. 传统的访问类的域的例子:Accessors.csusing System;public class PropertyHolder{private int someProperty = 0;public int getSomeProperty(){return someProperty;}public void setSomeProperty(int propValue){someProperty = propValue...
Final类可以有protected属性或方法吗?这是一个典型的牛角尖,一个类被声明为final,说明该类不可被继承,如果类不能被继承,那么它可以有protected的属性和方法吗? 答案是可以的,那么,这时的protected到底是什么访问权限叫呢? 一个protected的属性或方法,它可以被同一包中的类访问,或是可以被子类所访问,但是现在它不能有子类,所以,这时protected其实就和默认的访问权限完全相同,变成了同一包中的类可以访问。 package net.moon.insignificant.finalclass; final class FinalClassSuper{ protected void sayHello(){ System.out.println("Hello, world"); } } public class FinalClassDemo{ public static void m...
在Java中,软件的兼容性是一个大问题,尤其在使用到对象串行性的时候,那么在某一个对象已经被串行化了,可是这个对象又被修改后重新部署了,那么在这种情况下, 用老软件来读取新文件格式虽然不是什么难事,但是有可能丢失一些信息。 serialVersionUID来解决这些问题,新增的serialVersionUID必须定义成下面这种形式:static final long serialVersionUID=-2805284943658356093L;。其中数字后面加上的L表示这是一个long值。 通过这种方式来解决不同的版本之间的串行化问题。 提纲: ━━━━━━━━ 一、概述 二、Java串行化 三、引入版本编号 四、结束语 ━━━━━━━━ 一、概述 一个程序正式发行出去之后,如果要增加一些...
以下是Javascript代码:【复制】
<script type="text/javascript"> function imageOver(e) { e.style.border="1px solid red"; } function imageOut(e) { e.style.borderWidth=0; } </script> <img src="phplamp.gif" onmouseover="imageOver(this)" onmouseout="imageOut(this)" />CSS Style属性对照表 盒子标签和属性对照CSS语法 (不区分大小写)JavaScript语法 (区分大小写)borderborderborder-bottomborderBottomborder-bottom-colorborderBottomColorborder-bottom-styleborderBotto...
object 返回包含的对象。 offscreenBuffering 设置或获取对象在对用户可见之前是否要先在屏幕外绘制。 offsetHeight 获取对象相对于版面或由父坐标 offsetParent 属性指定的父坐标的高度。 offsetLeft 获取对象相对于版面或由 offsetParent 属性指定的父坐标的计算左侧位置。 offsetParent 获取定义对象 offsetTop 和 offsetLeft 属性的容器对象的引用。 offsetTop 获取对象相对于版面或由 offsetTop 属性指定的父坐标的计算顶端位置。 offsetWidth 获取对象相对于版面或由父坐标 offsetParent 属性指定的父坐标的宽度。 offsetX 设置或获取鼠标指针位置相对于触发事件的对象的 x 坐标。 off...
大家在delphi或c#中创建类时可以使用一个叫属性(property)的东东,可以用它来访问类的私有成员(当然是用方法控制的), 如下: public class Person { private int _age; public int Age { get { return _age; } set { if(value > 0) _age = value; } } 其好处我就不多言说了,相信各种资料说的比我解释的好,大家也很清楚. 在pb中创建对象的时候有没有这样的东东呢,我们提出疑问:属性(property)是否存在? 我找呀找,终于在朋友的帮助下找到了一个好东东,它就是indirect关键字,有了它就可以帮助我们在pb中实现属性(property )这个东东了. indirect到底怎么用呢,我们来具体操作一下吧;) 1. 创建一个类,姑且叫uo_Person吧. 2. 声明一个实例变量priva...