JAVA多线程四种实现方式
java实现多线程有四种方式:一,通过继承Thread类;二,通过实现Runnable接口;三,通过Callable和FutureTask创建线程;四,通过线程池创建线程。其中继承Thread类和实现Runnable接口这两种方式无法返回结果,因为run方法的返回类型是void;如果我们想在任务执行完成后就可以获取执行结果,界的考虑使用Callable和Future构建的线程
java实现多线程有四种方式:一,通过继承Thread类;二,通过实现Runnable接口;三,通过Callable和FutureTask创建线程;四,通过线程池创建线程。其中继承Thread类和实现Runnable接口这两种方式无法返回结果,因为run方法的返回类型是void;如果我们想在任务执行完成后就可以获取执行结果,界的考虑使用Callable和Future构建的线程
进程是计算机中程序运行的基本单位;线程就是CPU调度和分配资源的基本单位。进程拥有独立的内存空间,进程间的内存资源也相互隔离的,是进程的私有资源;而线程之间强调的是一起配合工作,线程间是可以共享内存的。进程是整体的抽象概念,线程是分解了的具体概念;一个进程可以包含一个或多个线程,而一个线程只能属于一个进程
常见的MySQL数据库存储引擎有InnoDB、MyISAM、MEMORY这三种。在同一个数据库内也可以使用多种存储引擎,即对每个表进行针对性的设置。如果数据库表对事务的要求比较高,可以选择InnoDB引擎;如果数据库表对查询效率要求比较高,可以选择MyISAM存储引擎;如果数据库表是作为一个数据量小,且用于查询的临时表,那么可以选择MEMORY引擎
面向对象的特征:封装、继承和多态。继承:使子类型对象获得父类型对象的属性和方法,从而使子类对象具有父类相同的功能。封装:隐藏部分对象的属性和细节,对数据的访问只能通过外公开的接口。通过这种方式,防止程序运行中无关部分遭到意外改变或错误的使用了对象的私有部分。多态:对于同一个行为,不同的子类对象可能有不同的具体表现
SpringCloud 是一系列框架的分布式方案集合。它利用 SpringBoot 的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等,都可以做到一键启动和部署。在软件技术领域,系统关注的业务颗粒越来越细化,微服务已是大趋所势,SpringCloud 即是贴合微服务的理念,作出的一种技术整合
SpringBoot是Spring组件一站式解决方案,极大简化了Spring框架的使用难度,省去繁琐的配置,提供便捷的启动器,使开发者能快速上手。SpringBoot技术应用是基于Spring框架的,所以天然的拥有庞大的优良技术种群,并提供了一系列大型项目通用的非业务性功能组件,如:内嵌服务器、安全管理、运行数据监控、运行状况检查和外部化配置等
Spring的初衷是为了替代EJB,减轻企业应用开发的复杂性。Spring框架是非常轻量的,无论是整个框架的大小还是运行所需开销。此外,Spring是非侵入式的框架,其内部应用依赖的对象并不局限于Spring的特定类,这就令Spring非常友好的和其他的框架一起使用,更容易扩展。Spring通过被叫做控制反转(IOC,Inversion of Control)的技术实现了松耦合
开闭原则是面向对象设计中“可复用设计”的基石原则,是面向对象设计中最重要的原则之一,属于“易筋经”级别的。开放扩展,则意味着当有新的或变化的需求时,可以通过对现有代码的拓展来实现,而不需要该变原有程序的结构与内容;封闭修改,指的是程序设计一旦完成,其预定功能即按照既定独立工作,再不可对其做修改操作
ASCII是基于拉丁字母的一套电脑编码系统。它主要用于显示现代英语和其他西欧语言。它是现今最通用的单字节编码系统,并等同于国际标准ISO/IEC 646。ASCII第一次以规范标准的型态发表是在1967年,最后一次更新则是在1986年,至今为止共定义了128个字符,其中33个控制字符无法显示,除此之外的是95个可显示的字符
本文搜集整理的是最常用特殊符号转义字符,转义字符是很多程序语言、数据格式和通信协议的形式文法的一部分。转义序列通常有两种功能。第一个是编码一个句法上的实体,如设备命令或者无法被字母表直接表示的特殊数据。第二种功能,也叫字符引用,用于表示无法在当前上下文中被键盘录入的字符,或者在当前上下文中会有不期望的含义的字符