Java与JavaScript中类的静态方法与实例方法

本文详细对比了JavaScript和Java中类的静态方法与实例方法的区别,包括静态属性与实例属性的访问方式。通过具体代码示例,展示了两者在访问静态与实例成员时的不同之处。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在JavaScript中,类有静态方法和实例方法之分。静态方法就是可以通过类直接访问的方法,不用声明类实例来访问;实例方法则不能通过类直接访问,必须要通过类声明的实例来访问。静态属性和实例属性也类似。
代码示例:
HelloWorld = function(){};
HelloWorld.prototype = {
name: "helloworld", //实例属性
hello: function(){alert(this.name)} //实例方法
};

HelloWorld.age = 0; //静态属性
HelloWorld.sayHi = function(){alert("Hi, world!")}; //静态方法

var hello = new HelloWorld();

hello.name; //正确
hello.hello(); //正确
hello.age; //错误
hello.sayHi(); //错误
HelloWorld.name; //错误
HelloWorld.hello(); //错误
HelloWorld.age; //正确
HelloWorld.sayHi(); //正确


但是,在java中,类的静态方法和实例方法以及静态属性和实例属性与JavaScript稍有不同。
java中,通过类或类实例都可以访问静态方法和静态属性(用static修饰的方法和属性);实例方法和实例属性只能通过实例访问。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值