- 设计模式-8种
ANNENBERG
笔记js模式前端
前端常见的设计模式主要有以下几种:1.单例模式2.工厂模式3.策略模式4.代理模式5.观察者模式6.模块模式7.构造函数模式8.混合模式单例模式这种设计模式的思想是确保一个类只有唯一实例,一般用于全局缓存,比如全局window,唯一登录浮窗等。采用闭包的方式实现如下:varsingle=(function(){letinstance;functiongetInstance(){//如果该实例存在,
- JS之对象精讲(一)
坤坤不会编程
精讲JSjavascript开发语言正则表达式json前端
文章目录对象的属性和访问方式对象的属性数据属性访问器属性属性的访问方式创建对象1.基于Object()构造函数2.基于对象字面量3.基于工厂方法模式4.基于构造函数模式5.基于原型对象的模式6.构造函数和原型混合模式7.基于动态原型模式对象克隆浅克隆深克隆JSON序列化和反序列化原型对象原型对象、构造函数、实例之间的关系实例属性的读取顺序重写原型对象原型链原型链的特点属性区分_proto_属性JS
- 前端面试题总结【37】:javascript对象的几种创建方式
前端老司机
工厂模式构造函数模式原型模式混合构造函数和原型模式动态原型模式寄生构造函数模式稳妥构造函数模式推荐:持续更新,致力于做一个持久的搬运工!下面是已经整理好的面试题PDF获取和相关进阶学习书籍资料地址,有需求戳一下2020前端面试题总结合集
- 设计模式
大脸猫_2e21
//构造函数模式和工厂模式的共同点都会返回一个新的引用//混合模式创造两个构造函数,一个构造函数继承另一个构造函数//闭包里面创造一个变量存储单例,返回的都是原来存储的单例//发布订阅模式,对外导出api,一般是on和fire形式,jquery里的on和trigger1.构造函数functionPerson(name,age){this.name=name;this.age=age;}Person
- JavaScript高级程序设计——读书笔记
淡水瑜
前端javascript前端html
文章目录第1章JavaScript简介第2章在HTML中使用JavaScript第3章基本概念第4章变量、作用域、内存问题第5章引用类型第6章面向对象的程序设计创建对象的设计模式1.工厂模式(FactoryPattern)(被构造模式取代)2.构造函数模式(ConstructorPattern)3.原型模式(PrototypePattern)4.组合模式(ConstructorandPrototy
- 正则表达式
云叶知秋
前端学习笔记正则表达式前端javascript
JavaScript的正则表达式有两种写法,一种是字面量模式的写法,一种是构造函数模式的写法1、字面量模式/表达式/2、构造函数模式newRegExp(‘表达式’)具体的写法如下匹配表达式.test(匹配内容)接下来我们都以字面量模式来进行举例学习第一个:hi先后输入hi,this,what等字符串,发现hi和this可以匹配,what不能匹配总结:匹配包含hi的任意字符串如果我们要严格匹配hi这
- 构造函数模式
弹力盒
/***构造函数模式*1、与工厂模式相比*a、没有显示的创建对象*b、直接将属性和方法赋给了构造函数的this对象*c、没有return语句**2、直接调用构造函数时,构造函数与普通函数无异*this指向调用该函数的最后一个对象**3、构造函数的缺点*每个方法都要在每个实例上重新创建一遍,即每个实例的同名方法都不同一个方法*即c1.speak!=c2.speak*/functionConstruc
- 6.2.2.构造函数模式
MakerChin
可以创建自定义的构造函数,从而定义自定义对象类型的属性和方法functionPerson(name,age,job){this.name=name;this.age=age;this.job=job;this.sayName=function(){console.log(this.name);}}varperson1=newPerson("Nicholas",29,"SoftwareEnginee
- JavaScript 创建对象 6 寄生构造函数模式
赵者也
通常,在前面的几种模式都不适用的情况下,可以使用寄生(parasitic)构造函数模式。这种模式的基本思想是创建一个函数,该函数的作用仅仅是封装创建对象的代码,然后再返回新创建的对象;但从表面看,这个函数又很像是典型的构造函数。下面是一个例子:functionPerson(name,age,job){varo=newObject;o.name=name;o.age=age;o.job=job;o.
- Javascript——面向对象程序设计和继承
王逵_e9b3
Javascript——面向对象程序设计和继承面向对象设计模式创建对象——单个对象字符字变量new操作符使用create//字符自变量vara={name:"wang"}//使用new操作符,构造函数模式varb=newObject()//使用create//创建一个具有指定原型且可选择性地包含指定属性的对象。varc=Object.create(Object.prototype)创建对象——多个
- Qt正则表达式使用介绍QRegExp、QRegularExpression
令狐掌门
深入浅出C++Qt开发技术qtQt正则表达式
作者:令狐掌门技术交流QQ群:675120140csdn博客:https://mingshiqiang.blog.csdn.net/文章目录QRegExp构造函数模式匹配捕获组替换检查匹配模式示例替换示例注意事项QRegularExpression主要特性基本用法创建正则表达式检查正则表达式是否有效匹配字符串捕获组全局搜索和替换使用具名捕获组遍历所有匹配项
- JavaScript中的设计模式
从明天开始好好学习前端
javascript设计模式开发语言
目录1.工厂模式2.构造函数模式构造函数中new关键字作用:3.原型模式4.组合模式JavaScript中有四种常见的设计模式,目的是为了批量创建对象为了实现继承。1.工厂模式利用工厂模式批量创建对象优点:可以批量创建对象缺点:无法区分种类,创建实例对象都是Object实例,方法冗余varsayName=function(){console.log(this.name)};//b1001funct
- 寄生构造函数模式
向布谷鸟说早安
寄生构造函数模式:https://blog.csdn.net/it_surfer/article/details/45482875赞同这篇博文讲的,寄生构造函数模式,主要是为了扩展原生对象。但是如果扩展的话,不用构造函数,不用new,也可以实现啊。为什么寄生构造函数偏偏有点像做样子似的,声明一个构造函数,还要new出来。寄生构造函数测试结果从测试结果可以看到,有种模式叫做多此一举。红宝石书美名其曰
- 初学JavaScript:js中的对象(对象+原型对象)
持久的棒棒君
js前端
文章目录js对象详解1、创建对象字面量模式创建对象构造函数模式创建对象2、访问对象访问属性访问方法3、遍历对象中的属性和属性值4、往对象中新添属性5、删除对象中的属性6、Object显示类型转换(强制类型转换)7、检查属性所属对象7.1in7.2Object.prototype.hasOwnProperty()7.3Object.prototype.propertyIsEnumerable()8、
- 创建对象的方式
陈庆香
1.字面量方式和Object方式优点:方便缺点:当需要创建很多对象的时候,会有很多重复的代码2.工厂模式优点:解决了字面量方式创建很多类型的对象问题缺点:没有解决对象识别的问题,就是很多对象的父亲都是Object3.构造函数模式4.原型模式优点:解决了对象的归属问题缺点:①.原型上的属性都是共享的,一个实列去修改了原型上的属性会影响到别的实列②.不能传参5.寄生创建对象方式6.构造函数与原型组合的
- 创建对象常见的几种方式
_MEmeNTO_
工厂模式functioncreatePerson(name,age){varo=newObject()o.name=nameo.age=ageo.sayName=function(){alert(this.name)}returno}varp1=createPerson('Joey',19)varp2=createPerson('Denise',22)缺点:没解决对象指向问题(结合下面构造函数模式
- JS对象的几种创建方式
赋帘楠霓
1)Object构造函数式2)对象字面量式3)工厂模式4)安全工厂模式5)构造函数模式6)原型模式7)混合构造函数和原型模式8)动态原型模式9)寄生构造函数模式10)稳妥构造函数模式
- 前端数据结构篇
JonasYan
栈(stack)限定仅在表尾进行插入和删除操作的线性表(一个线性表是n个具有相同特性的数据元素的有限序列,线性表中数据元素之间的关系是一对一的关系),表尾为栈顶,表头称为栈底。栈基本操作(以数组为例)1.一个空栈varStack=[];//字面量方式varStack=newArray()//构造函数模式2.清空栈1.lengthStackA.length=0;2.赋值[]StackA=[];3.s
- JavaScript的对象7种创建方式(总结)
程序媛小y
JavaScript开发语言前端javascript
文章目录ES5创建对象直接对象字面量使用内置构造函数1.工厂模式2.构造函数模式认识构造函数3.原型模式4.构造函数和原型组合模式(组合模式)5.动态原型模式6.寄生构造函数模式7.稳妥构造模式ES5创建对象直接对象字面量constobj={name:'dz',age:23}使用内置构造函数constobj=newObject()obj.name=nameobj.age=age1.工厂模式套路:通
- Javascript对象的创建的几种方法及其优缺点
嗜码
JavaScriptJavaScript对象优缺点创建工厂模式
Javascript对象的创建方法一:Object构造函数模式先创建空的Object对象,再动态添加属性/方法。varp=newObject();p.name='Mayandev';p.age=22p.setName=function(name){this.name=name;}<
- js面向对象(工厂模式、构造函数模式、原型模式、原型和原型链)
_Jyann_
JS高级面向对象原型和原型链
1.封装2.工厂模式functioncreateCar(color,style){letobj=newObject();obj.color=color;obj.style=style;returnobj;}varcar1=createCar("red","car1");varcar2=createCar("green","car2");3.构造函数模式//创建出来的对象和构造函数有紧密关联func
- OOP | 构造函数模式
鲸鲸景鲸叻
文/景朝霞来源公号/朝霞的光影笔记ID/zhaoxiajingjing图/自己画❥❥❥❥点个赞,让我知道你来过~❥❥❥❥构造函数模式单例模式、高级单例模式:优点:把描述事务的信息都放到一个命名空间中进行归类,防止全局变量污染缺点:不能批量生产工厂模式:优点:用函数来封装创建对象的细节,低耦合(减少一个一个创建对象的冗余代码)、高内聚(提高代码复用率)缺点:不清楚一个对象的类型,没有解决对象识别的问
- 前端设计模式
饥人谷_Jack
1.写出构造函数模式、混合模式、模块模式、工厂模式、单例模式、发布订阅模式的范例。//构造函数设计模式functionPeople(name,age){this.name=namethis.age=age}People.prototype.sayName=function(){console.log(this.name)}varstudent1=newPeople('Jack',18)varstu
- 组合使用构造函数模式和原型模式创建对象
asimpleday
介绍创建自定义类型的最常见方式,就是组合使用构造函数模式和原型模式。构造函数模式用于定义实例属性,而原型模式用于定义方法和共享的属性。结果,每个实例都会有自己的一份实例属性的副本,但同时又共享着对方法的引用,最大限度的节省了内存。另外,这种混成模式还支持向构造函数传递参数。如何实现functionPerson(name,age,job){this.name=name;this.age=age;th
- 前端常用设计模式
青night
前端javascript
前端常见的设计模式主要有以下几种:单例模式工厂模式策略模式代理模式观察者模式模块模式构造函数模式混合模式单例模式这种设计模式的思想是确保一个类只有唯一实例,一般用于全局缓存,比如全局window,唯一登录浮窗等。采用闭包的方式实现如下:varsingle=(function(){letinstance;functiongetInstance(){//如果该实例存在,则直接返回,否则就对其实例化if
- 一篇就够-JS对象的多种创建方式
johe_jianshu
工厂模式functioncreatePerson(name){varo=newObject();o.name=name;o.getName=function(){console.log(this.name);};returno;}varperson=createPerson('johe');缺点:对象无法识别,都指向一个原型Object,并且每个实例的getName函数的引用地址不同构造函数模式f
- 原型与原型链
饥人谷_思铭
1、构造函数构造函数模式的目的就是为了创建一个自定义类,并且创建这个类的实例。构造函数模式中拥有了类和实例的概念,并且实例和实例之间是相互独立的,即实例识别。构造函数就是一个普通的函数,创建方式和普通函数没有区别,不同的是构造函数习惯上首字母大写。另外就是调用方式的不同,普通函数是直接调用,而构造函数需要使用new关键字来调用。this.name=namethis.age=agethis.gend
- 快速了解 ES6 的类定义
海人为记
JavaScript类定义.png在ECMASCript6之前,使用构造函数模式与原型模式以及它们的组合来模拟类的行为。但是这几种策略都有自己的问题,也有相应的妥协。而实现继承也会显得非常冗长和混乱。因此,ECMASCript5新引入了class关键字来定义类,但实际上背后使用的仍然是原型和构造函数的概念。类定义类是“特殊的函数”,因此定义类也有两种方式。第一种定义类的方式是声明类。classPe
- JavaScript 对象初探--创建对象
Mr_Bobcp
JavaScriptjavascriptjs对象
目录JavaScript对象概念JavaScript类型一、js中的对象二、自定义对象属性和方法创建对象方式一、对象字面量二、内置构造函数三、工厂模式四、自定义构造函数的方法五、原型模式六、组合使用构造函数模式和原型模式七、动态原型模式八、寄生模式九、稳妥构造函数模式JavaScript对象概念JavaScript中的所有事物都是对象:字符串、数字、数组、日期,等等。在JavaScript中,对象
- JavaScript原型链污染
Elitewa
CTFweb安全javascript开发语言ecmascriptweb安全
JavaScript原型链污染一、什么是原型链污染(JS)二、前置知识2.1JS对象2.11通过类创建2.12字面量模式创建2.13构造函数模式创建2.2默认属性三、污染利用一、什么是原型链污染(JS)原型链污染(PrototypePollution)是一种安全漏洞,在JavaScript中可能会导致意外和不安全的行为。它利用了JavaScript中的原型继承机制,通过修改对象的原型链来污染或篡改
- 插入表主键冲突做更新
a-john
有以下场景:
用户下了一个订单,订单内的内容较多,且来自多表,首次下单的时候,内容可能会不全(部分内容不是必须,出现有些表根本就没有没有该订单的值)。在以后更改订单时,有些内容会更改,有些内容会新增。
问题:
如果在sql语句中执行update操作,在没有数据的表中会出错。如果在逻辑代码中先做查询,查询结果有做更新,没有做插入,这样会将代码复杂化。
解决:
mysql中提供了一个sql语
- Android xml资源文件中@、@android:type、@*、?、@+含义和区别
Cb123456
@+@?@*
一.@代表引用资源
1.引用自定义资源。格式:@[package:]type/name
android:text="@string/hello"
2.引用系统资源。格式:@android:type/name
android:textColor="@android:color/opaque_red"
- 数据结构的基本介绍
天子之骄
数据结构散列表树、图线性结构价格标签
数据结构的基本介绍
数据结构就是数据的组织形式,用一种提前设计好的框架去存取数据,以便更方便,高效的对数据进行增删查改。正确选择合适的数据结构,对软件程序的高效执行的影响作用不亚于算法的设计。此外,在计算机系统中数据结构的作用也是非同小可。例如常常在编程语言中听到的栈,堆等,就是经典的数据结构。
经典的数据结构大致如下:
一:线性数据结构
(1):列表
a
- 通过二维码开放平台的API快速生成二维码
一炮送你回车库
api
现在很多网站都有通过扫二维码用手机连接的功能,联图网(http://www.liantu.com/pingtai/)的二维码开放平台开放了一个生成二维码图片的Api,挺方便使用的。闲着无聊,写了个前台快速生成二维码的方法。
html代码如下:(二维码将生成在这div下)
? 1
&nbs
- ImageIO读取一张图片改变大小
3213213333332132
javaIOimageBufferedImage
package com.demo;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
/**
* @Description 读取一张图片改变大小
* @author FuJianyon
- myeclipse集成svn(一针见血)
7454103
eclipseSVNMyEclipse
&n
- 装箱与拆箱----autoboxing和unboxing
darkranger
J2SE
4.2 自动装箱和拆箱
基本数据(Primitive)类型的自动装箱(autoboxing)、拆箱(unboxing)是自J2SE 5.0开始提供的功能。虽然为您打包基本数据类型提供了方便,但提供方便的同时表示隐藏了细节,建议在能够区分基本数据类型与对象的差别时再使用。
4.2.1 autoboxing和unboxing
在Java中,所有要处理的东西几乎都是对象(Object)
- ajax传统的方式制作ajax
aijuans
Ajax
//这是前台的代码
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <% String path = request.getContextPath(); String basePath = request.getScheme()+
- 只用jre的eclipse是怎么编译java源文件的?
avords
javaeclipsejdktomcat
eclipse只需要jre就可以运行开发java程序了,也能自动 编译java源代码,但是jre不是java的运行环境么,难道jre中也带有编译工具? 还是eclipse自己实现的?谁能给解释一下呢问题补充:假设系统中没有安装jdk or jre,只在eclipse的目录中有一个jre,那么eclipse会采用该jre,问题是eclipse照样可以编译java源文件,为什么呢?
&nb
- 前端模块化
bee1314
模块化
背景: 前端JavaScript模块化,其实已经不是什么新鲜事了。但是很多的项目还没有真正的使用起来,还处于刀耕火种的野蛮生长阶段。 JavaScript一直缺乏有效的包管理机制,造成了大量的全局变量,大量的方法冲突。我们多么渴望有天能像Java(import),Python (import),Ruby(require)那样写代码。在没有包管理机制的年代,我们是怎么避免所
- 处理百万级以上的数据处理
bijian1013
oraclesql数据库大数据查询
一.处理百万级以上的数据提高查询速度的方法: 1.应尽量避免在 where 子句中使用!=或<>操作符,否则将引擎放弃使用索引而进行全表扫描。
2.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 o
- mac 卸载 java 1.7 或更高版本
征客丶
javaOS
卸载 java 1.7 或更高
sudo rm -rf /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin
成功执行此命令后,还可以执行 java 与 javac 命令
sudo rm -rf /Library/PreferencePanes/JavaControlPanel.prefPane
成功执行此命令后,还可以执行 java
- 【Spark六十一】Spark Streaming结合Flume、Kafka进行日志分析
bit1129
Stream
第一步,Flume和Kakfa对接,Flume抓取日志,写到Kafka中
第二部,Spark Streaming读取Kafka中的数据,进行实时分析
本文首先使用Kakfa自带的消息处理(脚本)来获取消息,走通Flume和Kafka的对接 1. Flume配置
1. 下载Flume和Kafka集成的插件,下载地址:https://github.com/beyondj2ee/f
- Erlang vs TNSDL
bookjovi
erlang
TNSDL是Nokia内部用于开发电信交换软件的私有语言,是在SDL语言的基础上加以修改而成,TNSDL需翻译成C语言得以编译执行,TNSDL语言中实现了异步并行的特点,当然要完整实现异步并行还需要运行时动态库的支持,异步并行类似于Erlang的process(轻量级进程),TNSDL中则称之为hand,Erlang是基于vm(beam)开发,
- 非常希望有一个预防疲劳的java软件, 预防过劳死和眼睛疲劳,大家一起努力搞一个
ljy325
企业应用
非常希望有一个预防疲劳的java软件,我看新闻和网站,国防科技大学的科学家累死了,太疲劳,老是加班,不休息,经常吃药,吃药根本就没用,根本原因是疲劳过度。我以前做java,那会公司垃圾,老想赶快学习到东西跳槽离开,搞得超负荷,不明理。深圳做软件开发经常累死人,总有不明理的人,有个软件提醒限制很好,可以挽救很多人的生命。
相关新闻:
(1)IT行业成五大疾病重灾区:过劳死平均37.9岁
- 读《研磨设计模式》-代码笔记-原型模式
bylijinnan
java设计模式
声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/
/**
* Effective Java 建议使用copy constructor or copy factory来代替clone()方法:
* 1.public Product copy(Product p){}
* 2.publi
- 配置管理---svn工具之权限配置
chenyu19891124
SVN
今天花了大半天的功夫,终于弄懂svn权限配置。下面是今天收获的战绩。
安装完svn后就是在svn中建立版本库,比如我本地的是版本库路径是C:\Repositories\pepos。pepos是我的版本库。在pepos的目录结构
pepos
component
webapps
在conf里面的auth里赋予的权限配置为
[groups]
- 浅谈程序员的数学修养
comsci
设计模式编程算法面试招聘
浅谈程序员的数学修养
- 批量执行 bulk collect与forall用法
daizj
oraclesqlbulk collectforall
BULK COLLECT 子句会批量检索结果,即一次性将结果集绑定到一个集合变量中,并从SQL引擎发送到PL/SQL引擎。通常可以在SELECT INTO、
FETCH INTO以及RETURNING INTO子句中使用BULK COLLECT。本文将逐一描述BULK COLLECT在这几种情形下的用法。
有关FORALL语句的用法请参考:批量SQL之 F
- Linux下使用rsync最快速删除海量文件的方法
dongwei_6688
OS
1、先安装rsync:yum install rsync
2、建立一个空的文件夹:mkdir /tmp/test
3、用rsync删除目标目录:rsync --delete-before -a -H -v --progress --stats /tmp/test/ log/这样我们要删除的log目录就会被清空了,删除的速度会非常快。rsync实际上用的是替换原理,处理数十万个文件也是秒删。
- Yii CModel中rules验证规格
dcj3sjt126com
rulesyiivalidate
Yii cValidator主要用法分析:
yii验证rulesit 分类: Yii yii的rules验证 cValidator主要属性 attributes ,builtInValidators,enableClientValidation,message,on,safe,skipOnError
 
- 基于vagrant的redis主从实验
dcj3sjt126com
vagrant
平台: Mac
工具: Vagrant
系统: Centos6.5
实验目的: Redis主从
实现思路
制作一个基于sentos6.5, 已经安装好reids的box, 添加一个脚本配置从机, 然后作为后面主机从机的基础box
制作sentos6.5+redis的box
mkdir vagrant_redis
cd vagrant_
- Memcached(二)、Centos安装Memcached服务器
frank1234
centosmemcached
一、安装gcc
rpm和yum安装memcached服务器连接没有找到,所以我使用的是make的方式安装,由于make依赖于gcc,所以要先安装gcc
开始安装,命令如下,[color=red][b]顺序一定不能出错[/b][/color]:
建议可以先切换到root用户,不然可能会遇到权限问题:su root 输入密码......
rpm -ivh kernel-head
- Remove Duplicates from Sorted List
hcx2013
remove
Given a sorted linked list, delete all duplicates such that each element appear only once.
For example,Given 1->1->2, return 1->2.Given 1->1->2->3->3, return&
- Spring4新特性——JSR310日期时间API的支持
jinnianshilongnian
spring4
Spring4新特性——泛型限定式依赖注入
Spring4新特性——核心容器的其他改进
Spring4新特性——Web开发的增强
Spring4新特性——集成Bean Validation 1.1(JSR-349)到SpringMVC
Spring4新特性——Groovy Bean定义DSL
Spring4新特性——更好的Java泛型操作API
Spring4新
- 浅谈enum与单例设计模式
247687009
java单例
在JDK1.5之前的单例实现方式有两种(懒汉式和饿汉式并无设计上的区别故看做一种),两者同是私有构
造器,导出静态成员变量,以便调用者访问。
第一种
package singleton;
public class Singleton {
//导出全局成员
public final static Singleton INSTANCE = new S
- 使用switch条件语句需要注意的几点
openwrt
cbreakswitch
1. 当满足条件的case中没有break,程序将依次执行其后的每种条件(包括default)直到遇到break跳出
int main()
{
int n = 1;
switch(n) {
case 1:
printf("--1--\n");
default:
printf("defa
- 配置Spring Mybatis JUnit测试环境的应用上下文
schnell18
springmybatisJUnit
Spring-test模块中的应用上下文和web及spring boot的有很大差异。主要试下来差异有:
单元测试的app context不支持从外部properties文件注入属性
@Value注解不能解析带通配符的路径字符串
解决第一个问题可以配置一个PropertyPlaceholderConfigurer的bean。
第二个问题的具体实例是:
 
- Java 定时任务总结一
tuoni
javaspringtimerquartztimertask
Java定时任务总结 一.从技术上分类大概分为以下三种方式: 1.Java自带的java.util.Timer类,这个类允许你调度一个java.util.TimerTask任务; 说明: java.util.Timer定时器,实际上是个线程,定时执行TimerTask类 &
- 一种防止用户生成内容站点出现商业广告以及非法有害等垃圾信息的方法
yangshangchuan
rank相似度计算文本相似度词袋模型余弦相似度
本文描述了一种在ITEYE博客频道上面出现的新型的商业广告形式及其应对方法,对于其他的用户生成内容站点类型也具有同样的适用性。
最近在ITEYE博客频道上面出现了一种新型的商业广告形式,方法如下:
1、注册多个账号(一般10个以上)。
2、从多个账号中选择一个账号,发表1-2篇博文