Javascript有重写吗?
JavaScript中有重写。有时子类并不想原封不动地继承父类的方法,而是想作一定的修改,这就需要采用方法的重写。方法重写又称方法覆盖。
JavaScript中通过覆盖原有方法进行重写:
<font face="Arial"><</font>html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<script>
function myblur () {
alert("1、离开");
}
function bindEvent(func){
myblur = func;
}
function myonclick() {
bindEvent(function(){
alert("天啊!myblur方法被覆盖了!");
});
}
</script>
</head>
<body>
<input type="text" onblur="myblur()" value="光标选中然后光标离开会调用myblur()方法"/>
<input type="button" onclick="myonclick()" value="覆盖myblur()" />
注:覆盖myblur()后,再次光标选中输入框然后再离开
</body>
</html>关于重写:
1、必须是在继承里
2、方法名、参数个数和参数类型 都必须相同
3、jdk1.5以后,返回值类型可以与父类相同,也可以与父类不同,但是要求返回值类型是父类的子类。如: 父类的返回值类型是Object类,子类的返回值可以是Object类的子类比如String
4、派生类重写的方法的访问权限不能低于基类的权限
5、派生类抛出的异常应该和基类相等或比基类更小
本文内容仅供个人学习、研究或参考使用,不构成任何形式的决策建议、专业指导或法律依据。未经授权,禁止任何单位或个人以商业售卖、虚假宣传、侵权传播等非学习研究目的使用本文内容。如需分享或转载,请保留原文来源信息,不得篡改、删减内容或侵犯相关权益。感谢您的理解与支持!