深入理解:持久化、序列化,引用变量(超值知识点,通俗易懂)

本文主要是介绍深入理解:持久化、序列化,引用变量(超值知识点,通俗易懂),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一.  持久化


       最早的时候听说持久化是JDBC,数据库的连接,老师说JDBC是一个持久层的框架。当时听的一知半解。

       现在我们一起去探讨吧! 

     个人总结,凡是编程语言:大方向只有两个:输入和输出,中间的什么库啊,框架啊等都是为其服务的。(如果错误,请大神指正!)

     拿下它 ! 一定要搞懂!这是基础!!还不会!!心慌!!

     不放过一个技术积累的机会!


①  什么是持久化 ?

      将程序数据从瞬时状态装换为永久状态的机制过程或者是说装换结果的状态。

      通俗的讲,就是将内存中的程序的数据永久保存在磁盘中,或者数据库中,云盘等等,能长久保存的存储结构。

②  怎么实现持久化 ?

      就目前了解程度来看:

  1.  JDBC技术,CP30等连接池技术,将数据保存在数据库中
  2.  IO技术,将程序的数据存储在数据IO流中

③  序列化、持久化

     1. 关于序列化的相关知识     

我们在写实体类的时候,往往会添加这一行代码:

public class S implements Serializable

     这段代码完成了类S的实现序列化,将其装换为字节流,然后在网络上传送。反序列化就是从字节流回复称对象。其实在我们进行远程通信的时候,我们传输图片和文件等等,传输的过程先将传输的文件以二进制流的形式在网络上传送。反序列化就是当接收方从网上流的形式接收,再恢复成整个文件的形式,就是反序列化。

     2. 序列化和持久化之间的关系

       序列化是为了解决对象之间进行传输的问题,传输的方式可以是线程之间,进程之间,内外存之间,主机之间的正常进行。持久化包含序列化,持久化将数据永久性的保存。序列化解决了数据对象之间的传输,持久化可以是数据库方案,文件方案,对象方案等等。


二. 引用变量,可以说用引用变量操作对象.

     当我们对一个对象操作时候,真正操作的是对对象的引用。


     先看一行代码:

String s;

     相信大家对这行代码肯定很熟悉,String s; s是String类型的一个引用,什么是引用,就是在作用域有效的情况下,s的数据类型就是String,String引用了s作为自己的变量类型。因为这样创建s没有和任何事物相连,因此一个安全的做法就是将其进行初始化。

Demo demo = new Demo();

    简单的解释平时创建的对象:new Demo():创建一个Demo对象,demo是Demo的引用变量,存放在栈内存,将对象引用指向新的对象,无参构造函数初始化对象。


分享技术心得,希望和大家共同进步!有想法的伙伴们可以私信和留言!

这篇关于深入理解:持久化、序列化,引用变量(超值知识点,通俗易懂)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/728163

相关文章

Java中八大包装类举例详解(通俗易懂)

《Java中八大包装类举例详解(通俗易懂)》:本文主要介绍Java中的包装类,包括它们的作用、特点、用途以及如何进行装箱和拆箱,包装类还提供了许多实用方法,如转换、获取基本类型值、比较和类型检测,... 目录一、包装类(Wrapper Class)1、简要介绍2、包装类特点3、包装类用途二、装箱和拆箱1、装

深入解析Spring TransactionTemplate 高级用法(示例代码)

《深入解析SpringTransactionTemplate高级用法(示例代码)》TransactionTemplate是Spring框架中一个强大的工具,它允许开发者以编程方式控制事务,通过... 目录1. TransactionTemplate 的核心概念2. 核心接口和类3. TransactionT

深入理解Apache Airflow 调度器(最新推荐)

《深入理解ApacheAirflow调度器(最新推荐)》ApacheAirflow调度器是数据管道管理系统的关键组件,负责编排dag中任务的执行,通过理解调度器的角色和工作方式,正确配置调度器,并... 目录什么是Airflow 调度器?Airflow 调度器工作机制配置Airflow调度器调优及优化建议最

浅析Rust多线程中如何安全的使用变量

《浅析Rust多线程中如何安全的使用变量》这篇文章主要为大家详细介绍了Rust如何在线程的闭包中安全的使用变量,包括共享变量和修改变量,文中的示例代码讲解详细,有需要的小伙伴可以参考下... 目录1. 向线程传递变量2. 多线程共享变量引用3. 多线程中修改变量4. 总结在Rust语言中,一个既引人入胜又可

SpringBoot项目中Maven剔除无用Jar引用的最佳实践

《SpringBoot项目中Maven剔除无用Jar引用的最佳实践》在SpringBoot项目开发中,Maven是最常用的构建工具之一,通过Maven,我们可以轻松地管理项目所需的依赖,而,... 目录1、引言2、Maven 依赖管理的基础概念2.1 什么是 Maven 依赖2.2 Maven 的依赖传递机

一文带你理解Python中import机制与importlib的妙用

《一文带你理解Python中import机制与importlib的妙用》在Python编程的世界里,import语句是开发者最常用的工具之一,它就像一把钥匙,打开了通往各种功能和库的大门,下面就跟随小... 目录一、python import机制概述1.1 import语句的基本用法1.2 模块缓存机制1.

深入理解C语言的void*

《深入理解C语言的void*》本文主要介绍了C语言的void*,包括它的任意性、编译器对void*的类型检查以及需要显式类型转换的规则,具有一定的参考价值,感兴趣的可以了解一下... 目录一、void* 的类型任意性二、编译器对 void* 的类型检查三、需要显式类型转换占用的字节四、总结一、void* 的

深入理解Redis大key的危害及解决方案

《深入理解Redis大key的危害及解决方案》本文主要介绍了深入理解Redis大key的危害及解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着... 目录一、背景二、什么是大key三、大key评价标准四、大key 产生的原因与场景五、大key影响与危

Redis事务与数据持久化方式

《Redis事务与数据持久化方式》该文档主要介绍了Redis事务和持久化机制,事务通过将多个命令打包执行,而持久化则通过快照(RDB)和追加式文件(AOF)两种方式将内存数据保存到磁盘,以防止数据丢失... 目录一、Redis 事务1.1 事务本质1.2 数据库事务与redis事务1.2.1 数据库事务1.

深入理解C++ 空类大小

《深入理解C++空类大小》本文主要介绍了C++空类大小,规定空类大小为1字节,主要是为了保证对象的唯一性和可区分性,满足数组元素地址连续的要求,下面就来了解一下... 目录1. 保证对象的唯一性和可区分性2. 满足数组元素地址连续的要求3. 与C++的对象模型和内存管理机制相适配查看类对象内存在C++中,规