位置:首页 » 技术 » [ZT]全世界所有程序员都会犯的错误-蔡学镛

[ZT]全世界所有程序员都会犯的错误-蔡学镛

日期:2009-06-01 阅读:1num
Advertisement

原来以为对 Java 初始化已经很master了,结果还是上当了

以下为转贴。。。。。

当年,国际巨星成龙的「龙种」曝光,众人指责他对不起娇妻林凤娇,逼得他出面召开记者会,向世人自白他犯了「全世界所有男人都会犯的错误」。从来没犯过这种错误的我,也因此常常认为自己不是个男人。

虽然没犯过「全世界所有男人都会犯的错误」,但是我倒是曾经犯了「全世界所有程序员都会犯的错误」。不管使用何种语言,全世界所有程序员都一定犯过这种错误,那就是:太依赖编译器,却不知道编译器做了哪些事。

一般来说,越高阶的程序语言,会提供越多语法上的便利,以方便程序撰写,这就俗称为syntactic sugar,我称其为「语法上的甜头」。虽说是甜头,但是如果你未能了解该语法的实质内涵,很可能会未尝甜头,却吃尽苦头。

不久前,我收到一个电子邮件,读者列出下面的Java程序,向我求救。看过这个程序之后,我确定这又是一个「全世界所有程序员都会犯的错误」。

// 程序1
class Singleton {
private static Singleton obj = new Singleton();
public static int counter1;
public static int counter2 = 0;
private Singleton() {
counter1++;
counter2++;
}
public static Singleton getInstance() {
return obj;
}
}

// 程序2
public class MyMain {
public static void main(String[] args) {
Singleton obj = Singleton.getInstance();
System.out.println("obj.counter1=="+obj.counter1);
System.out.println("obj.counter2=="+obj.counter2);
}
}

执行结果是:
obj.counter1==1
obj.counter2==0

你有没有被此结果吓一跳?乍看程序代码,你很可能会认为counter1和counter2的值一定会相等,但执行结果显然不是如此。其实,程序1被编译后的程序应该等同于下面的程序3:

// 程序3
class Singleton {
private static Singleton obj;
public static int counter1;
public static int counter2;
static { // 这就是class constructor
// 在进入此class constructor之前,class已经被JVM
// 配置好内存,所有的static field都会被先设定为0,
// 所以此时counter1和counter2都已经是0,且singleton为null
obj = new Singleton(); // 问题皆由此行程序产生
// counter1不会在此被设定为0
counter2 = 0; // counter2再被设定一次0(其实是多此一举)
}
private Singleton() { // 这是instance constructor
counter1++;
counter2++;
}
public static Singleton getInstance() {
return obj;
}
}

这是因为:当class具有static field,且直接在宣告处透过「=...」的方式设定其值时,编译器会自动将这些叙述依序搬到class constructor内。同样地,当class具有instance field,且直接在宣告处透过「=...」的方式设定其值时,编译器会自动将这些叙述依序搬到instance constructor内。

此程序在class constructor内,还未将static field初始化时(这时候,counter1和counter2都是0),就呼叫instance constructor,而instance constructor竟然还会去更动static field的值,使得counter1和counter2都变成1。然后instance constructor执行完,回到class constructor,再把counter2的值设为0(但是
counter1维持不变)。最后的结果:counter1等于1,counter2等于0。

欲改正程序1,方法有三:

-方法一:将singleton field的宣告调到counter1与counter2 field之后。
这是最好的作法。
-方法二:将counter2=0的宣告中,「=0」的部分删除。这种作法只有在希望
-方法三:将初始化的动作搬到class constructors内,自行撰写,而不依赖
编译器产生。这是最保险的作法。

如何避免犯下「全世界所有程序员都会犯的错误」,我给各位Java程序员
的建议是:
-熟读Java Language Specification
-在有疑问时,使用J2SDK所提供的javap来反组译Java Bytecode,直接观察
编译后的结果。

下面是我用javap来反组译程序1的示范:

C:>javap -c -classpath . Singleton

Compiled from MyMain.java
class Singleton extends java.lang.Object {
public static int counter1;
public static int counter2;
public static Singleton getInstance();
static {};
}

Method Singleton()
0 aload_0
1 invokespecial #1 <Method java.lang.Object()>
4 getstatic #2 <Field int counter1>
7 iconst_1
8 iadd
9 putstatic #2 <Field int counter1>
12 getstatic #3 <Field int counter2>
15 iconst_1
16 iadd
17 putstatic #3 <Field int counter2>
20 return

Method Singleton getInstance()
0 getstatic #4 <Field Singleton obj>
3 areturn

Method static {}
0 new #5 <Class Singleton>
3 dup
4 invokespecial #6 <Method Singleton()>
7 putstatic #4 <Field Singleton obj>
10 iconst_0
11 putstatic #3 <Field int counter2>
14 return

其实Java的syntactic sugar并不算多,C#的syntactic sugar才真的是无所不在,
也因此C#的初学者更容易犯了「全世界所有程序员都会犯的错误」。许多C#的书都会一边介绍C#语法,一边介绍编译之后MSIL(.NET的中间语言,类似Java的Bytecode)的结果,然而Java的书却鲜少这么做。

虽说是「全世界所有程序员都会犯的错误」,但是这不代表你犯了此错误之后,仍可以同爱借钱的曹启泰一般地「抬头挺胸、理直气壮」。只要有心,其实这一类的错误仍是可以避免的。

本文作者:蔡学镛
文章出处:Sleepless 2.0
发表日期:03/10/2003

相关文章
  • [ZT]全世界所有程序员都会犯的错误-蔡学镛

    原来以为对 Java 初始化已经很master了,结果还是上当了 以下为转贴..... 当年,国际巨星成龙的「龙种」曝光,众人指责他对不起娇妻林凤娇,逼得他出面召开记者会,向世人自白他犯了「全世界所有男人都会犯的错误」.从来没犯过这种错误的我,也因此常常认为自己不是个男人. 虽然没犯过「全世界所有男人都会犯的错误」,但是我倒是曾经犯了「全世界所有程序员都会犯的错误」.不管使用何种语言,全世界所有程序员都一定犯过这种错误,那就是:太依赖编译器,却不知道编译器做了哪些事. 一般来说,越高阶的程序语言

  • 论全世界所有程序员都会犯的错误

    当年,某国际巨星的"龙种"曝光,众人指责他对不起娇妻,逼得他出面召开记者会,向世人自白他犯了"全世界所有男人都会犯的错误".从来没犯过这种错误的我,也因此常常认为自己不是个男人. 虽然没犯过"全世界所有男人都会犯的错误",但是我倒是曾经犯了"全世界所有程序员都会犯的错误".不管使用何种语言,全世界所有程序员都一定犯过这种错误,那就是:太依赖编译器,却不知道编译器做了哪些事. 一般来说,越高阶的程序语言,会提供越多语法上的便利,

  • 论全世界所有程序员都会犯的错误2

    下面是我用javap来反组译程序1的示范: C:> javap -c -classpath . Singleton Compiled from MyMain.java class Singleton extends java.lang.Object { public static int counter1; public static int counter2; public static Singleton getInstance(); static {}; } Method Singleto

  • 知乎话题:是不是每一个入职百度的程序员都会被钉在互联网的耻辱柱上?

    是不是每一个入职百度的程序员都会被钉在互联网的耻辱柱上? http://www.zhihu.com/question/45109599 附一前百度广告部门研发回答,因回答标明禁止转载,转回答链接: http://www.zhihu.com/question/45109599/answer/98321715?from=profile_answer_card --cut-- MajestySolor在2016-05-09 05:15:58回答到: 按照这个逻辑,每个用过百度产品的人都要被钉上耻辱柱~

  • 每个程序员都会的35个jQuery小技巧! 每个程序员都会的35个jQuery小技巧!

    干货推荐,每个程序员都会的35个jQuery小技巧! 1. 禁止右键点击 $(document).ready(function(){ $(document).bind("contextmenu",function(e){ return false; }); }); 2. 隐藏搜索文本框文字 Hide when clicked in the search field, the value.(example can be found below in the comment fields)

  • 2013年程序员工作总结(总结错误与学到的东西)

    本文章来给各位同学介绍关于2013年程序员工作总结(总结错误与学到的东西),希望此教程对各位朋友有所帮助. 总结一个做了9个月还没做完的项目.也因为这个项目让我变的强大,从功能设计到代码编写规划,从后台功能实现到前端效果展示,这种成长让我在做其他项目的时候变的得心应手.总结过去,知道自己在这个过程中学会了什么,还有什么不懂,有利于进步. 在实习开始加入这个项目的开发后,由于各种原因直到现在还没有正式上线.这个项目是做一款手机名片软件,有两大特色:搜索.收藏.数据库有大量公司数据,自动生成名片给用

  • PHP程序员常犯的11个错误

    1.使用myisam而不是innodb mysql教程有很多数据库教程引擎,但是你最可能碰到的就是myisam和innodb. mysql默认使用的是myisam.但是,很多情况下这都是一个很糟糕的选择,除非你在创建一个非常简单抑或实验性的数据库.外键约束或者事务处理对于数据完整性是非常重要的,但myisam都不支持这些.另外,当有一条记录在插入或者更新时,整个数据表都被锁定了,当使用量增加的时候这会产生非常差的运行效率. 结论很简单:使用innodb. 2.使用php教程的mysql函数 ph

  • PHP程序员最易犯10种错误

    PHP是个伟大的web开发语言,灵活的语言,但是看到php程序员周而复始的犯的一些错误.我做了下面这个列表,列出了PHP程序员经常犯的10中错误,大多数和安全相关.看看你犯了几种 1.不转意html entities 一个基本的常识:所有不可信任的输入(特别是用户从form中提交的数据) ,输出之前都要转意. echo $_GET[usename] ; 这个例子有可能输出: <scrīpt>/*更改admin密码的脚本或设置cookie的脚本*/</scrīpt> 这是一个明显的安

  • 《我为什么讨厌程序员》

    http://ued.com.cn/post/tech/wo-wei-shi-yao-tao-yan-cheng-xu-yuan 首先声明,是别人的文章,纯转. 我觉得标题不如叫:什么样的程序员让人讨厌,因为不是所有程序员都是文中所说的样子.文中举的例子很多都是沟通方式的问题,并不是完全是程序员的技术水平造成的,即便高手都是从菜鸟过来的,在菜鸟阶段如何解决这些问题才是程序员沟通的艺术.例如最基本的原则,跟非程序员最好以用户语言而不是技术语言去沟通,否则真的隔行如隔山,还会让人感觉你在装逼. ht

  • 程序员价值观和网络复杂性-网络不可达排查过程 程序员价值观和网络复杂性-网络不可达排查过程

    声明: 由于涉及到公网拓扑以及公司内部信息,本文中的IP地址一律采用化名. 序 周三由于吃了可能已经坏掉的生蚝,周四开始腹泻并发烧,周四晚上开始高烧,并持续到周五晚上,没去医院没吃药,死磕,对,死磕,然后在周六白天断断续续高烧低烧相间后,到了晚上看完同事介绍的电影<异度空间>后,好了,生病期间,没有工作,但是却断断续续写了一些技术随笔,算是<病中吟>吧... 其实,生病挺好的,对我而言,发烧就是大量喝水,不停地喝,痛快地喝,喝到快要水中毒,基本就好了,一轮见效.期间想干嘛照常干且效

  • 30多年程序员生涯经验总结 30多年程序员生涯经验总结

    本文是码农网原创翻译,转载请看清文末的转载要求,谢谢合作! 在我30多年的程序员生涯里,我学到了不少有用的东西.下面是我这些年积累的经验精华.我常常想,如果以前能有人在这些经验上指点一二,我相信我现在会站得更高. 1.客户在接触到产品之后,才会真正明白自己的需求. 这是我在我的第一份工作上面学来的.只有当我们给客户展示产品的时候,他们才会意识到哪些是必须的.给出一个功能性原型设计远远比一张长长的文字表格要好. 2.只要有充足的时间,所有安全防御系统都将失败. 安全防御现如今是全世界都在关注的大课

  • 我是一个程序员,有些实在话想对你说 我是一个程序员,有些实在话想对你说

    我个人是一个程序员,关注web.分布式和数据处理. 我将web看做最流行的.天然跨平台的展现和可视化技术,将分布式看做程序协作.协作程序的最适架构,将数据处理看作需要基础.技巧.认知.视野以及领域知识兼而有之的事,所以做数据处理,会提升基础.技巧.认知.视野以及领域知识. 我认为能力的提升来自厚积,所以对于基础的东西,应该保持持续的热情. 认为基础应该包括但远不限于: 数据结构和算法. 算法. 网络(tcp/ip.p2p.http等等). 计算机体系和操作系统(内存管理.高速缓冲与缓存.线程与并

  • 为何找个优秀的Java程序员如此之难?

    Java开发者供大于求,找一个优秀的开发者犹如大海捞针.这该赖谁?赖程序员对Java没兴趣吗?还是赖瞎了眼的招聘?抑或是语言本身?不管你同意与否,下面就列举了和这个问题相关的答案. 问题非语言,而是程序员自身 大多程序员都想做与众不同的人,大家都喜欢尝试.但除此之外,更多的程序员想要一个薪水丰厚的工作.最简单的方式就是学习Java--不管自己喜不喜欢写,这就是为什么众多无工作激情的程序员都沦为了Java程序"猿". "我不是指所有的Java程序员都是无能之辈",博客

  • 把程序员修炼之道读薄

    这是一篇技术书籍读后感 早在2014年的时候我就已经购入 <程序员的修炼之道> .还是由于慵懒一直没有翻开,最近才把它从书柜里翻出来看完. 老实说这本书相比CodeComplete2来说,还是差那么点味道,但是它依旧是一本好书.本书通篇都在向读者灌输一种 做一个注重实效的程序员 的概念,这句话出现了不下几百次,200页的书这句话都够填10页了Orz.为了阐明作者观点,书中从以下几个方面进行了自我论证: 为何要注重实效 作者举了 温水煮青蛙 , 曳光弹 等 去论证注重实效在软件开发中的作用之大.

  • 专访周伯通招聘CTO杨德升:程序员创业都需要什么 专访周伯通招聘CTO杨德升:程序员创业都需要什么

    嘉宾简介:周伯通招聘(下称周伯通)联合创始人CTO,历任开源 SNS 社区 ThinkSNS 核心工程师,115 网盘高级 iOS 工程师等职位. 在豆瓣上有一个名为"周伯通"的招聘小组上面有362641位组员,这是"周伯通招聘"的前身.两年多的时间里,从一个小组演变成网站,这条道路绝不是一帆风顺的.甚至在2013年,周伯通招聘CEO冯涛彻底重组了整个团队.现任CTO杨德升在此时的加入,又为整个团队注入了一剂强心针.他带领团队一起探索-如何通过技术演进的方式促进业务

  • 如何成为一名冠军程序员? 如何成为一名冠军程序员?

    距我上一篇非技术文章已经有些时日.但一些程序员朋友们一直在向我征求职业生涯的建议,现在我觉得是时候再写一篇了.顺带提及,如果你有心思去看其他的东西--我已经开始在 Heinz's Worst Recipes (海因茨最差食谱)上记录我所烹饪过的那些惨不忍睹的食物.受我好吃的强烈欲望所致--这可以由我的腰围证明,烹饪成为我的一大爱好.我远远不能成为一个合格的厨子,因为我从来不遵循食谱,由此我所烹饪的许多食物也以"黯然不可食"的状态被抛弃掉,当然有时候在做了足够的尝试.出了足够多的问题后也

  • 专访资深程序员庄晓立:我为什么要选择Rust? 专访资深程序员庄晓立:我为什么要选择Rust?

    Rust是由 Mozilla开发的注重安全.性能和并发性的编程语言.这门语言自推出以来就得到了国内外程序员的大力推崇.Rus声称 解决了传统C语言和C++语言几十年来饱受责难的内存安全问题,同时还保持了极高的运行效率.极深的底层控制.极广的应用范围.但在国内有关 Rust的学习文档并不多见,不久前,笔者联系上了 Rust1.0版本代码贡献者庄晓立(精彩博文: 为什么我说Rust是靠谱的编程语言 ),请他分享Rust语言特性以及学习经验. 庄晓立 CSDN:你是从什么时候开始接触Rust语言的?是

  • 每个程序员都必读的10篇文章

    作为一名Java程序员和软件开发人员,那些_每个程序员都应该知道的XXX_的文章教会了我不少东西,它们提供了某个特定领域的一些实用的并且有深度的信息,这些东西通常很难找到.在我学习的过程中我读到过许多非常有用的文章,我把它们添加到了书签里,方便以后阅读或者引用.我个人认为所有开发人员都能从这些文章中受益,因此我也写了篇"_每个程序员都应该了解的_"文章,准备分享给你们.这是我的个人收藏.在这篇文章中,你会看到每个程序员都应该了解的一些经典文章,涵盖了内存,unicode,浮点数,网络,

  • 非程序员对程序员有哪些普遍的误区?

    程序员都会修电脑? 程序员都会盗号? --cut-- VmuTargh在2016-05-09 13:56:52回答到: 牛逼 大神 未来的 XXX dphdjy在2016-05-09 13:56:52回答到: 程序员会 office(精通那种 程序员会用财税系统(国家制定那种 程序员会 用 /修 手机 /电视 程序员什么都知道(资源 /站点 /服务 geeglo在2016-05-09 13:56:52回答到: 来,我想建个和淘宝一样的. smithtel在2016-05-09 13:56:52回

  • 揭开程序员装 13 行为的面具 揭开程序员装 13 行为的面具

    程序员一直都是很善良的IT工种,勤勤恳恳不辞辛苦的工作,不过今天的文章不是为了宣扬程序员的伟大.尽管在互联网的发展中,他们贡献了无数的代码,用自己的技术推进了互联网的进程.我们还是要扒一下程序员的装 13 行为,可能会有很多程序员看了本文会十分的愤慨,但考虑到你们很忙,没有时间黑公园网站,我也就不客气了. 程序员你还说没有装 13 写代码离不开各种编程工具,有众多工具供选择便有花样的喜好,对装 13 的程序员来说,是坚决要抵制 IDE 的,IDE 臃肿缓慢,一定是要用 vim 加编译器的组合.v

最新文章
  • 继续出闲置 mini PC, Brix Pro i5-4570R

    之前在这儿 http://v2ex.com/t/153119 发过帖子,感谢各位内存和SSD都已经出掉了. 现在继续 2700 出这台mini PC,送一根金士顿 4G 1600的内存. [email protected] --cut-- cdffh在2014-12-19 09:39:3回答到: 话说那个内存是可以插在这个mini pc上面用? pandachow在2014-12-19 10:14:2回答到: @cdffh 是呀,当然可以.

  • 俄罗斯莫斯科动物园 展示别样“大明星” 俄罗斯莫斯科动物园 展示别样“大明星”

    莫斯科动物园的一只北极熊最近成了全园的"大明星",因为它特别喜欢潜水,喜欢在游客面前炫耀一下.一般情况下,它游泳和潜水的速度都很快,但是每当它发现有相机在对着它时,就会放慢速度.可能它真的很喜欢被人关注. 莫斯科动物园的一只北极熊最近成了全园的"大明星",因为它特别喜欢在相机前"搔首弄姿"拍上几张照片,吸引游客的注意力. 另外,它还没有什么"明星架子",会和游客亲热的"打招呼". 镜头中的这只北极熊正在水下

  • 胶囊日记app时间胶囊使用全攻略 胶囊日记app时间胶囊使用全攻略

    时间胶囊重上线 胶囊日记app时间胶囊使用全攻略 1.什么是"时间胶囊". "时间胶囊"是一个给未来的留言板,你可以为自己,朋友,爱人,家人,或者任何人留下你现在想对他们说的话,并且设置一个未来能够打开"时 间胶囊"的时间,这样他们就能在未来的某天通过网站给你的密码来这里打开"时间胶囊",读到你的留言. "时间胶囊" 可以是一个预言 可以是一篇日记 可以是一句牢骚 可能只是一句"我爱你"

  • 百度搜索结果后面的喜欢按钮 百度搜索结果后面的喜欢按钮

    百度搜索后,快照后面的喜欢按钮有多少人喜欢是怎么回事? 不清楚上面的那个数据是怎么来的,好像以前没有哦. 1.小编搜索了下,有的说是关于权重,收录,流量.显然不是,这很明显不是网站自身优化出来的.大家可以看下一些大站后面有没有"百度喜欢". 2.和浏览器或软件有关,这也显然不是. 小编日常使用的都是谷歌浏览器,为推到此理论使用了QQ,360,IE,世界之窗,遨游,搜狗,进入百度搜索关键词"游戏,漫画"后依然可以在一些网站后看到"百度喜欢". 3.

  • 各个方位客厅的风水摆设 各个方位客厅的风水摆设

    第一招正北,事业运,黑色和蓝色 检查客厅(装修效果图)正北方位的布置.正北方代表事业运,属水行,喜用色是蓝色或黑色.在这个方位放置属水的物品对居住者的事业运有帮助,例如鱼缸.山水画.水车等.或者放置黑色的金属饰品也可以,因为金能生水. 第二招正南,声名运,红色 正南方位布置好风水会为家庭带来声名和肯定,特别是负责生计的家长.正南方属火行,喜用色是红色.适合悬挂△凰.火鹤或日出的图画.红色地毯(装修效果图)或红色的木制装饰品(因为木能生火)也很合适.在这个方位装设照明(装修效果图)灯更可增加声名运

  • 彻底清除果蔬中的残留农药

    为了将要食用的果蔬彻底清洗干净,特别是能减少农药残留,有人习惯在洗菜水中加入洗涤灵,其实这样不但大不到有效的去残留农药的目的,反而由于一般餐具洗涤是廉价的烷基苯酸钠为主要原料合成的,如果冲洗不净,让这些物质残留在果蔬上,就会造成二次污染. 方法1碱水浸泡清洗法:大多数有机磷类杀虫剂在碱性环境下,可迅速分解,所以用碱水浸泡的方法是去除蔬菜水果残留农药污染的有效方法之一.一般在500毫升清水中加入食用碱5-10克配制成碱水,将初步冲洗后的果蔬置入碱水中,根据菜量多少配足碱水,浸泡5-15分钟后用清水

  • 2015年世界云计算的发展趋势

    2014年,我们见证了云计算如何推动消费产品和企业级产品领域的伟大创新,而成为不同规模组织的新常态.如今,云计算已成为推动诸多企业创新的引擎,其中不仅包括Dropbox. Airbnb.Pinterest.Hailo.WeTransfer 和Soundcloud等新兴企业,也包括百时美施贵宝(Bristol-Myers Squibb).壳牌.联合利华和西班牙曼弗雷(Mapfre)保险集团等成熟企业.与此同时,我们也看到大量的中国企业也通过云计算加速了创新的步伐,更快的拓展国际市场.小米正通过云计

  • 灰蛊第四关的茧怎么打 第四关茧打法攻略 灰蛊第四关的茧怎么打 第四关茧打法攻略

    在灰蛊这一款游戏里面的第四关到底该怎么打呢?很多的玩家们卡在了第四关,攻不进去,什么都打掉了,就是打不掉茧,今天小编就为各位玩家们带来了第四关茧打法的详细信息,下面各位玩家们就和小编一起去看一下吧. 给各位玩家们分享一下灰蛊里面第四关茧的打法. 打法一览: 造史诗单位,贝塔的是要求2个工厂,4个科技建筑,连在那个6节点的叫大型实验室的建筑上再花5分钟就出来了. 只有那个能打茧,在作战单位界面的最后那个就是,鼠标移上去有具体的建筑名字. 让你造鲁格之手HAND OF RUK 飞过去,最好造几个飞机

  • hibernate_01hibernate入门简略api

    hibernate_01hibernate入门简单api 一)orm和hibernate概述 参见PPT<<2,3,4,5>>页 ORM是对象关系的映射规则,它解决了持久层[常用]的问题(例如:CURD和事务) 表----------------类 字段--------------属性 记录--------------对象 Hibernate是ORM规则的具体实现技术之一,而且是较好的技术之一. Hibernate只能位于持久化,是开源,免费 二)hibernate快速入门 [Cu

  • IOS消息推送解决办法

    IOS消息推送 最近在研究IOS的推送,有几个问题想请教大大们. Push.payload(payload, "d:/aps_development.p12", "123456", false, devices); 在上面的代码中需要五个参数,求指教 1.证书问题.我现在想达成的目标是向所有定制消息推送的手机端发信息,那么只要有这一个证书就好了吗? 2.device获取,怎么获取定制消息推送的手机端的device啊? ------解决方案--------------

热门推荐
  • 曹操贷怎么申请借款 曹操贷怎么申请借款 1.打开曹操贷APP,选择你借款的金额以及期限后点击立即借款; 2.接着按步骤进行实名认证.肖像认证以及完善信息,最后确认借款; 3.然后进行借款评估及绑定银行卡,还可以补充更多资料提高借款额度; 4.借款申请确认后进行筹集资金,资金筹集成功后也就借款成功了哟.
  • Nexus 6、三星Note 4、iPhone 6 Plus规格对比 Nexus 6、三星Note 4、iPhone 6 Plus规格对比 此前谷歌Nexus系列手机一直给人一种超高性价比的印象,配置不算高,价格又低,还跑着原汁原味.升级最及时的原生Android系统.而这回,Nexus 6颠覆了这一印象,除了系统还是最新的之外,配置直接用上同期最顶级的.价格也飙升到649美元这个级别. 不过贵也有它贵的道理,而且它还不是同档次手机中最贵的,至少手机界两大巨头三星和苹果新近上市的大屏手机Galaxy Note 4和iPhone 6 Plus行货就要5.6千元.在比较完Nexus 9与iPad Air/mini 2之后,我们就来比一下
  • 使用CSS3实现的超酷幻灯图片效果 使用CSS3实现的超酷幻灯图片效果 在线演示 这个教程将介绍如何使用纯CSS创建一个干净的幻灯图片面板.主要想法是在面板中使用背景图片,然后在点击标签后使之动画. HTML标签 HTML主要包括了3个主要部分:radio按钮和标签,容器,及其标题,如下: <section class="cr-container"> <!-- radio buttons and labels --> <input id="select-img-1" name="radio-set
  • 陌陌上线“新白痴娘子传奇”表情 陌陌上线“新白痴娘子传奇”表情 近日,陌陌表情商城上线了"新白痴娘子传奇"表情,这次的主角是深入人心的白娘子形象.此款表情再造了民间传说新白娘子传奇中的人物,结合时下流行的网络语言,一上架就受到了用户的喜爱. 在社交应用中,人和人的交流通过语音或者文字来进行,无法面对面的交流会引起一些误会或是分歧,表情的增加让同样一句话变得更生动更有情绪.当我们的情绪无法用文字表达时,表情却可以表达一切.表情的存在让人们在社交应用里的交流更加轻松愉快,也让普通的文字交流变得有生命有情绪. 有业内人士表示,一款好的表情受欢迎主要有四个
  • 雷军:64GB版小米手机3本月下旬上市 雷军:64GB版小米手机3本月下旬上市 在曝光了联通版小米手机3的上市时间之后,小米科技CEO雷军又在微博上曝光了64GB版小米手机3的上市日期. 雷军表示64GB容量的小米手机3首批依然只有支持TD网络的Tegra 4版,其售价为2499元,具体上市日期为本月下旬.而以小米习惯每周二开放购买的策略来看,64GB移动版小米手机3的上市日期就锁定在了11月26日,距离联通版上市大概还有半个多月的时间.而联通版首批很有可能会拥有64GB容量可供选择. 事实上早在10月25日,64GB移动版小米手机3就通过了工信部的审查,随着64GB版和联