静态方法的调用规则

使用静态方法时,无需实例化对象,便可以调用,对象实例不能调用对象的静态方法,只能调用实例自身的静态属性和方法

function User(){}

User.age = 26;//静态属性

User.myname = ‘fire子海‘;

User.getName =function(){//静态方法

return this.myname;

}

var user = new User();

console.log(user.getName);//TypeError: user.getName is not a function

user.supper = ‘方便面‘;

user.eat = function(){

return ‘晚餐只有‘+this.supper;

}

user.eat();//晚餐只有方便面

静态方法无法调用公有属性、公有方法、私有方法、私有属性、特权方法和原型属性

function User(){

this.myname = ‘fire子海‘;//公有属性

this.age = 26;

this.do = function(){//特权方法

return this.myname+‘学习js‘;

}

}

User.prototype.alertAge = function(){//公共方法,也叫原型方法

alert(this.age);

}

User.prototype.sex = ‘男‘;//原型属性

User.getName= function(){//静态方法

return this.myname;

}

User.getAge = function(){

this.alertAge();

}

User.getDo = function(){

return this.do();

}

//console.log(User.getName())//undefined

//console.log(User.getDo());//TypeError: this.do is not a function

//console.log(User.getAge())//TypeError: this.alertAge is not a function

连接地址http://jingyan.baidu.com/article/d5c4b52bc2f71dda570dc575.html

时间: 2024-08-10 19:02:17

静态方法的调用规则的相关文章

函数的调用规则(__cdecl,__stdcall,__fastcall,__pascal) http://blog.csdn.net/kaiwii/article/details/8500686

函数的调用规则(__cdecl,__stdcall,__fastcall,__pascal) 2013-01-14 13:51 1548人阅读 评论(0) 收藏 举报  分类: android底层(14)  c&c++(18)  Linux下如何指定调用约定(calling convention) Windows下的调用约定可以是stdcall/cdecl/fastcall,这些标识加在函数名前面,如: int __stdcall funca() 但在Linux下,如按照上面写法后,编译程序将导

驱动:中断【2】中断处理程序、中断上下文中处理延时及一些函数的调用规则(调IIC中断驱动有感)

中断处理程序.中断上下文中处理延时及一些函数的调用规则(调IIC中断驱动有感)http://blog.csdn.net/samantha_sun/article/details/6790492 1,中断处理程序中不能使用有睡眠功能的函数,如ioremap,kmalloc,msleep等,理由是中断程序并不是进程,没有进程的概念,因此就没有休眠的概念: 2,中断处理程序中的延时可以用忙等待函数来代替,如ndelay,udelay,mdelay等,这些函数在实现上本质是根据CPU频率进行一定 次数的

C++笔记018:构造函数的调用规则

  原创笔记,转载请注明出处! 点击[关注],关注也是一种美德~ 一.默认构造函数 两个特殊的构造函数 1.默认无参构造函数 当类中没有定义构造函数时,编译器默认提供一个无参构造函数,并且其函数体为空: 2.默认拷贝构造函数 当类中没有定义拷贝构造函数时,编译器默认提供一个默认拷贝构造函数,简单的进行成员变量的值复制. 二.构造函数调用规则 1.当类中没有定义任何一个构造函数时,C++编译器会提供默认无参构造函数和默认拷贝构造函数: 2.当类中定义了拷贝构造函数时,C++编译器不会提供无参构造函

关于jpa的Specification自定义函数,实现oracle的decode;以及如何在静态方法中调用注入的service

如何在静态方法中调用注入的service Public class ClassA{ public static ClassA classA; @Resource private Service service; //原理时在工程启动时加载,在静态方法前加载,这样就可以在静态方法中调用注入的方法啦 @PostConstruct public void init() { classA = this; classA.service=service; }} 关于jpa的Specification自定义函

静态方法中调用非静态方法

静态static方法中不能调用非静态non-static方法,准确地说是不能直接调用non-static方法.但是可以通过将一个对象的引用传入static方法中,再去调用该对象的non-static方法. 在主函数(static方法)中我们经常创建某个类的实例,再利用其引用变量调用它的非静态方法. //StaticMethodTest.java//A ststic method cannot call a non-static method, but we can transfer a obje

静态方法中调用实例方法的自产自销

public class SomeClass {     private string myfield = null;     public static SomeClass instance = new SomeClass();     public instranceMethod() {};     public static staticMethod() {}; }   public class AnotherClass {     public static Main()     {  

PHP 父类静态方法中调用子类静态方法

get_called_class() 获取调用该方法的类,如果是在子类中调用父类方法,则返回子类的类名. 或者用static关键字: static::class 如果有多个子类,要在父类中调用子类方法,下面代码可实现: class parent{     abstract protected static function getFunc($action);    public static function call($action){      //调用子类静态方法,唯一的方式       

转:静态方法中调用非静态方法

我们都知道,静态static方法中不能调用非静态non-static方法,准确地说是不能直接调用non-static方法.但是可以通过将一个对象的引用传入static方法中,再去调用该对象的non-static方法. 其实这个事实的应用很经常,以至于我们不去重视:在主函数(static方法)中我们经常创建某个类的实例,再利用其饮用变量调用它的非静态方法. //StaticMethodTest.java//A ststic method cannot call a non-static metho

解析C++转换构造函数(调用规则)

什么叫转换构造函数? 当一个构造函数只有一个参数,而且该参数又不是本类的const引用时,这种构造函数称为转换构造函数. 参考一下示例: // TypeSwitch.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include <IOSTREAM> using namespace std; class Complex { public: Complex()