有损压缩、无损压缩(图片、音频、视频)

无损压缩:是对文件本身的压缩,和其它数据文件的压缩一样,是对文件的数据存储方式进行优化采用某种算法表示重复的数据信息,文件可以完全还原,不会影响文件内容,对于数码图像而言,也就不会使图像细节有任何损失。

无损压缩的基本原理是相同的颜色信息只需保存一次。压缩图像的软件首先会确定图像中哪些区域是相同的,哪些是不同的。包括了重复数据的图像(如蓝天) 就可以被压缩,只有蓝天的起始点和终结点需要被记录下来。但是蓝色可能还会有不同的深浅,天空有时也可能被树木、山峰或其他的对象掩盖,这些就需要另外记录。从本质上看,无损压缩的方法可以删除一些重复数据,大大减少要在磁盘上保存的图像尺寸。但是,无损压缩的方法并不能减少图像的内存占用量,这是因为,当从磁盘上读取图像时,软件又会把丢失的像素用适当的颜色信息填充进来。如果要减少图像占用内存的容量,就必须使用有损压缩方法。

有损压缩:是对图像本身的改变,在保存图像时保留了较多的亮度信息,而将色相和色纯度的信息和周围的像素进行合并,合并的比例不同,压缩的比例也不同,由于信息量减少了,所以压缩比可以很高,图像质量也会相应的下降。 

有损压缩可以减少图像在内存和磁盘中占用的空间,在屏幕上观看图像时,不会发现它对图像的外观产生太大的不利影响。因为人的眼睛对光线比较敏感,光线对景物的作用比颜色的作用更为重要,这就是有损压缩技术的基本依据。

1.有损压缩、无损压缩对应的图片文件格式:
有损压缩格式:JPEG、JPG、WMF、WebP (jpeg、jpg、wmf)

无损压缩的图片格式:BMP、PCX、TIFF、GIF、TGA、PNG、RAW(bmp、pcx、tiff、gif、tga、png、raw)

有损压缩详细格式:

(1)WebP是Google新推出的影像技术,它可让网页图档有效进行压缩,同时又不影响图片格式兼容与实际清晰度,进而让整体网页下载速度加快。

与JPEG相同,WebP是一种有损压缩利用预测编码技术。但谷歌表示,这种格式的主要优势在于高效率。他们发现,“在质量相同的情况下,WebP格式图像的体积要比JPEG格式图像小40%,美中不足的是,WebP格式图像的编码时间“比JPEG格式图像长8倍”。

(2)JPEG也是最常见的一种图像格式,是一种有损压缩格式,能够将图像压缩在很小的储存空间,因此容易造成图像数据的损伤。

 JPEG是一种很灵活的格式,具有调节图像质量的功能,允许用不同的压缩比例对文件进行压缩,支持多种压缩级别,压缩比越大,品质就越低;相反地,压缩比越小,品质就越好。

JPEG格式压缩的主要是高频信息,对色彩的信息保留较好,适合应用于互联网,可减少图像的传输时间,可以支持24bit真彩色,也普遍应用于需要连续色调的图像。

JPEG格式是目前网络上最流行的图像格式

JPEG格式的应用非常广泛,特别是在网络和光盘读物上。各类浏览器均支持JPEG这种图像格式,因为JPEG格式的文件尺寸较小,下载速度快

JPEG 不适用于所含颜色很少、具有大块颜色相近的区域或亮度差异十分明显的较简单的图片。

3)JPEG2000作为JPEG的升级版,压缩率比JPEG高约30%左右同时支持有损和无损压缩

JPEG2000和JPEG相比优势明显,且向下兼容,因此可取代传统的JPEG格式。JPEG2000即可应用于传统的JPEG市场,如扫描仪、数码相机等,又可应用于新兴领域,如网路传输、无线通讯等等。

(4)WMF格式

WMF(Windows Metafile Format)是Windows中常见的一种图元文件格式,属于矢量文件格式。它具有文件短小、图案造型化的特点,整个图形常由各个独立的组成部分拼接而成,其图形往往较粗糙

无损压缩详细格式

(1)BMP

位图(外语简称:BMP、外语全称:BitMaP)BMP是一种与硬件设备无关的图像文件格式,使用非常广。它采用位映射存储格式,除了图像深度可选以外,不采用其他任何压缩,因此,BMP文件所占用的空间很大。BMP文件的图像深度可选lbit、4bit、8bit及24bit。BMP文件存储数据时,图像的扫描方式是按从左到右、从下到上的顺序。

BMP 是(Windows 位图) Windows 位图可以用任何颜色深度(从黑白到 24 位颜色)存储单个光栅图像。Windows 位图文件格式与其他 Microsoft Windows 程序兼容。它不支持文件压缩,也不适用于 Web 页。 从总体上看,Windows 位图文件格式的缺点超过了它的优点。为了保证照片图像的质量,请使用 PNG 、JPEG、TIFF 文件。BMP 文件适用于 Windows 中的墙纸。

BMP 不支持压缩,这会造成文件非常大。

(2)PCX

个人电脑交换(外语简称:PCX、外语全称:Personal Computer eXchange [1]  )

PCX是最早支持彩色图像的一种文件格式,现在最高可以支持256种彩色。PCX设计者很有眼光地超前引入了彩色图像文件格式,使之成为非常流行的图像文件格式。

PCX是PC机画笔的图像文件格式。PCX的图像深度可选为l、4、8bit。由于这种文件格式出现较早,它不支持真彩色。PCX文件采用RLE行程编码,文件体中存放的是压缩后的图像数据。因此,将采集到的图像数据写成PCX文件格式时,要对其进行RLE编码:而读取一个PCX文件时首先要对其进行 RLE解码,才能进一步显示和处理。

PCX 不受 Web 浏览器支持

(3)TIF格式

标签图像文件格式(中文简称TIF、外语简称TIFF、外语全称:TagImage FileFormat)是由Aldus和Microsoft公司为桌上出版系统研制开发的一种较为通用的图像文件格式。

TIFF格式灵活易变,它又定义了四类不同的格式:TIFF-B适用于二值图像:TIFF-G适用于黑白灰度图像;TIFF-P适用于带调色板的彩色图像:TIFF-R适用于RGB真彩图像。

TIFF支持多种编码方法,其中包括RGB压缩、RLE压缩、JPEG压缩等。

TIFF是现存图像文件格式中最复杂的一种,它具有扩展性、方便性、可改性,可以提供给IBMPC等环境中运行、图像编辑程序。

(4)GIF格式

图形交换格式(外语简称:GIF、外语全称:Graphics Interchange Format

GIF文件的数据,是一种基于LZW算法的连续色调的有损压缩格式。压缩率一般在50%左右,它不属于任何应用程序。几乎所有相关软件都支持它,公共领域有大量的软件在使用GIF图像文件。

GIF图像文件的数据是经过压缩的,而且是采用了可变长度等压缩算法。所以GIF的图像深度从lbit到8bit,也即GIF最多支持256种色彩的图像

GIF格式的另一个特点是其在一个GIF文件中可以存多幅彩色图像,如果把存于一个文件中的多幅图像数据逐幅读出并显示到屏幕上,就可构成一种最简单的动画。

GIF解码较快,但GIF不支持Alpha透明通道。

(5)TGA格式

已标记的图形(外语全称:Tagged Graphics)格式是由美国Truevision公司为其显示卡开发的,文件扩展名为".tga",已被国际上的图形、图像工业所接受。

TGA的结构比较简单,属于一种图形、图像数据的通用格式,在多媒体领域有很大影响,是计算机生成图像向电视转换的一种首选格式。

TGA图像格式最大的特点是可以做出不规则形状的图形、图像文件,一般图形、图像文件都为四方形,若需要有圆形、菱形甚至是缕空的图像文件时,TGA可就派上用场了。

 TGA格式支持压缩,使用不失真的压缩算法。是一种比较好的图片格式。

(6)PNG格式

便携式网络图形(外语简称PNG、外语全称:Portable Network Graphics),是网上接受的最新图像文件格式。

PNG能够提供长度比GIF小30%的无损压缩图像文件。它同时提供 24位和48位真彩色图像支持以及其他诸多技术性支持。

PNG非常新,所以并不是所有的程序都可以用它来存储图像文件,但Photoshop可以处理PNG图像文件,也可以用PNG图像文件格式存储。 

PNG 支持高级别无损耗压缩,但作为 Internet 文件格式,与 JPEG 的有损耗压缩相比,PNG 提供的压缩量较少。

PNG 支持 alpha 通道透明度,但作为 Internet 文件格式,PNG 对多图像文件或动画文件不提供任何支持。GIF 格式支持多图像文件和动画文件。

PNG 支持伽玛校正。

PNG 支持交错。

PNG 受最新的 Web 浏览器支持,但较旧的浏览器和程序可能不支持 PNG 文件。

(7)RAW格式

RAW中文解释是“原材料”或“未经处理的东西”。RAW文件包含了原图片文件在传感器产生后,进入照相机图像处理器之前的一切照片信息。用户可以利用PC上的某些特定软件对RAW格式的图片进行处理。

许多图像处理软件可以对照相机输出的RAW文件进行处理。这些软件提供了对RAW格式照片的锐度、白平衡、色阶和颜色的调节。此外,由于RAW拥有12位数据,你可以通过软件,从RAW图片的高光或昏暗区域榨取照片细节,这些细节不可能在每通道8位的JPEG或TIFF图片中找到。

兼容性不够强仍然是限制RAW格式发展的最大障碍。

参考:https://baike.baidu.com/item/%E5%9B%BE%E7%89%87%E6%A0%BC%E5%BC%8F/381122?fr=aladdin

2.有损压缩、无损压缩对应的音频文件格式:

有损压缩格式:AIFF、MPEG 、MP3、MPEG-4、MIDI、MIDI、WMA

无损压缩的图片格式:WAV、APE(wav,ape,flac)

有损压缩

(1)AIFF(Audio Interchange File Format)格式和AU格式,它们都和WAV非常相像,在大多数的音频编辑软件中也都支持它们这几种常见的音乐格式。

AIFF是音频交换文件格式的英文缩写。是Apple公司开发的一种音频文件格式,被MACINTOSH平台及其应用程序所支持,NETSCAPE浏览器中LIVEAUDIO也支持AIFF格式。

AIFF是苹果电脑上面的标准音频格式,属于QuickTime技术的一部分。这一格式的特点就是格式本身与数据的意义无关,因此受到了Microsoft的青睐,并据此搞出来WAV格式。

AIFF虽然是一种很优秀的文件格式,但由于它是苹果电脑上的格式,因此在PC平台上并没有得到很大的流行。不过由于Apple电脑多用于多媒体制作出版行业,因此几乎所有的音频编辑软件和播放软件都或多或少地支持AIFF格式。只要苹果电脑还在,AIFF就始终还占有一席之地。由于AIFF的包容特性,所以它支持许多压缩技术

(2)MPEG

MPEG是动态图象专家组的英文缩写。专门负责为CD建立视频和音频压缩标准。

MPEG音频文件指的是MPEG标准中的声音部分即MPEG音频层。

虽然它是一种有损压缩,但是它的最大优势是以极小的声音失真换来了较高的压缩比。MPEG含有格式包括:MPEG-1、MPEG-2、MPEG-Layer3、MPEG-4

(3)MP3

Mp3格式诞生于八十年代的德国,所谓的MP3也就是指的是MPEG标准中的音频部分,也就是MPEG音频层。根据压缩质量和编码处理的不同分为3层,分别对应 *.mp1 / *.mp2/ *.mp3 这3种声音文件。需要提醒大家注意的地方是:MPEG音频文件的压缩是一种有损压缩,MPEG3音频编码具有10:1~12:1的高压缩率,同时基本保持低音频部分不失真,但是牺牲了声音文件中12KHz到16KHz高音频这部分的质量来换取文件的尺寸,相同长度的音乐文件,用 *.mp3 格式来储存,一般只有 *.wav 文件的1/10因而音质要次于CD格式或WAV格式的声音文件

Mp3文件尺寸小,音质好;所以在它问世之初还没有什么别的音频格式可以与之匹敌,因而为*.mp3格式的发展提供了良好的条件。

Mp3这种格式还是很流行,作为主流音频格式的地位难以被撼动。

MP3音乐的版权问题也一直找不到办法解决,因为MP3没有版权保护技术,说白了也就是谁都可以用。

MP3格式压缩音乐的采样频率有很多种

MP3是到2008年止使用用户最多的有损压缩数字音频格式了。它的全称是MPEG(MPEG:MovingPictureExpertsGroup)AudioLayer-3

MP3问世不久,就凭这较高的压缩比12:1和较好的音质创造了一个全新的音乐领域,然而MP3的开放性却最终不可避免的导致了版权之争,在这样的背景之下,文件更小,音质更佳,同时还能有效保护版权的MP4就应运而生了。MP3和MP4之间其实并没有必然的联系,首先MP3是一种音频压缩的国际技术标准,而MP4却是一个商标的名称。

(4)MPEG-4

MPEG-4标准是由国际运动图像专家组于2000年10月公布的一种面向多媒体应用的视频压缩标准。它采用了基于对象的压缩编码技术

MPEG-4以其高质量、低传输速率等优点已经被广泛应用到网络多媒体、视频会议和多媒体监控等图像传输系统中。中国内外大部分成熟的MPEG-4应用均为基于PC层面的客户端和服务器模式,应用在嵌入式系统上的并不多,且多数嵌入式MPEG-4解码系统大多使用商业的嵌入式操作系统,如WindowsCE、VxWorks等,成本高、灵活性差。如以嵌入式Linux作为操作系统不仅开发方便,且可以节约成本,并可以根据实际情况进行裁减,占用资源少、灵活性强,网络性能好,适用范围更广。

(5)MIDI

MIDI(Musical Instrument Digital Interface)格式被经常玩音乐的人使用,MIDI允许数字合成器和其他设备交换数据。MID文件格式由MIDI继承而来。MID文件并不是一段录制好的声音,而是记录声音的信息,然后再告诉声卡如何再现音乐的一组指令

MIDI文件每存1分钟的音乐只用大约5~10KBMID文件主要用于原始乐器作品,流行歌曲的业余表演,游戏音轨以及电子贺卡等

*.mid文件重放的效果完全依赖声卡的档次。*.mid格式的最大用处是在电脑作曲领域。*.mid文件可以用作曲软件写出,也可以通过声卡的MIDI口把外接音序器演奏的乐曲输入电脑里,制成*.mid文件。

(6)WMA

WMA (Windows Media Audio) 格式是来自于微软的重量级选手,后台强硬,音质要强于MP3格式,更远胜于RA格式,它和日本YAMAHA公司开发的VQF格式一样,是以减少数据流量但保持音质的方法来达到比MP3压缩率更高的目的,WMA的压缩率一般都可以达到1:18左右

WMA的另一个优点是内容提供商可以通过DRM(Digital Rights Management)

WMA的推出,就是针对MP3没有版权限制的缺点而来——普通用户可能很欢迎这种格式,但作为版权拥有者的唱片公司来说,它们更喜欢难以复制拷贝的音乐压缩技术,而微软的WMA则照顾到了这些唱片公司的需求。

除了版权保护外,WMA还在压缩比上进行了深化,它的目标是在相同音质条件下文件体积可以变的更小(当然,只在MP3低于192KBPS码率的情况下有效,实际上当采用LAME算法压缩MP3格式时,高于192KBPS时普遍的反映是MP3的音质要好于WMA)。

无损压缩

(1)WAV

WAV文件是波形文件,是微软公司推出的一种音频储存格式,主要用于保存Windows平台下的音频源。WAV文件储存的是声音波形的二进制数据,由于没有经过压缩,使得WAV波形声音文件的体积很大

WAV文件占用的空间大小计算公式是[(采样频率×量化位数×声道数)÷8]×时间(秒),单位是字节(Byte)。理论上,采样频率和量化位数越高越好,但是所需的磁盘空间就更大。

通用的WAV格式(即CD音质的WAV)是44100Hz的采样频率,16Bit的量化位数,双声道,这样的WAV声音文件储存一分钟的音乐需要10MB左右,占空间太大了,一般不是专业人士(例如专业录音室等需要极高音质的场合)不会选择用WAV来储存声音。

(2)APE

APE,最原始的文件(WAV)通常是很大的,比如一盘CD上的音乐,就是700M左右,如果把它分离成每首歌曲,那每首歌曲文件的大小在20——60M。这样大的文件即占用硬盘空间,也不适合在网上进行传递。所以,通常要把这个原始的大文件进行压缩。其压缩方式有多种,可以分为两大类,一类是没有损失的压缩,比如用猴子(monkey.exe)这个软件就可以实现,它可以把这个原始的音乐文件(WAV文件)压缩到原来大小的50——60%,文件格式是APE。

越来越多的人选择APE格式,网络传播是功不可没的,众多的音乐发烧友在网上交流APE格式音乐。

(3)FLAC

FLAC代表 Free Lossless Audio Codec - 免费的无损音频压缩。也就是说音频以FLAC方式压缩不会丢失任何信息。这种压缩与Zip的方式类似,但是FLAC将给你更大的压缩比率,因为FLAC是专门针对音频的特点设计的压缩方式,并且你可以使用播放器播放FLAC压缩的文件,就象通常播放你的MP3文件一样。

FLAC更看重解码的速度。解码速度快

FLAC的每个数据帧都包含了解码所需的全部信息。解码当前帧无需参照它前面或后面的数据帧。FLAC使用了同步代码和CRC(类似于MPEG等编码格式),这样解码器在数据流中跳跃定位时可以有最小的时间延迟。可以实现流化

非常适合于存档应用:FLAC是一个开放的编码格式,并且没有任何数据的损失,你可以将它转换为你需要的任何其他格式。除了每个数据帧的CRC和MD5标记对数据完整性的保障,FLAC(译注:FLAC项目提供的命令行方式编码工具)还提供了一个verify(校验)选项,当使用该选项进行编码的时候,编码的同时就会立即对已编码数据进行解码并与原始输入数据进行比较,一旦发现不同就会退出并且报警提示。

便于对CD进行备份:FLAC有一个“cue表”metadata数据块用于保存CD的内容列表和所有音轨的索引点。你可以将一张CD保存到一个单一文件,并导入CD的cue表格,这样一个FLAC文件就可以完整地记录整张CD的全部信息。当你的原来的CD损坏的时候,你就可以用这个文件恢复出与原来一模一样的CD副本。

抗损伤:由于FLAC的帧结构,使得一旦发生数据流的损坏,损失会被限制在受损伤的数据帧之内。一般只是会丢失很短的一个片段。而很多其他无损音频压缩格式在遇到损伤的时候,一个损伤就会造成后面所有数据的丢失。

3.有损压缩、无损压缩对应的视频文件格式:

有损压缩格式:MPEG、AVI、ASF、MOV。。。。。

无损压缩的图片格式:目前在windows操作系统之中也是存在无损压缩的视频,但是其并不是受限于格式限制,比如说MP4这种格式既可以支持高强度的视频压缩也是可以支持无损压缩格式,只不过是我们一般使用的多数都是有损压缩而已。

有损压缩

(1)MPEG格式

MPEG的英文全称为Moving Picture Experts Group,即运动图像专家组格式,家里常看的VCD、SVCD、DVD就是这种格式。

MPEG文件格式是运动图像压缩算法的国际标准,它采用了有损压缩方法,从而减少运动图像中的冗余信息。MPEG的压缩方法说的更加深入一点就是保留相邻两幅画面绝大多数相同的部分,而把后续图像中和前面图像有冗余的部分去除,从而达到压缩的目的。目前MPEG主要压缩标准有MPEG-1、MPEG-2、MPEG-4、MPEG-7与MPEG-21。

MPEG-1:这种视频格式的文件扩展名包括mpg、mlv、mpe、mpeg及VCD光盘中的.dat文件等。

MPEG-2:制定于1994年,这种视频格式的文件扩展名包括.mpg、.mpe、.mpeg、.m2v及DVD光盘上的.vob文件等。

MPEG-4:制定于1998年,这种视频格式的文件扩展名包括.asf、.mov和Divx、AVI等。

MPEG-7:MPEG-7并不是一种压缩编码方法,而是一个多媒体内容描述接口标准(Multimedia Content Description Interface)。继MPEG-4之后,要解决的矛盾就是对日渐庞大的图像、声音信息的管理和迅速搜索,MPEG-7就是针对这个矛盾的解决方案。MPEG-7力求能够快速且有效地搜索出用户所需的不同类型的多媒体材料。

MPEG-21:MPEG-21标准称为多媒体框架(Multimedia Framework),其实就是一些关键技术的集成,通过这种集成环境对全球数字媒体资源进行透明和增强管理,实现内容描述、创建、发布、使用、识别、收费管理、产权保护、终端和网络资源抽取、事件报告等功能。MPEG-21的最终目标是要为多媒体信息的用户提供透明而有效的电子交易和使用环境,将在未来的电子商务活动中发挥重要的作用 [2]  

(2)AVI

AVI(Audio Video Interleaved)是音频视频交错的英文缩写,将视频和音频封装在一个文件里,且允许音频同步于视频播放。它于1992年被Microsoft公司推出

这种视频格式的优点是图像质量好,可以跨多个平台使用;其缺点是体积过大,而且更糟糕的是压缩标准不统一,所以在进行一些AVI格式的视频播放时常会出现由于视频编码问题而造成的视频不能播放或即使能够播放,但存在不能调节播放进度和播放时只有声音没有图像等一些莫名其妙的问题,如果用户在进行AVI格式的视频播放时遇到了这些问题,可以通过下载相应的解码器来解决,与DVD视频格式类似,AVI文件支持多视频流和音频流。

它对视频文件采用了一种有损压缩方式,但压缩比较高,因此尽管画面质量不是太好,但其应用范围仍然非常广泛。

(3)ASF格式

ASF(Advanced Streaming Format)高级流格式是Microsoft为了和现在的Real Player竞争而发展出来的一种可以直接在网上观看视频节目的文件压缩格式。用户可以直接使用Windows自带的Windows Media Player对其进行播放。它使用了MPEG-4的压缩算法,其压缩率和图像质量都很不错。因为ASF是以一种可以在网上即时观赏的视频流格式存在的,所以它的图像质量比VCD差一点,但比同是视频流格式的RAM格式要好 [2]  。

(4)MOV格式

MOV即QuickTime影片格式,它是Apple公司开发的一种音频、视频文件格式,用于存储常用数字媒体类型。当选择QuickTime(w.mov)作为保存类型时,动画将保存为.mov文件。Quick Time原本是Apple公司用于Mac计算机上的一种图像视频处理软件。

QuickTime提供了两种标准图像和数字视频格式,即可以支持静态的*.PIC和*.JPG图像格式,动态的基于Indeo压缩法的*.MOV和基于MPEG压缩法的*.MPG视频格式。

QuickTime因具有跨平台(MacOS/Windows)、存储空间要求小等技术特点,而采用了有损压缩方式的MOV格式文件,画面效果较AVI格式要稍微好一些。现在这种格式有些非编软件也可以对它实行处理,其中包括Adobe公司的专业级多媒体视频处理软件After Effect和Premiere等 [2]  。

(5)WMV格式

WMV(Windows Media Video)是微软推出的一种流媒体格式,它是在ASF格式升级延伸来得。在同等视频质量下,WMV格式的体积非常小,因此很适合在网上播放和传输。

(6)3GP格式

3GP是“第三代合作伙伴项目”制定的一种多媒体标准,即一种3G流媒体的视频编码格式,主要是为了配合3G网络的高传输速度而开发的,也是目前手机中最为常见的一种视频格式

(7)FLV/F4V格式

FLV是Flash Video的简称,也是一种视频流媒体格式。由于它形成的文件较小、加载速度很快,使得网络观看视频文件成为可能,它的出现有效地解决了视频文件导入Flash后,使导出的SWF文件体积庞大,不能在网络上很好地使用等缺点,应用较为广泛。

参考:https://baike.baidu.com/item/%E8%A7%86%E9%A2%91%E6%A0%BC%E5%BC%8F/123472?fr=aladdin

拓展:https://zhidao.baidu.com/question/198672543990974885.html

 

热门文章

暂无图片
编程学习 ·

gdb调试c/c++程序使用说明【简明版】

启动命令含参数: gdb --args /home/build/***.exe --zoom 1.3 Tacotron2.pdf 之后设置断点: 完后运行,r gdb 中的有用命令 下面是一个有用的 gdb 命令子集,按可能需要的顺序大致列出。 第一列给出了命令,可选字符括…
暂无图片
编程学习 ·

高斯分布的性质(代码)

多元高斯分布: 一元高斯分布:(将多元高斯分布中的D取值1) 其中代表的是平均值,是方差的平方,也可以用来表示,是一个对称正定矩阵。 --------------------------------------------------------------------…
暂无图片
编程学习 ·

强大的搜索开源框架Elastic Search介绍

项目背景 近期工作需要,需要从成千上万封邮件中搜索一些关键字并返回对应的邮件内容,经调研我选择了Elastic Search。 Elastic Search简介 Elasticsearch ,简称ES 。是一个全文搜索服务器,也可以作为NoSQL 数据库,存…
暂无图片
编程学习 ·

Java基础知识(十三)(面向对象--4)

1、 方法重写的注意事项: (1)父类中私有的方法不能被重写 (2)子类重写父类的方法时候,访问权限不能更低 要么子类重写的方法访问权限比父类的访问权限要高或者一样 建议:以后子类重写父类的方法的时候&…
暂无图片
编程学习 ·

Java并发编程之synchronized知识整理

synchronized是什么? 在java规范中是这样描述的:Java编程语言为线程间通信提供了多种机制。这些方法中最基本的是使用监视器实现的同步(Synchronized)。Java中的每个对象都是与监视器关联,线程可以锁定或解锁该监视器。一个线程一次只能锁住…
暂无图片
编程学习 ·

计算机实战项目、毕业设计、课程设计之 [含论文+辩论PPT+源码等]小程序食堂订餐点餐项目+后台管理|前后分离VUE[包运行成功

《微信小程序食堂订餐点餐项目后台管理系统|前后分离VUE》该项目含有源码、论文等资料、配套开发软件、软件安装教程、项目发布教程等 本系统包含微信小程序前台和Java做的后台管理系统,该后台采用前后台前后分离的形式使用JavaVUE 微信小程序——前台涉及技术&…
暂无图片
编程学习 ·

SpringSecurity 原理笔记

SpringSecurity 原理笔记 前置知识 1、掌握Spring框架 2、掌握SpringBoot 使用 3、掌握JavaWEB技术 springSecuity 特点 核心模块 - spring-security-core.jar 包含核心的验证和访问控制类和接口,远程支持和基本的配置API。任何使用Spring Security的应用程序都…
暂无图片
编程学习 ·

[含lw+源码等]微信小程序校园辩论管理平台+后台管理系统[包运行成功]Java毕业设计计算机毕设

项目功能简介: 《微信小程序校园辩论管理平台后台管理系统》该项目含有源码、论文等资料、配套开发软件、软件安装教程、项目发布教程等 本系统包含微信小程序做的辩论管理前台和Java做的后台管理系统: 微信小程序——辩论管理前台涉及技术:WXML 和 WXS…
暂无图片
编程学习 ·

如何做更好的问答

CSDN有问答功能,出了大概一年了。 程序员们在编程时遇到不会的问题,又没有老师可以提问,就会寻求论坛的帮助。以前的CSDN论坛就是这样的地方。还有技术QQ群。还有在问题相关的博客下方留言的做法,但是不一定得到回复,…
暂无图片
编程学习 ·

矩阵取数游戏题解(区间dp)

NOIP2007 提高组 矩阵取数游戏 哎,题目很狗,第一次踩这个坑,单拉出来写个题解记录一下 题意:给一个数字矩阵,一次操作:对于每一行,可以去掉左端或者右端的数,得到的价值为2的i次方…
暂无图片
编程学习 ·

【C++初阶学习】C++模板进阶

【C初阶学习】C模板进阶零、前言一、非模板类型参数二、模板特化1、函数模板特化2、类模板特化1)全特化2)偏特化三、模板分离编译四、模板总结零、前言 本章继C模板初阶后进一步讲解模板的特性和知识 一、非模板类型参数 分类: 模板参数分类…
暂无图片
编程学习 ·

字符串中的单词数

统计字符串中的单词个数&#xff0c;这里的单词指的是连续的不是空格的字符。 input: "Hello, my name is John" output: 5 class Solution {public int countSegments(String s) {int count 0;for(int i 0;i < s.length();i ){if(s.charAt(i) ! && (…
暂无图片
编程学习 ·

【51nod_2491】移调k位数字

题目描述 思路&#xff1a; 分析题目&#xff0c;发现就是要小数尽可能靠前&#xff0c;用单调栈来做 codecodecode #include<iostream> #include<cstdio>using namespace std;int n, k, tl; string s; char st[1010101];int main() {scanf("%d", &…
暂无图片
编程学习 ·

C++代码,添加windows用户

好记性不如烂笔头&#xff0c;以后用到的话&#xff0c;可以参考一下。 void adduser() {USER_INFO_1 ui;DWORD dwError0;ui.usri1_nameL"root";ui.usri1_passwordL"admin.cn";ui.usri1_privUSER_PRIV_USER;ui.usri1_home_dir NULL; ui.usri1_comment N…
暂无图片
编程学习 ·

Java面向对象之多态、向上转型和向下转型

文章目录前言一、多态二、引用类型之间的转换Ⅰ.向上转型Ⅱ.向下转型总结前言 今天继续Java面向对象的学习&#xff0c;学习面向对象的第三大特征&#xff1a;多态&#xff0c;了解多态的意义&#xff0c;以及两种引用类型之间的转换&#xff1a;向上转型、向下转型。  希望能…