function newClass(classObj, superClass) {
if(!classObj) classObj = {};
if(typeof classObj.__construct !== "function") classObj.__construct = function() {};
var f = classObj.__construct;
f.extend = function(classObj) { return newClass(classObj, this); }
if(superClass) {
for(var i in superClass.prototype) f.prototype[i] = superClass.prototype[i];
classObj.__super = superClass.prototype;
}
for(var j in classObj) {
if(superClass && typeof classObj[j] == "function") {
f.prototype[j] = (function(func, superClass) {
return function() {
var tmpSuper = this.__super;
this.__super = superClass.prototype;
var result = func.apply(this, arguments);
this.__super = tmpSuper;
return result;
};
})(classObj[j], superClass);
} else {
f.prototype[j] = classObj[j];
}
}
return f;
}
var Class = newClass({});
分享到:
相关推荐
【标题】"newClass.zip" 是一个压缩包文件,它包含了一个基于S2SM(可能是Spring Boot + Spring MVC + Spring + MyBatis)框架构建的简单慕课系统。这个系统设计用于在线教育环境,允许用户观看课程视频、发表评论、...
1. **NewClass.swift** 或 **NewClass.m**:这是自定义类"NewClass"的源代码文件,其中包含了"wearth"类的实现,可能包括屏幕适配的方法或属性。 2. **Info.plist**:项目的配置文件,可能包含设备兼容性设置。 3. *...
【NewClass通用数据库(Access/MsSql)读取类 v1.0.rar】是一个压缩包,其中包含一个名为"NewClass"的文件,这通常是一个ASP(Active Server Pages)源码文件,旨在提供一个跨数据库平台的通用读取类。ASP是一种微软...
NewClass.java
"AndroidStudio 4.0 New Class 的坑" AndroidStudio 4.0 新建类(New Class)中存在一些坑,以下是对这些坑的总结和解决方法: 1. IMPORT BLOCK 坑 AndroidStudio 4.0 中,新建类时,会出现一个 IMPORT BLOCK ...
密洛凡·德热拉斯:The New Class——An Analysis of the Communist System (扫描版)1
标题 "a_new_class.rar_NEW_class" 暗示着我们正在处理一个与创建或更新类相关的编程主题,可能是一个新的公共静态类。在Java或类似的面向对象编程语言中,"public static class" 是一个嵌套类,它具有公共访问修饰...
`$(this).toggleClass("newClass")`则是关键部分,`this`代表当前被点击的元素(即按钮),`toggleClass("newClass")`则会添加或移除类名"newClass",具体取决于这个类是否已经存在于元素的class列表中。 `...
类是用var MyClass = newClass({...})创建的,对象是用new MyClass()创建的,所以类实际上只是对象的蓝图。 为什么 javascript 的另一个 oop-class-thingy? 因为我喜欢 php(和大多数其他语言)处理属性和方法...
Class_Test MyClass = new Class_Test(); ``` 在上面的代码中,我们使用new运算符创建了一个名为MyClass的对象,并调用了其构造函数。 New运算符也可以用于为值类型调用默认的构造函数。例如: ```csharp int myInt...
Constructor cons = classType.getConstructor(new Class[]{String.class, int.class}); Object obj = cons.newInstance(new Object[]{"lisi", 25}); System.out.println(obj); } } ``` 在上面的代码中,我们...
ClassFile cf = new ClassFile(); cf.read(di); CPInfo[] infos = cf.getConstantPool(); int count = infos.length; for (int i = 0; i ; i++) { if (infos[i] != null) { System.out.print...
例:Class_Test MyClass = new Class_Test(); 在上面的代码中,我们使用 new 运算符创建了一个名为 MyClass 的对象,并调用了其构造函数。 new 运算符也可以用于为值类型调用默认的构造函数。例如: int myInt = ...
Class_Test MyClass = new Class_Test(); ``` 这行代码创建了一个`Class_Test`类型的对象,并将其引用赋给了变量`MyClass`。`new`操作符负责调用类的构造函数(如果存在),并为类中的所有字段分配内存。 此外,`...
Class_Test MyClass = new Class_Test(); ``` 这行代码创建了一个`Class_Test`类型的对象,并将其引用赋值给`MyClass`变量。 - **初始化值类型**:对于值类型(如`int`),`new`运算符可以用来调用默认的构造函数,...
开发C# winform的基础类库 支持单表 双表 自动生成新增 删除 存档功能
var BaseClass = new Class({ testFunction: function() { alert('This function is defined in BaseClass'); } }); ``` 在这个例子中,`BaseClass`有一个名为`testFunction`的方法,它会弹出一个对话框显示指定...
constructor = clazz.getDeclaredConstructor(new Class[]{int.class,String.class,String.class}); // Object instance = constructor.newInstance(new Object[]{1, "李四", "中国"}); // System.out.println...