关于作者

用户名:batipang
笔名:寒冰火
地区: 上海-虹口
行业:其他

日历  

快速登录

+ 用户名:
+ 密 码:

在线留言



高中同学

访问统计:
文章个数:22
评论个数:4
留言条数:0




Powered by BlogDriver 2.1

冰火时空

 

文章

苏联红军在东北的罪恶历史zz
摘要:苏军进入东北,曾给老一辈人留下很不好的印象。即使是在中苏友好的五 十年代,这段历史也严重地影响着中苏的关系。过去出于种种原因,特别是照 顾到两国人民的感情,这类事在出版物中长期讳言。在苏联不存在的今天,我 们终于可以实事求是地公开谈论此事。 查看全文

- 作者: 寒冰火 2005年05月9日, 星期一 13:52  回复(1) |  引用(0) 加入博采

苏联出兵东北始末zz
摘要:1945年8月9日零时10分,苏联一百五十多万军队从东、北、西三个方向,在四千多公里的战线上越过中苏、中蒙边境,向日本关东军发动突然袭击。苏联何时打算出兵东北?这一百多万军队又是如何运往远东地区的?本文披露了其中的内幕。 查看全文

- 作者: 寒冰火 2005年05月9日, 星期一 13:52  回复(0) |  引用(0) 加入博采

数据的内存结构zz
摘要:前面的一些地方提到:一些数据类型在内存中的实际存储方式,并不是表面上看起来那样子的。比如一个动态数组,并不是简单地在内存开辟一个区域,然后按地址顺序逐个放置数组的元素,长字符串也不是字符们脑门贴脑勺挤成一个长蛇阵那么简单。 在这个小节里,我们将分析一些数据类型变量在内存中的真实存放格式,从而了解这些类型的真实运作方式。不同平台对于数据的内存管理方式是有所不同的,那么本书呢,当然都是指Windows平台。 查看全文

- 作者: 寒冰火 2005年04月29日, 星期五 08:13  回复(0) |  引用(0) 加入博采

终于辞职了

     挂在嘴边的辞职终于成为了现实,也许方式与自己想象的有点不同,也许心态与自己想象的有点差异。但是,毕竟结果是一样的——从明天开始的一段时间之内,我可以白天睡觉了。

     在这家公司服务了近两年,并不是一个很长的时间,所以最后的离开也没有什么不舍。只是对于这来得比较突然得自由显得毫无思想准备。

     纷乱得思绪让我在外滩走了很久,也许只有阵阵的江风可以带走我的不快。

     落日的余晖昭示着又一个晴日的来临。

     是啊,明天又是新的一天,也许这就是人生的一次转折。

     祝福自己在不久的将来能找到一份合适的工作,不想来得太快也不想姗姗来迟:)


- 作者: batipang 2005年04月20日, 星期三 21:09  回复(1) |  引用(0) 加入博采

程序员跳槽时必须注意的十大要点(转载)
每年年初跳槽最多,跳槽是一门学问,也是一种策略。跳槽并不意味着你就能够取得职业的成功,当面临跳槽时,如何顺利地完成跳槽,从而取得职业的成功呢?以下是一些切身体会,值得大家参考。
  
  不错,大家逐渐逐渐步入了跳槽的殿堂。这三年,我是跳烦了,如今无所它求,但求稳定。不过,仅凭借我这七次跳槽的经验,说点感受,也希望大家能够越跳越好:
  
  (1)不要指望会一下子能够跳到多么好的公司,绝大多数公司都一个样子。比如用友、金蝶、亚信、神马这些公司,其实基本上一个样子。
  
  (2)不要一味的指望进大公司,大公司基本上都形成了自己的规模和体制,虽然进入待遇和福利也许不错,但是不要指望能够很快的发展和升职。一旦你进入了,你会发现像我们这个年龄段的,大多都是在做一些基层的工作,即使有些人根本没有多少能力,但是很不幸,他们是老员工,有资历。
  
  (3)不要一味的指望跳槽就能够,从一个开发者一下升迁为经理,即使有这个机会,也要衡量衡量,这个公司真的值得信任吗。在北京绝大多数公司的中层都是从公司内部诞生出来的。正规而又有发展趋势的公司,一般不会从外面招聘像比较重要的职务,比如项目经理、项目的架构师等等;
  
  (4)不要一味的用薪水来和奖金来衡量跳槽的好坏:真正衡量的标准只有三个,第一是这个公司是不是正在处于发展时期,而且有很大的发展空间;第二这份工作是不是对你是一个挑战,是一个新的尝试,而且是自己所希望做的工作;第三,在接受这份工作的时候,会不会对你未来的5年的发展产生一定的影响。
  
  (5)不要一味的指望外企,不可否认外企的待遇很好。目前在北京还没有几家真正的外企在北京弄产品研发,即使像ibm这样的公司,你会发现一旦你进入以后,你不熬个四五年很难升一级;而且你还会发现,你做的只是测试和无聊的coding。
  
  (6)一定要注意你的交流圈子,如果到目前为止,你还没有一个属于你的而且比较不错的交流圈子,那么一定要注意了。跳槽的时候有朋友帮忙,会节省很多麻烦,也会获取一些更加容易的机会。
  
  (7)一定要注意:技术不是最重要的,业务才是最重要的(注意,这里说的业务,不是跑市场和销售的意思,而是说,任何信息系统都是为业务服务的,在一个项目实施过程中,赚钱最多的是那些业务分析人员);如果你厌倦了技术,那么就朝着业务方向发展。但是做业务,就要做好心理准备,首先就必须从最基本干起,熬三年。—— 现在对我们来说,我们已经过去三年了,如果你没有在某一行业的业务内做的很深,那么就要注意了。
  
  (8)如果你选择的是做电信、金融行业,那么一定要去大公司,像电信、金融这种行业一般公司都是做不起的。
  
  (9)如果你选择的是做ERP、CRM之类的软件,那么一定要去大公司,小公司是玩不起的。
  
  (10)如果你选择的是做OA和电子政务之类的软件,那么一定要有心理准备。首先这种公司一般都不大;其次这种公司都比较挣扎,只有高层能够赚到哗哗银子;再其次,这种公司大多学不到多少咚咚。
  
  最后,稍微总结一下,一句话可以概括:跳槽一定要谨慎。

- 作者: batipang 2005年04月19日, 星期二 22:47  回复(0) |  引用(0) 加入博采

SMTH最后的记录

小百合死了之后,苟延残喘了一个多月的SMTH终于也要死了。

您的代号     : batipang
您的昵称     : 寒冰火
真实姓名     :
居住住址     :
注册E-mail   :
您的性别     : 男
您的生日     :
您的职务:
原始注册资料 :
注册日期     : Sun Sep  2 11:53:49 2001
最近光临日期 : Thu Apr 14 23:58:20 2005
最近光临机器 : 222.65.81.66
上站次数     : 888 次
文章数目     : 375 篇
上站总时数   : 3237 小时 3 分钟
私人信箱     : 60 封
使用者权限   : bTCPR-------------------------

  您的注册程序已经完成, 欢迎加入本站.

batipang (寒冰火) 共上站 888 次,发表过 375 篇文章
上次在  [Thu Apr 14 23:58:20 2005] 从 [222.65.81.66] 到本站一游。
离线时间[因在线上或非常断线不详] 生命力:[380] 身份: [用户]。
目前在站上,状态如下:
查询网友 
没有个人说明档


- 作者: batipang 2005年04月15日, 星期五 00:28  回复(0) |  引用(0) 加入博采

已锁定
此日志的浏览权限已被作者锁定,请同作者联系,发送短消息,如果你的身份符合作者的要求,点击此处可以进行浏览

- 作者: batipang 2005年03月22日, 星期二 22:12  回复(0) |  引用(0) 加入博采

[转载]与老板谈薪酬的四大要点

     某企业管理咨询公司的职业顾问吴生说,和老板谈薪酬是一场斗智的谈判,大家必须谨慎
从事,步步为营。以下有四个要点,希望有帮助。


某企业管理咨询公司的职业顾问吴生说,和老板谈薪酬是一场斗智的谈判,大家必须谨慎
从事,步步为营。以下有四个要点,希望有帮助。

1、把握大局,忽略不提。

绝大多数公司在招聘广告上都要求你在求职信上注明你当前职位的薪水和申请职位的
期望薪水,此企业管理咨询公司的职业顾问认为这时你须切记不要先开口,不要轻易地把
你对薪水的要求讲出来。倘若你在还未摸清薪水的可能变动幅度之前就突兀地把自己推销
出去,这难道不是在冒险吗?因为你在没有摸清对方的底之前,过早地把自己的底牌暴露
给老板,那你就输定了,更何况薪水问题通常都是可以进一步洽商的。

2、避实就虚,乾坤转移。

假如面试时老板问你目前拿多少钱,这个问题千万要谨慎回答。此企业管理咨询公司
的职业顾问吴生建议你可以这样回答:我过去的工资数是多少并不重要,关键是我的工作
能力和专业知识是不是贵公司所需要的。这样你就可以不露声色地把话题由薪金转到展示
你的工作经历及专业背景上。更何况如果你目前薪水太少,那么,直接回答不仅不会给你
带来什么好处,说不定你的"报价"会比老板的开标低出一大截呢?

此企业管理咨询公司职业顾问提醒求职者切记一点,你过去的工资并不重要,关键是
要展示你以往突出的工作绩效、你自身综合的素质能力以及你能为公司做的贡献。

3、事先调查,控制比例。

当老板终于开始和你谈具体工资数目时,你该怎么开口呢?此企业管理咨询公司职业
顾问吴生说还是那句老话,让老板先说个数。每个老板在心里对薪水的上下限度都有个数
,他们经常会在那个限度内自由调整。在你提出任何薪水要求之前,请务必搞清它的大致
价位。你还可以通过各种社会关系间接打听到你应聘企业或公司、应聘岗位的大致薪酬水
平。顺便要提醒的是,根据一般汇总的实例来看,从间接打听到的数字往往会比实际水平
低,假如它低于你的心理价位,你就定一个比你现在的薪水高至少10%~20%的价。倘若你现
在这个位置拿的钱太少了,那么适当再抬高一些。千万记住不要用具体的数字,这样很容
易造成僵局。不妨让对方提出工资的幅度,这样双方就可以继续顺利讨论下去了。

4、合理出价,留有余地。

此企业管理咨询公司职业顾问吴生说如果你再三周旋,还是不得已被要求先开一个价
,牢记这一良策,勿将底线定得太低,给出一个大致和你心里想的相同范围。

要记住:老板往往会盯住你的底线,所以你不能把底线定得太低。给出的余地大一点
,洽谈自然也就更灵活了。你可以这样说,根据我的工作经历及专业背景和目前人才市场
的这个职位的薪金水平,我期望的薪水是2.5-3万元,不知道是否与贵公司的这个岗位的薪
酬标准相吻合?这样一来,你又把球踢回到对手,主动权又牢牢地掌控在你的掌心了。

- 作者: batipang 2005年03月22日, 星期二 22:09  回复(0) |  引用(0) 加入博采

肖申克的救赎 经典台词

《肖申克的救赎》是一部难得的经典,每一次都会有深刻的领悟。


It takes a strong man to save himself, and a great man to save another.

  坚强的人只能救赎自己,伟大的人才能拯救他人

  Get busy living, Or get busy dying.

  忙活,或者等死。

  Hope is a good thing, maybe the best of things, and no good thing ever dies
.

  希望是美好的,也许是人间至善,而美好的事物永不消逝.

  "some birds aren't meant to be caged, that's all. Their feathers are just
too bright..."

  有的鸟是不会被关住的,因为它们的羽毛太美丽了!


  对于小编而言,印象深的是片中这样两句台词:

  "刚入狱的时候,你痛恨周围的高墙;慢慢的,你习惯生活在其中;最终你会发现自
己不得不依靠它而生存。"

  恐惧让你沦为囚犯。希望让你重获自由!

- 作者: batipang 2005年03月22日, 星期二 22:02  回复(0) |  引用(0) 加入博采

变态级JAVA程序员面试32问答案
变态级JAVA程序员面试32问答案
第一,谈谈final, finally, finalize的区别。
final—修饰符(关键字)如果一个类被声明为final,意味着它不能再派生出新的子类,
不能作为父类被继承。因此一个类不能既被声明为 abstract的,又被声明为final的。将
变量或方法声明为final,可以保证它们在使用中不被改变。被声明为final的变量必须在
声明时给定初值,而在以后的引用中只能读取,不可修改。被声明为final的方法也同样只
能使用,不能重载
finally—再异常处理时提供 finally 块来执行任何清除操作。如果抛出一个异常,那么
相匹配的 catch 子句就会执行,然后控制就会进入 finally 块(如果有的话)。
finalize—方法名。Java 技术允许使用 finalize() 方法在垃圾收集器将对象从内存中清
除出去之前做必要的清理工作。这个方法是由垃圾收集器在确定这个对象没有被引用时对
这个对象调用的。它是在 Object 类中定义的,因此所有的类都继承了它。子类覆盖 fin
alize() 方法以整理系统资源或者执行其他清理工作。finalize() 方法是在垃圾收集器删
除对象之前对这个对象调用的。

第二,Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以
implements(实现)interface(接口)?
匿名的内部类是没有名字的内部类。不能extends(继承) 其它类,但一个内部类可以作为
一个接口,由另一个内部类实现。

第三,Static Nested Class 和 Inner Class的不同,说得越多越好(面试题有的很笼统)

Nested Class (一般是C++的说法),Inner Class (一般是JAVA的说法)。Java内部类与
C++嵌套类最大的不同就在于是否有指向外部的引用上。具体可见http: //www.frontfree
.net/articles/services/view.asp?id=704&page=1
注: 静态内部类(Inner Class)意味着1创建一个static内部类的对象,不需要一个外部
类对象,2不能从一个static内部类的一个对象访问一个外部类对象

第四,&和&&的区别。
&是位运算符。&&是布尔逻辑运算符。

第五,HashMap和Hashtable的区别。
都属于Map接口的类,实现了将惟一键映射到特定的值上。
HashMap 类没有分类或者排序。它允许一个 null 键和多个 null 值。
Hashtable 类似于 HashMap,但是不允许 null 键和 null 值。它也比 HashMap 慢,因为
它是同步的。

第六,Collection 和 Collections的区别。
Collections是个java.util下的类,它包含有各种有关集合操作的静态方法。
Collection是个java.util下的接口,它是各种集合结构的父接口.
第七,什么时候用assert。
断言是一个包含布尔表达式的语句,在执行这个语句时假定该表达式为 true。如果表达式
计算为 false,那么系统会报告一个 AssertionError。它用于调试目的:
assert(a > 0); // throws an AssertionError if a <= 0
断言可以有两种形式:
assert Expression1 ;
assert Expression1 : Expression2 ;
Expression1 应该总是产生一个布尔值。
Expression2 可以是得出一个值的任意表达式。这个值用于生成显示更多调试信息的 Str
ing 消息。
断言在默认情况下是禁用的。要在编译时启用断言,需要使用 source 1.4 标记:
javac -source 1.4 Test.java
要在运行时启用断言,可使用 -enableassertions 或者 -ea 标记。
要在运行时选择禁用断言,可使用 -da 或者 -disableassertions 标记。
要系统类中启用断言,可使用 -esa 或者 -dsa 标记。还可以在包的基础上启用或者禁用
断言。
可以在预计正常情况下不会到达的任何位置上放置断言。断言可以用于验证传递给私有方
法的参数。不过,断言不应该用于验证传递给公有方法的参数,因为不管是否启用了断言
,公有方法都必须检查其参数。不过,既可以在公有方法中,也可以在非公有方法中利用
断言测试后置条件。另外,断言不应该以任何方式改变程序的状态。


第八,GC是什么? 为什么要有GC? (基础)。
GC是垃圾收集器。Java 程序员不用担心内存管理,因为垃圾收集器会自动进行管理。要请
求垃圾收集,可以调用下面的方法之一:
System.gc()
Runtime.getRuntime().gc()

第九,String s = new String("xyz");创建了几个String Object?
两个对象,一个是"xyx",一个是指向"xyx"的引用对象s。

第十,Math.round(11.5)等於多少? Math.round(-11.5)等於多少?
Math.round(11.5)返回(long)12,Math.round(-11.5)返回(long)-11;

第十一,short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错?
short s1 = 1; s1 = s1 + 1;有错,s1是short型,s1+1是int型,不能显式转化为short型
。可修改为s1 =(short)(s1 + 1) 。short s1 = 1; s1 += 1正确。

第十二,sleep() 和 wait() 有什么区别? 搞线程的最爱
sleep()方法是使线程停止一段时间的方法。在sleep 时间间隔期满后,线程不一定立即恢
复执行。这是因为在那个时刻,其它线程可能正在运行而且没有被调度为放弃执行,除非
(a)"醒来"的线程具有更高的优先级
(b)正在运行的线程因为其它原因而阻塞。
wait()是线程交互时,如果线程对一个同步对象x 发出一个wait()调用,该线程会暂停执
行,被调对象进入等待状态,直到被唤醒或等待时间到。
第十三,Java有没有goto?
Goto—java中的保留字,现在没有在java中使用。

第十四,数组有没有length()这个方法? String有没有length()这个方法?
数组没有length()这个方法,有length的属性。
String有有length()这个方法。

第十五,Overload和Override的区别。Overloaded的方法是否可以改变返回值的类型?
方法的重写Overriding和重载Overloading是Java多态性的不同表现。重写Overriding是父
类与子类之间多态性的一种表现,重载Overloading是一个类中多态性的一种表现。如果在
子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写 (Overriding)。子
类的对象使用这个方法时,将调用子类中的定义,对它而言,父类中的定义如同被"屏蔽
"了。如果在一个类中定义了多个同名的方法,它们或有不同的参数个数或有不同的参数
类型,则称为方法的重载(Overloading)。Overloaded的方法是可以改变返回值的类型。


第十六,Set里的元素是不能重复的,那么用什么方法来区分重复与否呢? 是用==还是equ
als()? 它们有何区别?
Set里的元素是不能重复的,那么用iterator()方法来区分重复与否。equals()是判读两个
Set是否相等。
equals()和==方法决定引用值是否指向同一对象equals()在类中被覆盖,为的是当两个分
离的对象的内容和类型相配的话,返回真值。

第十七,给我一个你最常见到的runtime exception。
ArithmeticException, ArrayStoreException, BufferOverflowException, BufferUnder
flowException, CannotRedoException, CannotUndoException, ClassCastException, C
MMException, ConcurrentModificationException, DOMException, EmptyStackExceptio
n, IllegalArgumentException, IllegalMonitorStateException, IllegalPathStateExc
eption, IllegalStateException,
ImagingOpException, IndexOutOfBoundsException, MissingResourceException, Negat
iveArraySizeException, NoSuchElementException, NullPointerException, ProfileDa
taException, ProviderException, RasterFormatException, SecurityException, Syst
emException, UndeclaredThrowableException, UnmodifiableSetException, Unsupport
edOperationException

第十八,error和exception有什么区别?
error 表示恢复不是不可能但很困难的情况下的一种严重问题。比如说内存溢出。不可能
指望程序能处理这样的情况。
exception 表示一种设计或实现问题。也就是说,它表示如果程序运行正常,从不会发生
的情况。
第十九,List, Set, Map是否继承自Collection接口?
List,Set是

Map不是

第二十,abstract class和interface有什么区别?
声明方法的存在而不去实现它的类被叫做抽象类(abstract class),它用于要创建一个
体现某些基本行为的类,并为该类声明方法,但不能在该类中实现该类的情况。不能创建
abstract 类的实例。然而可以创建一个变量,其类型是一个抽象类,并让它指向具体子类
的一个实例。不能有抽象构造函数或抽象静态方法。Abstract 类的子类为它们父类中的所
有抽象方法提供实现,否则它们也是抽象类为。取而代之,在子类中实现该方法。知道其
行为的其它类可以在类中实现这些方法。
接口(interface)是抽象类的变体。在接口中,所有方法都是抽象的。多继承性可通过实
现这样的接口而获得。接口中的所有方法都是抽象的,没有一个有程序体。接口只可以定
义static final成员变量。接口的实现与子类相似,除了该实现类不能从接口定义中继承
行为。当类实现特殊接口时,它定义(即将程序体给予)所有这种接口的方法。然后,它
可以在实现了该接口的类的任何对象上调用接口的方法。由于有抽象类,它允许使用接口
名作为引用变量的类型。通常的动态联编将生效。引用可以转换到接口类型或从接口类型
转换,instanceof 运算符可以用来决定某对象的类是否实现了接口。

第二十一,abstract的method是否可同时是static,是否可同时是native,是否可同时是s
ynchronized?
都不能

第二十二,接口是否可继承接口? 抽象类是否可实现(implements)接口? 抽象类是否可继
承实体类(concrete class)?
接口可以继承接口。抽象类可以实现(implements)接口,抽象类是否可继承实体类,但前
提是实体类必须有明确的构造函数。

第二十三,启动一个线程是用run()还是start()?
启动一个线程是调用start()方法,使线程所代表的虚拟处理机处于可运行状态,这意味着
它可以由JVM调度并执行。这并不意味着线程就会立即运行。run()方法可以产生必须退出
的标志来停止一个线程。
第二十四,构造器Constructor是否可被override?
构造器Constructor不能被继承,因此不能重写Overriding,但可以被重载Overloading。


第二十五,是否可以继承String类?
String类是final类故不可以继承。

第二十六,当一个线程进入一个对象的一个synchronized方法后,其它线程是否可进入此
对象的其它方法?
不能,一个对象的一个synchronized方法只能由一个线程访问。

第二十七,try {}里有一个return语句,那么紧跟在这个try后的finally {}里的code会不
会被执行,什么时候被执行,在return前还是后?
会执行,在return前执行。


第二十八,编程题: 用最有效率的方法算出2乘以8等於几?
有C背景的程序员特别喜欢问这种问题。

2 << 3

第二十九,两个对象值相同(x.equals(y) == true),但却可有不同的hash code,这句话
对不对?
不对,有相同的hash code。

第三十,当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可
返回变化后的结果,那么这里到底是值传递还是引用传递?
是值传递。Java 编程语言只由值传递参数。当一个对象实例作为一个参数被传递到方法中
时,参数的值就是对该对象的引用。对象的内容可以在被调用的方法中改变,但对象的引
用是永远不会改变的。


第三十一,swtich是否能作用在byte上,是否能作用在long上,是否能作用在String上?

switch(expr1)中,expr1是一个整数表达式。因此传递给 switch 和 case 语句的参数
应该是 int、 short、 char 或者 byte。long,string 都不能作用于swtich。
第三十二,编程题: 写一个Singleton出来。
Singleton模式主要作用是保证在Java应用程序中,一个类Class只有一个实例存在。
一般Singleton模式通常有几种种形式:
第一种形式: 定义一个类,它的构造函数为private的,它有一个static的private的该类
变量,在类初始化时实例话,通过一个public的getInstance方法获取对它的引用,继而调
用其中的方法。
public class Singleton {
private Singleton(){}
//在自己内部定义自己一个实例,是不是很奇怪?
//注意这是private 只供内部调用
private static Singleton instance = new Singleton();
//这里提供了一个供外部访问本class的静态方法,可以直接访问
public static Singleton getInstance() {
return instance;
}
}
第二种形式:
public class Singleton {
private static Singleton instance = null;
public static synchronized Singleton getInstance() {
//这个方法比上面有所改进,不用每次都进行生成对象,只是第一次
//使用时生成实例,提高了效率!
if (instance==null)
instance=new Singleton();
return instance; }
}
其他形式:
定义一个类,它的构造函数为private的,所有方法为static的。
一般认为第一种形式要更加安全

- 作者: batipang 2005年03月22日, 星期二 21:58  回复(0) |  引用(0) 加入博采