9.23 科大讯飞前端

9.23 科大讯飞前端 20min?反正很短

问题都很简单,记得有一个不懂,单例模式怎么实现?

核心:确保只有一个实例,并提供全局访问(注意:全局变量不是单例模式!)
在单例模式的实现过程中,需要注意:

1、单例类的构造函数为公有
2、提供一个本身的动态公有成员变量
3、提供一个私有的动态工厂办法

二、实现思路
一般情况下,当我们创建了一个类,本质是构造函数,可以通过new关键字调用构造函数进而生成任意多的实例对象。

但:单例模式要实现的是,不管我们尝试去创建多少次,都只返回第一次所创建的那唯一一个实例
;要实现这一点就需要构造函数,具备判断自己是否已经创建过一个实例的能力


单例模式作为泛滥设计模式中最简略的一个设计模式,为了保障某个类只存在一个实例,这个类称为单例类,它提供全局拜访的办法。在单例类的外部实现只生成一个实例,同时它提供一个动态的工厂办法,让客户能够应用它的唯一实例;为了避免在内部对其实例化,将其构造函数设计为公有。



全部评论
其实就是JS的闭包啊
1 回复 分享
发布于 2022-09-24 03:12 加拿大
这真的是前端吗。。。好难
点赞 回复 分享
发布于 2022-09-23 13:26 重庆
你是过了测评才面试的吗
点赞 回复 分享
发布于 2022-09-24 01:35 英国
闭包+IIFE可以创造一个变量来监听是不是已经有了一个实例了
点赞 回复 分享
发布于 2022-10-13 13:12 吉林
博主,应该说错了吧,构造器应该得私有才行吧
点赞 回复 分享
发布于 2022-10-24 14:21 江苏

相关推荐

头像
02-15 16:23
中南大学 Java
野猪不是猪🐗:签了美团真是不一样! 亲戚们都知道我签了美团,过年都围着我问送一单多少钱,还让弟弟妹妹们引以为戒,笑我爸我妈养了个🐢孩子,说从小就知道我这个人以后肯定没出息,我被骂的都快上天了
点赞 评论 收藏
分享
评论
3
13
分享

创作者周榜

更多
牛客网
牛客企业服务