一、Java文件存储

        简单的Java文件编写如图:

Java大文件存储 java文件存储设计_像素点

        其中,public是访问修饰符,class是类,而Demo则是类名。在代码中main()方法也就是主方法可以说是程序的入口。

        写过Java文件的人都知道,在编写完成Java文件之后会自动产生一个×××.class的文件,即二进制的字节码文件。也就是说,Java字节码文件(.class)是Java源文件(.java)编译后产生的目标文件,.class文件就是运行在jvm上的Java程序。

        Java文件实际运行的整个过程,如下图所示:

Java大文件存储 java文件存储设计_Java_02

        在内存中的存储过程则是,先main()方法入栈,读取main()方法,即可让function()方法入栈,然后读取function()方法,计算出a=2,然后function()出栈,最后是main()方法出栈。要知道这个简单的过程,我们就要知道栈的特点是先进后出,故main()后出。整个过程如图所示:

Java大文件存储 java文件存储设计_Java_03

二、计算机存储

        计算机存储的视觉与听觉信息如下图所示:

Java大文件存储 java文件存储设计_Java大文件存储_04

        我们视觉看到的东西可以用像素点来表示,像素点的三个组成部分:

  • 坐标:相对于左上角的点的x、y坐标
  • 颜色:光学三颜色红绿蓝(范围0~255)
  • 亮度:亮度基本由颜色决定

        其中x、y,红绿蓝代表的意义如下:x、y坐标的大小以现今屏幕的大小基本上用short类型就能够进行存储,总共32bit。红绿蓝三颜色的值范围是0~255,每一种我们只需要一个无符号的byte类型就能存储,一共也就24bit。综上所述,我们一共需要56bit就能存储一个像素点。

        我们要知道每一个文字都是一个图形,假设每一个文字平均使用200个像素点,那么就消耗掉11200bit(200*56bit=11200bit),也就是说,当我们的屏幕想要显示一个文字的时候,我们需要传输11200bit的数据。

        在显示图像的时候我们要知道,我们需要用到翻译工具,如ASCII编码等,我们要用翻译工具将我们所写的二进制代码转换成我们看得懂的符号,我们电脑上看到的画面都是如此显示的。

Java大文件存储 java文件存储设计_数据结构_05

ASCII编码转换图如下:

Java大文件存储 java文件存储设计_字节码_06

         在这说一下该知识点以外的知识,程序由数据结构和算法组成;再来就是链表的特点就是内存不连续,这也就导致查找慢,而删除快,因为删除的时候只要把指针的方向改变即可。