自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 收藏
  • 关注

转载 可见性和原子性

可见性: 可见性是一种复杂的属性,因为可见性中的错误总是会违背我们的直觉。通常,我们无法确保执行读操作的线程能适时地看到其他线程写入的值,有时甚至是根本不可能的事情。为了确保多个线程之间对内存写入操作的可见性,必须使用同步机制。 可见性,是指线程之间的可见性,一个线程修改的状态对另一个线程是可见的。也就是一个线程修改的结果。另一个线程马上就能看到。比如:用volatile修饰的变量,就会具有可见性。volatile修饰的变量不允许线程内部缓存和重排序,即直接修改内存。所以对其他线程是可见的。但是这里

2022-02-26 07:57:51 86

原创 1.5.1 常用的设计原则和设计模式

一、常用的设计原则1.软件开发的流程需求分析文档、概要设计文档、详细设计文档、编码和测试、安装和调试、维护和升级2. 常用的设计原则开闭原则(Open Close Principle)对扩展开放对修改关闭,为了使程序的扩展性好,易于维护和升级。Markdown将文本转换为 HTML。对修改关闭就是在程序测试完成后尽量不要修改,可以通过拓展的方式进行功能的调整。比如创建新的子类继承已经完成的类。里氏代换原则(Liskov Substitution Principle)任何 基类

2022-01-03 21:27:45 157

原创 1.5.2 新特性

一、Java8的新特性1.Java8的概述Java8是Java语言的一个重要版本,该版本与2014年3月发布,是自Java5以来最具革命性的版本,这个版本包含语言、编译器、库、工具和JVM等方面的十多个新特性。2.函数式接口函数式接口主要指只包含一个抽象方法的接口,如:java.lang.Runnable、java.util.Comparator接口等。Java8提供@Functionallnterface注解来定义函数式接口,若定义的接口不符合函数式的规范便会报错。Java8中增加了ja

2022-01-03 21:27:22 72

原创 1.4.5 反射机制

一、基本概念通常情况下编写代码都是固定的,无论运行多少次执行的结果也是固定的,在某些特殊场合中编写代码时不确定要创建什么类型的对象,也不确定要调用什么样的方法,这些都希望通过运行时传递的参数来决定,该机制叫做动态编程技术,也就是反射机制。通俗来说,反射机制就是用于动态创建对象并且动态调用方法的机制。目前主流的框架底层都是采用反射机制实现的。如:Person p = new Person(); - 表示声明Person类型的引用指向Person类                     型的

2021-07-30 22:08:48 47

原创 1.4.4 网络编程

一、 网络编程的常识目前主流的网络通讯软件有:微信、QQ、飞信、阿里旺旺、陌陌、探探、…1.七层网络模型OSI(Open System Interconnect),即开放式系统互联,是ISO(国际标准化组织)组织在1985年研究的网络互连模型。OSI七层模型和TCP/IP五层模型的划分如下:当发送数据时,需要对发送的内容按照上述七层模型进行层层加包后发送出去。当接收数据时,需要对接收的内容按照上述七层模型相反的次序层层拆包并显示出来。2. 相关的协议(笔试题)(1)协议的概念计

2021-07-30 22:08:22 45

原创 1.4.3 多线程

一、基本概念1.程序和进程的概念程序 - 数据结构 + 算法,主要指存放在硬盘上的可执行文件。进程 - 主要指运行在内存中的可执行文件。目前主流的操作系统都支持多进程,为了让操作系统同时可以执行多个任务,但进程是重量级的,也就是新建一个进程会消耗CPU和内存空间等系统资源,因此进程的数量比较局限。2. 线程的概念为了解决上述问题就提出线程的概念,线程就是进程内部的程序流,也就是说操作系统内部支持多进程的,而每个进程的内部又是支持多线程的,线程是轻量的,新建线程会共享所在进程的系统资源,因此

2021-07-30 22:07:56 61

原创 1.4.2 IO流

一、IO流的概念

2021-07-30 22:06:37 54

原创 1.4.1 异常机制和File类

一、异常机制1.基本概念异常就是"不正常"的含义,在Java语言中主要指程序执行中发生的不正常情况。java.lang.Throwable类是Java语言中错误(Error)和异常(Exception)的超类。其中Error类主要用于描述Java虚拟机无法解决的严重错误,通常无法编码解决,如:JVM挂掉了等。其中Exception类主要用于描述因编程错误或偶然外在因素导致的轻微错误,通常可以编码解决,如:0作为除数等。2.异常的分类 java.lang.Exception类是所有异常的

2021-07-30 22:05:54 46

原创 1.3模块三内容总结

模块三内容总结javaSE阶段模块三总结

2021-06-06 23:09:11 46

原创 1.3.5 集合类库(下)

集合类库(下)一、泛型机制1.基本概念2.一、泛型机制1.基本概念2.

2021-06-06 16:37:17 76

原创 1.3.4集合类库(上)

集合类库一、集合的概述1.集合的由来2.集合的框架结构二、Collection集合1.基本概念2.常用的方法一、集合的概述1.集合的由来当需要在Java程序中记录单个数据内容时,则声明一个变量。当需要在Java程序中记录多个类型相同的数据内容时,声明一个一维数组。当需要在Java程序中记录多个类型不同的数据内容时,则创建一个对象。当需要在Java程序中记录多个类型相同的对象数据时,创建一个对象数组。当需要在Java程序中记录多个类型不同的对象数据时,则准备一个集合。2.集合的框架结构Jav

2021-06-06 16:37:03 95

原创 1.3.3可变字符串和日期相关类

可变字符串类和日期相关类

2021-06-06 16:36:49 191

原创 1.3.2String类的概念和使用

String类的概念和使用一、String类的概念(重点)二、常量池的概念(原理)三、常用的构造方法笔试考点一、String类的概念(重点)java.lang.String类用于描述字符串,Java程序中所有的字符串字面值都可以使用该类的对象加以描述,如:“abc”。该类由final关键字修饰,表示该类不能被继承。从jdk1.9开始该类的底层不使用char[]来存储数据,而是改成 byte[]加上编码标记,从而节约了一些空间。该类描述的字符串内容是个常量不可更改,因此可以被共享使用。如:St

2021-06-06 16:36:22 127

原创 1.3.1常用类的概述和使用

一、常用的包)包的名称和功能java.lang包 - 该包是Java语言的核心包,并且该包中的所有内容由Java虚拟机自动导入。如:System类、String类、…java.util包 - 该包是Java语言的工具包,里面提供了大量工具类以及集合类等。如:Scanner类、Random类、List集合、…java.io包 - 该包是Java语言中的输入输出包,里面提供了大量读写文件相关的类等。如:FileInputStream类、FileOutputStream类、…java.net包

2021-06-06 16:34:02 111

原创 1.2.5特殊类

特殊类内部类实际作用内部类的分类普通(成员)内部类的格式普通内部类的使用方式静态内部类的格式静态内部类的使用方式局部(方法)内部类的格式局部内部类的使用方式回调模式的概念开发经验分享匿名内部类的语法格式(重点)枚举(熟悉)枚举的基本概念枚举的定义枚举类实现接口的方式注解注解的基本概念注解的语法格式注解的使用方式元注解的概念元注解@Retention元注解@Documented元注解@Target元注解@Inherited元注解@Repeatable常见的预制注解总结内部类实际作用当一个类存在的价值仅仅

2021-01-18 01:15:41 79

原创 1.2.4多态和特殊类

多态和特殊类多态(重中之重)多态的概念多态的语法格式案例题目多态的特点引用数据类型之间的转换多态的实际意义抽象类(重点)抽象方法的概念抽象类和抽象方法的关系抽象类的实际意义抽象类使用心得抽象类的应用接口(重点)接口的基本概念练习题目Hunter接口类和接口之间的关系抽象类和接口的主要区别(笔试题)归纳总结多态(重中之重)多态的概念多态主要指同一种事物表现出来的多种形态。饮料:可乐、雪碧、红牛、脉动、…宠物:猫、狗、鸟、小强、鱼、…人:学生、教师、工人、保安、…图形:矩形、圆形、梯形、三角形、

2021-01-18 00:51:16 89

原创 1.2.3 static关键字

static关键字static 关键字案例题目(People类封装)基本概念使用方式构造块和静态代码块(熟悉)案例题目(重中之重)继承(重中之重)继承的概念方法重写的概念方法重写的原则案例题目构造块与静态代码块(笔试)final关键字(重点)基本概念常量的概念总结归纳static 关键字案例题目(People类封装)编程实现People类的封装,特征有:姓名、年龄、国籍,要求提供打印所有特征的方法。编程实现PeopleTest类,main方法中使用有参方式构造两个对象并打印。/* 编程实现Pe

2021-01-18 00:35:14 85

原创 1.2.2方法和封装

方法和封装构造方法构造方法的基本概念默认构造方法构造方法的作用案例题目(Point类构造)方法重载(重点)方法重载的概念重载的体现形式练习题目重载的实际意义this关键字(原理)this的基本概念工作原理使用方式方法递归调用递归的基本概念案例题目(费氏数列)封装封装的实现流程案例题目(录入学生信息)JavaBean的概念(了解)总结构造方法构造方法的基本概念class类名{类名(形参列表) {构造方法体;}}class Person {Person() { ~Person类中的构造方法

2021-01-17 23:58:12 63

原创 1.2.1类和对象

面向对象编程对象和面向对象的概念万物皆对象。面向对象指以属性和行为的观点去分析显示生活中的事物。面向对象编程指先以面向对象的思想进行分析,然后使用面向对象编程语言进行表达的过程。面向对象编程是软件产业化的发展的需求理解面向对象的思想精髓(封装、继承、多态),至少掌握一种编程语言类和对象及引用类和对象的概念对象主要指显示生活中客观存在的实体,在java语言中对象体现为内存空间中的一块存储区域。类简单来就是“分类”,是对具有相同特征和行为的多个对象共性的抽象描述,在Java语言中

2021-01-17 23:46:30 102

原创 第一阶段目录索引

模块一1.初识计算机和java语言2.变量和数据类型3.运算符4.流程控制语句5.数组以及应用

2021-01-17 23:02:40 54

原创 1.1.5数组以及应用

数组以及应用一维数组的基本概念一维数组的声明方式相关概念内存结构之栈区内存结构之堆区案例题目(一维数组增删改查)数组的优缺点案例题目(统计数字次数)案例题目(数组打印学生成绩)数组工具类的概念二维数组的概念二维数组的声明和初始化方式案例题目(杨辉三角)一维数组的基本概念记录单个数据,声明一个变量即可记录多个同类型数据,声明一个一维数组,本质就是在内存空间中申请一端连续的存储单元。数组是同类型多元素容器,按线性排列,在java中体验为一种引用数据类型。一维数组的声明方式数据类型[]数组名称= ne

2020-12-25 18:57:50 125

原创 1.1.4流程控制语句

流程控制语句分支结构的概念if分支结构案例题目(找最大值)if else 分支结构案例题目(判断正负数)if elseif else分支结构案例题目(个人所得税)案例题目(出租车计费)案例题目(考试成绩)案例题目(菜单模拟)循环结构的概念for循环案例题目(打印奇数)案例题目(实现累加)案例题目(水仙花数)continue关键字break关键字案例题目(聊天)案例题目(猜数字)双重for循环的格式双重for循环的特点案例题目(打印星星)案例题目(九九乘法表)break关键字跳出多层循环案例题目(打印素数)w

2020-12-25 18:42:59 81

原创 1.1.3运算符

算数运算符+加法运算符-减法运算符*乘法运算符/除法运算符%取模/取模运算符/* 编程实现算数运算符*/public class ArithmeticTest{ public static void main(String [] args){ //1.声明两个int类型的变量并初始化 //int ia=6,ib=2; //声明两个int类型的变量ia和ib,不推荐使用 int ia=6; //推荐该方式,提高代码的可读性 int ib=

2020-12-25 18:18:59 203

原创 1.1.2变量和数据类型

变量变量的基本概念声明变量的本质就是在内存中申请一个存储单元存放数据内容大小不同,存储单元大小也不同,使用数据类型加以描述,为了下次访问墟制定名字,用于记录该变量对应的存储单元。变量的声明方式数据类型 变量名=初始值;其中=初始值可以省略,但;不可以省略/*编程实现变量的声明和使用*/public class Vartest{ public static void main(String [] args){ //1、声明一个变量并初始化 数据类型 变量名=初始值; i

2020-12-25 18:12:35 95

原创 1.1.1初识计算机和java语言

初识计算机和java语言欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器相关概念javac.exe-编译器,主要用于将高级Java源代码翻译成字节码文件ja

2020-12-25 18:00:11 109

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除