孔乙己是站着敲代码而穿长衫的唯一的人。他身材很高大;青白脸色,皱纹间时常夹些伤痕;一部乱蓬蓬的花白的胡子。穿的虽然是长衫,可是又脏又破,似乎十多年没有补,也没有洗。他对人说话,总是满口的“高并发高可用高性能”,教人半懂不懂的。因为他姓孔,别人便从描红纸上的“Java后端开发应届生孔乙己”这半懂不懂的话里,替他取下一个绰号,叫作孔乙己。孔乙己一到店,所有喝酒的人便都看着他笑,有的叫道,“孔乙己,你又被感谢信了!”他不回答,对柜里说,“温两碗酒,要一碟茴香豆。”便排出九文大钱。他们又故意的高声嚷道,“你一定是面试又没过吧!”孔乙己睁大眼睛说,“你怎么这样凭空污人清白……”“什么清白?我前天亲眼见你邮箱里全是感谢信,项目代码也全是偷人家的复制过来,被人吊着打。”孔乙己便涨红了脸,额上的青筋条条绽出,争辩道,“复制代码不能算偷……复制代码!……后端程序员的事,能算偷么?”接连便是难懂的话,什么“开源精神”,什么“性能优化”之类,引得众人都哄笑起来:店内外充满了快活的空气。 听人家背地里谈论,孔乙己原来也学过Java,但终于没有进学,又不会营生;于是愈过愈穷,弄到将要讨饭了。幸而写得一手CRUD,便实习替人家敲点代码,换一碗饭吃。可惜他又有一样坏脾气,便是好吃懒做。坐不到几天,便连人和电脑键盘鼠标,一齐失踪。如是几次,叫他实习的人也没有了。孔乙己没有法,便免不了偶然做些偷窃的事。但他在我们店里,品行却比别人都好,就是从不拖欠;虽然间或没有现钱,暂时记在粉板上,但不出一月,定然还清,从粉板上拭去了孔乙己的名字。 孔乙己喝过半碗酒,涨红的脸色渐渐复了原,旁人便又问道,“孔乙己,你当真会Java么?”孔乙己看着问他的人,显出不屑置辩的神气。他们便接着说道,“你怎的连半个offer也捞不到呢?”孔乙己立刻显出颓唐不安模样,脸上笼上了一层灰色,嘴里说些话;这回可是全是ThreadLocal,AQS,线程池,synchronized之类,一些不懂了。在这时候,众人也都哄笑起来:店内外充满了快活的空气。 在这些时候,我可以附和着笑,掌柜是决不责备的。而且掌柜见了孔乙己,也每每这样问他,引人发笑。孔乙己自己知道不能和他们谈天,便只好向孩子说话。有一回对我说道,“你学过Java么?”我略略点一点头。他说,“学过Java,……我便考你一考。这线程创建的方式,有多少种?”我想,讨饭一样的人,也配考我么?便回过脸去,不再理会。孔乙己等了许久,很恳切的说道,“不能写罢?……我教给你,记着!这些线程创建方式应当记得。将来你面试的时候,面试官会问。”我暗想我和面试还很远呢,而且我们掌柜也从不将茴香豆上账;又好笑,又不耐烦,懒懒的答他道,“谁要你教,不是继承Thread类重写run()方法么?”孔乙己显出极高兴的样子,将两个指头的长指甲敲着柜台,点头说,“对呀对呀!……线程创建的方式有三种,你知道么?”我愈不耐烦了,努着嘴走远。孔乙己刚用指甲蘸了酒,想在柜上手撕代码,见我毫不热心,便又叹一口气,显出极惋惜的样子。-------------------------------------------------------------------------------楼主前几天某中小公司三面过,直接结束秋招了。因为前一段时间秋招天天被八股,人都背麻了,出去闲逛舒缓心情,路过一个雕像,一看这怎么这么像孔乙己,遂抬头,酒店名给我气笑了,天天背八股但面试都没几个,真觉得自己挺像赛博孔乙己的。顺便附上拍的两种风景,希望能给焦虑的秋招大家带来一点欢乐。最后把答案报一波啊,娱乐之余也顺便复习下😁:1.继承Thread类并重写run()方法public class CreatingThread01 extends Thread { @Override public void run() { System.out.println(getName() + &quot; is running&quot;); } public static void main(String[] args) { new CreatingThread01().start(); }}2.实现Runnable接口public class CreatingThread02 implements Runnable { @Override public void run() { System.out.println(Thread.currentThread().getName() + &quot; is running&quot;); } public static void main(String[] args) { new Thread(new CreatingThread02()).start(); }}3.实现Callabe接口public class CreatingThread04 implements Callable { @Override public Long call() throws Exception { Thread.sleep(2000); System.out.println(Thread.currentThread().getId() + &quot; is running&quot;); return Thread.currentThread().getId(); } public static void main(String[] args) throws ExecutionException, InterruptedException { FutureTask task = new FutureTask<>(new CreatingThread04()); new Thread(task).start(); System.out.println(&quot;等待完成任务&quot;); Long result = task.get(); System.out.println(&quot;任务结果:&quot; + result); }}#牛客在线求职答疑中心##你都收到了哪些公司的感谢信?##校招##秋招##Java#