精华内容
下载资源
问答
  • 分享职场干货、软件编程、程序人生和创业资源。 文|洪生鹏 程序员面试时,序列化知识点经常会遇到。...面试官:你都工作五年了,连序列化都不知道,你这5年都干些什么了?张工一脸无助,不过确实...

    程序员面试时,序列化知识点经常会遇到。

    张工是一名java程序员,工作5年了,一直从事java开发。最近到某互联网公司面试,做了笔试题后,有一道笔试题是这样子的:Serializable有什么作用,张工没有作答,面谈时面试官又问了,张工回答不出个所以然。面试官:你都工作五年了,连序列化都不知道,你这5年都干些什么了?张工一脸的无助,不过确实不应该,类似Serializable序列化这样的知识点,平时应该不会少用。

    小编之前参加的笔试也遇到了关于序列化的问题,关于序列化我们都能知道个大概,但要是能进一步分析个所以然那就更好了,这样能给面试官留下更好的印象。

    一般情况下,我们在定义实体类时会继承Serializable接口,类似这样:
    在这里插入图片描述
    我们在实体类中引用了Serializable这个接口,那么这个接口到底有什么?细心的你会发现我们还定义了个serialVersionUID变量。这个变量到底有什么作用?

    什么是Serializable接口

    一个对象序列化的接口,一个类只有实现了Serializable接口,它的对象才能被序列化。

    什么是序列化?

    序列化是将对象状态转换为可保持或传输的格式的过程。与序列化相对的是反序列化,它将流转换为对象。这两个过程结合起来,可以轻松地存储和传输数据。

    为什么要序列化对象

    把对象转换为字节序列的过程称为对象的序列化
    把字节序列恢复为对象的过程称为对象的反序列化

    什么情况下需要序列化?

    当我们需要把对象的状态信息通过网络进行传输,或者需要将对象的状态信息持久化,以便将来使用时都需要把对象进行序列化

    那为什么还要继承Serializable。那是存储对象在存储介质中,以便在下次使用的时候,可以很快捷的重建一个副本。

    或许你会问,我在开发过程中,实体并没有实现序列化,但我同样可以将数据保存到mysql、Oracle数据库中,为什么非要序列化才能存储呢?
    (最重要的两个原因是:

    1、将对象的状态保存在存储媒体中以便可以在以后重新创建出完全相同的副本;
    2、按值将对象从一个应用程序域发送至另一个应用程序域。

    实现serializable接口的作用是就是可以把对象存到字节流,然后可以恢复。所以你想如果你的对象没实现序列化怎么才能进行网络传输呢,要网络传输就得转为字节流,所以在分布式应用中,你就得实现序列化,如果你不需要分布式应用,那就没那个必要实现序列化。)

    我们来看看Serializable到底是什么,跟进去看一下,我们发现Serializable接口里面竟然什么都没有,只是个空接口
    在这里插入图片描述
    一个接口里面什么内容都没有,我们可以将它理解成一个标识接口。

    比如在课堂上有位学生遇到一个问题,于是举手向老师请教,这时老师帮他解答,那么这位学生的举手其实就是一个标识,自己解决不了问题请教老师帮忙解决。在Java中的这个Serializable接口其实是给jvm看的,通知jvm,我不对这个类做序列化了,你(jvm)帮我序列化就好了。

    Serializable接口就是Java提供用来进行高效率的异地共享实例对象的机制,实现这个接口即可。

    什么是JVM?

    JVM是Java Virtual Machine(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。

    为什么要定义serialversionUID变量

    简单看一下 Serializable接口的说明
    在这里插入图片描述
    从说明中我们可以看到,如果我们没有自己声明一个serialVersionUID变量,接口会默认生成一个serialVersionUID

    However, it is strongly recommended that all serializable
    classes explicitly declare serialVersionUID values, since the default
    serialVersionUID computation is highly sensitive to class details that
    may vary depending on compiler implementations, and can thus result in
    unexpectedInvalidClassExceptions during deserialization.

    但是强烈建议用户自定义一个serialVersionUID,因为默认的serialVersinUID对于class的细节非常敏感,反序列化时可能会导致InvalidClassException这个异常。

    在前面我们已经新建了一个实体类User实现Serializable接口,并且定义了serialVersionUID变量。

    我们把User写到文件,然后读取出来。
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    是的,你没有看错,序列化与反序列化操作过程就是这么的简单。只需要将User写入到文件中,然后再从文件中进行恢复,恢复后得到的内容与之前完全一样,但是两者是不同的对象。前面提到过一个问题,如果将serialVersionUID变量去掉,我们来看看,会发生什么事情。

    刚开始提到了,serialVersionUID要不要指定呢?如果不指定会出现什么样的后果?如果指定了以后后边的值又代表着什么意思呢?既然系统指定了这个字段,那么肯定是有它的作用的。

    这个serialVersionUID是用来辅助对象的序列化与反序列化的,原则上序列化后的数据当中的serialVersionUID与当前类当中的serialVersionUID一致,那么该对象才能被反序列化成功。这个serialVersionUID的详细的工作机制是:在序列化的时候系统将serialVersionUID写入到序列化的文件中去,当反序列化的时候系统会先去检测文件中的serialVersionUID是否跟当前的文件的serialVersionUID是否一致,如果一直则反序列化成功,否则就说明当前类跟序列化后的类发生了变化,比如是成员变量的数量或者是类型发生了变化,那么在反序列化时就会发生crash,并且回报出错误:

    java.io.InvalidClassException: User; local class incompatible: stream
    classdesc serialVersionUID = -1451587475819212328, local class
    serialVersionUID = -3946714849072033140at
    java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:699)at
    java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1885)at
    java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1751)at
    java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:2042)at
    java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1573)at
    java.io.ObjectInputStream.readObject(ObjectInputStream.java:431)at
    Main.readUser(Main.java:32)at Main.main(Main.java:10)
    在这里插入图片描述
    原文转载:https://baijiahao.baidu.com/s?id=1633305649182361563&wfr=spider&for=pc

    展开全文
  • 面试官:你都工作五年了,连序列化都不知道,你这5年都干些什么了?张工一脸无助,不过确实不应该,类似Serializable序列化这样知识点,平时应该不会少用。 之前参加笔试也遇到了关于序列化问题,关于序列化...

    程序员面试时,序列化知识点经常会遇到。

    小张是一名java程序员,工作5年了,一直从事java开发。最近到某互联网公司面试,做了笔试题后,有一道笔试题是这样子的:Serializable有什么作用,张工没有作答,面谈时面试官又问了,小张回答不出个所以然。面试官:你都工作五年了,连序列化都不知道,你这5年都干些什么了?张工一脸的无助,不过确实不应该,类似Serializable序列化这样的知识点,平时应该不会少用。

    之前参加的笔试也遇到了关于序列化的问题,关于序列化我们都能知道个大概,但要是能进一步分析个所以然那就更好了,这样能给面试官留下更好的印象。

    一般情况下,我们在定义实体类时会继承Serializable接口,类似这样:
    在这里插入图片描述
    我们在实体类中引用了Serializable这个接口,那么这个接口到底有什么?细心的你会发现我们还定义了个serialVersionUID变量。这个变量到底有什么作用?

    什么是Serializable接口

    一个对象序列化的接口,一个类只有实现了Serializable接口,它的对象才能被序列化。

    什么是序列化?

    序列化是将对象状态转换为可保持或传输的格式的过程。与序列化相对的是反序列化,它将流转换为对象。这两个过程结合起来,可以轻松地存储和传输数据。

    为什么要序列化对象

    把对象转换为字节序列的过程称为对象的序列化
    把字节序列恢复为对象的过程称为对象的反序列化
    什么情况下需要序列化?

    当我们需要把对象的状态信息通过网络进行传输,或者需要将对象的状态信息持久化,以便将来使用时都需要把对象进行序列化

    那为什么还要继承Serializable。那是存储对象在存储介质中,以便在下次使用的时候,可以很快捷的重建一个副本。

    或许你会问,我在开发过程中,实体并没有实现序列化,但我同样可以将数据保存到mysql、Oracle数据库中,为什么非要序列化才能存储呢?

    我们来看看Serializable到底是什么,跟进去看一下,我们发现Serializable接口里面竟然什么都没有,只是个空接口
    在这里插入图片描述
    一个接口里面什么内容都没有,我们可以将它理解成一个标识接口。

    比如在课堂上有位学生遇到一个问题,于是举手向老师请教,这时老师帮他解答,那么这位学生的举手其实就是一个标识,自己解决不了问题请教老师帮忙解决。在Java中的这个Serializable接口其实是给jvm看的,通知jvm,我不对这个类做序列化了,你(jvm)帮我序列化就好了。

    Serializable接口就是Java提供用来进行高效率的异地共享实例对象的机制,实现这个接口即可。

    什么是JVM?

    JVM是Java Virtual Machine(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。

    展开全文
  • 分享职场干货、软件编程、程序人生和创业资源。文|洪生鹏程序员面试时,序列化知识点经常会遇到。...面试官:你都工作五年了,连序列化都不知道,你这5年都干些什么了?张工一脸无助,不过确实不应该...

    分享职场干货、软件编程、程序人生和创业资源。

    文|洪生鹏

    程序员面试时,序列化知识点经常会遇到。

    张工是一名java程序员,工作5年了,一直从事java开发。最近到某互联网公司面试,做了笔试题后,有一道笔试题是这样子的:Serializable有什么作用,张工没有作答,面谈时面试官又问了,张工回答不出个所以然。面试官:你都工作五年了,连序列化都不知道,你这5年都干些什么了?张工一脸的无助,不过确实不应该,类似Serializable序列化这样的知识点,平时应该不会少用。

    小编之前参加的笔试也遇到了关于序列化的问题,关于序列化我们都能知道个大概,但要是能进一步分析个所以然那就更好了,这样能给面试官留下更好的印象。

    一般情况下,我们在定义实体类时会继承Serializable接口,类似这样:

    f5f62bfa2664a0c45dbfb47e0efb37d9.png

    User实体对象

    我们在实体类中引用了Serializable这个接口,那么这个接口到底有什么?细心的你会发现我们还定义了个serialVersionUID变量。这个变量到底有什么作用?

    什么是Serializable接口

    一个对象序列化的接口,一个类只有实现了Serializable接口,它的对象才能被序列化。

    什么是序列化?

    序列化是将对象状态转换为可保持或传输的格式的过程。与序列化相对的是反序列化,它将流转换为对象。这两个过程结合起来,可以轻松地存储和传输数据。

    为什么要序列化对象

    1. 把对象转换为字节序列的过程称为对象的序列化
    2. 把字节序列恢复为对象的过程称为对象的反序列化

    什么情况下需要序列化?

    当我们需要把对象的状态信息通过网络进行传输,或者需要将对象的状态信息持久化,以便将来使用时都需要把对象进行序列化

    那为什么还要继承Serializable。那是存储对象在存储介质中,以便在下次使用的时候,可以很快捷的重建一个副本。

    或许你会问,我在开发过程中,实体并没有实现序列化,但我同样可以将数据保存到mysql、Oracle数据库中,为什么非要序列化才能存储呢?

    我们来看看Serializable到底是什么,跟进去看一下,我们发现Serializable接口里面竟然什么都没有,只是个空接口

    a097861b72f8f1ecd2a275da126f4167.png

    一个接口里面什么内容都没有,我们可以将它理解成一个标识接口。

    比如在课堂上有位学生遇到一个问题,于是举手向老师请教,这时老师帮他解答,那么这位学生的举手其实就是一个标识,自己解决不了问题请教老师帮忙解决。在Java中的这个Serializable接口其实是给jvm看的,通知jvm,我不对这个类做序列化了,你(jvm)帮我序列化就好了。

    Serializable接口就是Java提供用来进行高效率的异地共享实例对象的机制,实现这个接口即可。

    什么是JVM?

    JVM是Java Virtual Machine(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。

    为什么要定义serialversionUID变量

    简单看一下 Serializable接口的说明

    aefc0e222885cde7ef376926e492d55c.png

    从说明中我们可以看到,如果我们没有自己声明一个serialVersionUID变量,接口会默认生成一个serialVersionUID

    However, it is strongly recommended that all serializable classes explicitly declare serialVersionUID values, since the default serialVersionUID computation is highly sensitive to class details that may vary depending on compiler implementations, and can thus result in unexpectedInvalidClassExceptions during deserialization.

    但是强烈建议用户自定义一个serialVersionUID,因为默认的serialVersinUID对于class的细节非常敏感,反序列化时可能会导致InvalidClassException这个异常。

    在前面我们已经新建了一个实体类User实现Serializable接口,并且定义了serialVersionUID变量。

    我们把User写到文件,然后读取出来。

    f8d746e004280f3c08d199e1b4560c66.png
    1cbd84b4b8362666be8d2b64bd8cf88f.png
    395b4f637d1708c172878e83bfd9a2c3.png

    是的,你没有看错,序列化与反序列化操作过程就是这么的简单。只需要将User写入到文件中,然后再从文件中进行恢复,恢复后得到的内容与之前完全一样,但是两者是不同的对象。前面提到过一个问题,如果将serialVersionUID变量去掉,我们来看看,会发生什么事情。

    刚开始提到了,serialVersionUID要不要指定呢?如果不指定会出现什么样的后果?如果指定了以后后边的值又代表着什么意思呢?既然系统指定了这个字段,那么肯定是有它的作用的。

    这个serialVersionUID是用来辅助对象的序列化与反序列化的,原则上序列化后的数据当中的serialVersionUID与当前类当中的serialVersionUID一致,那么该对象才能被反序列化成功。这个serialVersionUID的详细的工作机制是:在序列化的时候系统将serialVersionUID写入到序列化的文件中去,当反序列化的时候系统会先去检测文件中的serialVersionUID是否跟当前的文件的serialVersionUID是否一致,如果一直则反序列化成功,否则就说明当前类跟序列化后的类发生了变化,比如是成员变量的数量或者是类型发生了变化,那么在反序列化时就会发生crash,并且回报出错误:

    java.io.InvalidClassException: User; local class incompatible: stream classdesc serialVersionUID = -1451587475819212328, local class serialVersionUID = -3946714849072033140at java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:699)at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1885)at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1751)at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:2042)at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1573)at java.io.ObjectInputStream.readObject(ObjectInputStream.java:431)at Main.readUser(Main.java:32)at Main.main(Main.java:10)
    2d7431fd03b1c46030249bae6e1cb20b.png

    小编认为,类似序列化这样的基础知识,平时在学习中要重视,才能编写出更加高效稳定的程序。不知对此你是怎么看待的,欢迎交流!

    展开全文
  • 输入url后浏览器些什么(详解) DNS(Domain Name System, 域名系统) 解析 DNS解析过程就是寻找哪台机器上有你真正需要资源过程.但你在浏览器张红输入一个地址时,例如:baidu.com,其实不是百度网站真正意义上...

    输入url后浏览器干了些什么(详解)

    DNS(Domain Name System, 域名系统) 解析

    DNS解析的过程就是寻找哪台机器上有你真正需要的资源过程.但你在浏览器张红输入一个地址时,例如:baidu.com,其实不是百度网站真正意义上的地址.互联网上每一台计算机的唯一标识是他的IP地址,但是IP地址并不方便记忆.用户更细化用方便记忆的网址去寻找互联网上的其他计算机.也就是上面提到的百度的网址.所以互联网设计者需要在用户的方便性与可用性做一个权衡,这个权衡就是一个网址到IP地址的转换,这个过程就是DNS解析.他实际上充当了一个翻译的角色,实现了网址到IP地址的转换.当然如果你直接输入的是另一台电脑的IP地址来访问他,那么不存在这一步.

    TCP连接(三次握手)

    知道了服务器的IP地址,就开始和服务器简历连接了.连接的建立需要经历三次握手

    • 第一次握手: 建立连接时,客户端发送syn包(syn=j)到服务器,并进入SYN_SENT,等待服务器确认.
    • 第二次握手: 服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己发送一个SYN包(syn=k),即SYN+ACK包,此时服务器进入SYN_RECV状态
    • 第三次握手: 客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED(TCP链接成功状态),完成三次握手

    发送HTTP请求

    当服务器与主机建立了链接以后,注意开始和服务器进行通信.网页请求是一个单向请求的过程.即一个主机向服务器请求数据,服务器返回相应的数据的过程.浏览器根据URL内容生成HTTP请求,HTTP请求报文是由三部分组成:请求行,请求报头,请求正文.

    服务器处理请求并返回HTTP报文

    服务器接到请求后,会根据HTTP请求中的内容来决定如何获取相应的HTML文件,服务器得到的HTML文件发送给浏览器.HTTP响应报文也是由三部分组成:状态码,响应头,响应报文.

    • 状态码
      • 1xx: 指示信息,标示请求已接收,急需处理.
      • 2xx: 成功信息,标示请求已被成功接收,理解,接收
      • 3xx: 重定向,要完成请求必须进行更进一步的操作
      • 4xx: 客户端错误,请求有语法错误或请求无法实现
      • 5xx: 服务器端错误,服务器未能实现合法的错误
    • 响应头
      • 常见的响应头字段有:Server,Connection…
    • 响应报文
      • 服务器返回给浏览器的文本信息,同昌HTML,CSS,JS,图片等文件就放在这一部分

    浏览器解析渲染页面

    在浏览器还没有在完全接受HTML文件时便开始渲染,显示网页
    在执行HTML中的代码时,根据需要,浏览器会继续请求图片,CSS,JavaScript等文件.过程同请求HTML

    连接结束

    四次回收连接

    • 客户端进程发出连接释放报文,并且停止发送数据.释放数据报文首部.FIN=1,其序列号为seq=u(风雨前面已经传过来的数据的最后一个序号+1),此时,客户端进入FIN-WAIT-1(终止等待1)状态.TCP规定,FIN报文段即使不携带数据,也要消耗一个序号.
    • 服务器收到连接释放报文,发出确认报文,ACK=1,ack=u+1,并且带上自己的序列号seq=v此时,服务端就加入了CLOSE-WAIT(关闭-等待)状态.TCP服务器同之高层的应用进程,客户端向服务器的方向接释放了,这时处于半关闭状态,及客户端已经没有数据要发送了.但是服务器若发送数据,客户端仍然接收.这个状态还要持续一段时间,也就是整个CLOSE-WAIT状态持续的时间.
    • 客户端收到服务器的确认请求后,此时,客户端就进入FIN-WAIT-2(终止等待2)状态,等待服务器发送连接释放报文(在这之前还需要接收服务器发送的最后数据).
    • 服务器将最后的数据发送完毕后,就像客户端发送连接释放报文,FIN=1,ack=u+1,由于在半关闭状态,服务器很可能又发送了一些数据,假定此时的序列号为seq=w,此时,服务器就进入了LAST-ACK(最后确认)状态,等待客户端的确认
    • 客户端收到服务器的连接释放报文后,必须发出确认,ACK=1,ack=w+1,而自己的序列号是seq=u+1,此时客户端进入了TIME-WAIT(时间等待)状态.注意此时TCP连接没有释放,必须经过2MSL(最长报文段寿命)的时间后,当客户端撤销相应的TCB后,才进入CLOSED状态
    • 服务器只要收到客户端发出的确认,立即进入CLOSED状态.同样,撤销TCB后,就结束了这次TCP连接.可以看到,服务器结束TCP连接的时间比客户端要更早一些
    展开全文
  • 很早前就想写篇博文介绍一下互联网DBA需要干的一些事情,但苦于没有时间,忙于平台建设,最近,各个模块初具规模,故有时间静下心来,介绍一下。 众所周知,互联网DBA与传统行业DBA有很大不同,那就是管理机器...
  • 人一如既往多,一小伙子要给我让座,看了看他小身板,我说不用,你也是 IT 吧,今天咱们是程序员。 来到公司,墙上那条新贴上去刺眼规定总是让我很不舒服:所有服务器端语言必须...
  • 学会python可以干什么都希望一段感情会有结果,谁不希望美好爱情最后是一场痛,但是如果一开始就想着不在乎天长地久,只在乎曾经拥有”态度,再美好感情也不会有好结果。从入门级选手到专业级选手做的...
  • 毕竟算是一门把我带入互联网行业语言,而我近期已经几乎不再写 Py 代码, 一个记录,也许会对他人起到帮助,也算是纪念与感恩了。二、摘录推文地址:https://twitter.com/ppcelery/status/11596201...
  • 互联网为企业带来便利和效率同时,企业也正在受到意想不到损失,这个话题可以从一个问题开始:您知道您员工上班时间正在上网做些什么吗? 在互联网为企业带来便利和效率同时,企业也正在受到意想不到损失...
  • 是因为早时候在某乎看到了一不明身份程序员指责微软Win RT框架屏蔽了绝大部分Win32 API,他们不明白为什么微软要这么“愚蠢”决定发布了一个功能残疾新平台。对于这个问题可以简单用四个字回答:...
  • 最早接触2维码扫码功能,是在2011年,那会移动互联网正是起步阶段,大家感觉智能手机可以更强大,但到底要做些什么功能,是在探索和创新。2维码扫描功能就是这些创新功能之一。 当然,2维码扫描说到底还是图像...
  • 5G时代,与你我何

    千次阅读 2020-05-21 18:20:14
    移动通信领域,当下最热门当属“5G”。5G仅仅只是我们大多数人接触到5G手机,...下面重新定义下5G时代,能为我们做些什么? 3G到4G升级:代表网络彻底换代,手机平滑升级 4G引入是把手机数据通信能力彻底互联.
  • 手机变得越来越离不开,人们也越来越空虚,甚至有时候拿起手机不知道干些什么,但是还在盯着屏幕看。或者即使不想看手机,也想划划屏幕。当看到学生们书包上挂着一个娃娃上学,放学,这给我感觉:她是孤单(只...
  • 【gloomyfish】-我2012

    千次阅读 2012-12-31 21:00:14
    今天是2012年最后一天,总结一下2012年都干些什么事情 1. 坚持在CSDN写博客一年,总结了自己过去所学,尝试了一些新技术 2. 客户产品全面转型面向互联网与移动平台倾斜,今年4月份以后再  也没有过...
  • 我所理解的.Net 世间万事万物一样,不论是抽象的...但是,早在1997年微软就准备着手.Net,当时比尔盖茨就已经看到了互联网的发展规模,就想这个平台,但是当时他的想法与现在的想法有 出入。他当时想一件什么
  • 手机端有哪些免费一键换ip?

    千次阅读 2021-02-08 13:48:19
    手机可是我们日常离不开生活工作,我们干什么都基本要用到手机,比如看电视、刷抖音或者打游戏,大家最热衷王者荣耀就是其中之一,而手机端链接最大汇流就是互联网了,但是在提供给我们便捷之余,对于互联网...
  • 分享职场干货、软件编程、程序人生和创业资源。文|洪生鹏程序员面试时,序列化知识点经常会遇到。...面试官:你都工作五年了,连序列化都不知道,你这5年都干些什么了?张工一脸无助,不过确实不应该...
  • 程序员将代码注入生命去打造互联网的浪潮之巅,当有一天他们老了,会走向那里,会做些什么? 很多年以后,在我60岁的那天早晨,天刚蒙蒙亮我就起床了,先去公园晨练,然后回来早餐(50岁的时候我学会了做饭),...
  • Serializable详解

    2020-04-01 01:16:33
    程序员面试时,序列化知识点经常会遇到。 张工是一名java程序员,...面试官:你都工作五年了,连序列化都不知道,你这5年都干些什么了?张工一脸无助,不过确实不应该,类似Serializable序列化这样知识点,平...
  • 序列化Serializable

    2020-10-18 15:43:23
    面试官:你都工作五年了,连序列化都不知道,你这5年都干些什么了?张工一脸无助,不过确实不应该,类似Serializable序列化这样知识点,平时应该不会少用。 小编之前参加笔试也遇到了关于序列化问题,关于...
  • 摸鱼时间都干些什么呢?如果你早早完成了当天任务,坐等下班感觉是不是很爽呢?我想说这时间还是很难熬,还不如找点事情来得快呢,那点什么呢?写个下班倒计时吧,就这么愉快决定了…… 实现...
  • 2021-02-22

    2021-02-22 20:00:18
    面试官:连Serializable都不知道是什么,你这5年都干些什么了? 创誉代码 文|洪生鹏 https://baijiahao.baidu.com/s?id=1633305649182361563&wfr=spider&for=pc 程序员面试时,序列化知识点经常会遇到。 ...
  •  首先,要明白学好Linux不是一件一蹴而就事,一定要能坚持使用它,特别是在使用初期,由于在Linux中,用户权限很大,任何事情很自由,所以,你往往需要知道你做的每一步在什么,系统些什么。...
  • 当程序员老去

    2014-12-17 14:38:59
    程序员将代码注入生命去打造互联网的浪潮之巅,当有一天他们老了,会走向那里,会做些什么? 很多年以后,在我60岁的那天早晨,天刚蒙蒙亮我就起床了,先去公园晨练,然后回来早餐(50岁的时候我学会了做饭),送...

空空如也

空空如也

1 2
收藏数 37
精华内容 14
关键字:

做互联网的都干些什么