线程 原理 参数java
【多线程】synchronized关键字详解
synchronized是什么? java中使用synchronized关键字实现加锁/解锁,来保证多线程对共享资源的访问,防止多个线程同时访问共享资源导致数据问题。 synchronized是重量级锁还是轻量级锁? java早期版本中synchronized是重量级锁,无论是否发生了锁竞争,都会进 ......
JAVA加密文件小工具
以前用C做了一个加密文件的小工具,很有成就感。 那么JAVA要怎么做呢。 有关\(API\) FileInputStream InputStreamReader FileReader 下文默认已了解基本原理。 字节与字符 要加密肯定是直接操作字节了。 但我们先看看JAVA常用的字符读入方式。 ISR ......
【多线程】JAVA中的锁
锁作用 java中的锁是用来控制多个线程访问共享资源的方式。一般来说一个锁能够防止多个线程同时访问共享资源(读写锁,读锁是共享锁允许多个线程读共享资源)。 锁的分类 乐观锁:在访问资源时,认为竞争不总是存在,所以在访问共享资源时不加锁,而是在更新数据时判断共享资源是否被其他线程修改(根据版本号/时间 ......
JAVA获取月份的所有日期
JAVA获取月份的所有日期以下是5月分获取的本月,以及上个月4月,和下个月6月的所有日期; 若需要其他月日期数据,可以以下代码中的此方法进行修改 //设置月份为本月calendar.add(Calendar.MONTH,0 );//设置月份为上个月calendar.add(Calendar.MONT ......
WaitGroup的用法和原理、常见错误
WaitGroup的介绍 WaitGroup就是package sync用来做任务编排的一个并发原语,这个要解决的就是并发-等待的问题:现有一个goroutine A在检查点(chaeckpoint)等待一组goroutine全部完成,如果在执行任务的这些goroutine还没有全部完成,那么gor ......
【Java 并发】同步器
目录同步器Semaphore原理示例Exchanger总结CountDownLatchCyclicBarrier原理应用场景示例Phaser示例 同步器 JUC 包下的工具类除了 locks,还包含其他的工具类,如 Semaphore、CountDownLatch、CyclicBarrier、Exc ......
【Java 并发】线程同步
目录线程同步条件对象synchronized 关键字监视器volatile 线程同步 条件对象 通常线程进入临界区,却发现需要满足某一个条件后,才能继续执行,这时,就需要使用一个条件对象,来管理那些已经获得了一个锁,但是,却不做有用工作的线程。这些条件对象经常被称为条件变量(Conditional ......
java流程控制
一、分支结构 1、if 分支 2、switch 分支 执行流程: ① 先执行表达式的值,再拿着这个值去与 case 后的值进行匹配 ② 与哪个 case 后的值匹配为 true 就执行哪个 case 块的代码,遇到 break 就跳出 switch 分支 ③ 如果全部 case 后值与之匹配都是fa ......
Error:(4, 13) java: -source 1.5 中不支持默认方法 (请使用 -source 8 或更高版本以启用默认方法)
Error:(4, 13) java: -source 1.5 中不支持默认方法 (请使用 -source 8 或更高版本以启用默认方法) 检查 ......
Android——主线程给子线程发送消息——子线程有自己的looper
xml: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="mat ......
Java IO
目录IOJava IO IO IO 即 Input/Output,输入和输出。数据输入到计算机内存的过程即输入,反之输出到外部存储(比如数据库,文件,远程主机)的过程即输出。 数据传输过程类似于水流,因此称为 I/O 流。 Java IO IO 流在 Java 中分为输入流和输出流,而根据数据的处理 ......
Android——子线程发消息给主线程进行页面信息更新
一、认识Looper和Handler对象 当主线程诞生时,就会去执行一个消息循环(Message Loop),以便持续监视它的消息队列(Message Queue简称MQ)。 当UI事件发生了,通常会立即丢一个Message给MQ,此时主线程就立即从MQ里边取出该消息并处理。 比如,用户在UI界面上 ......
python flask get请求接收参数
前言全局说明 python flask get请求接收参数 一、安装flsas模块 官方源: pip3 install flask 国内源: pip3 install flask -i http://pypi.douban.com/simple/ --trusted-host pypi.douban ......
Android——子线程刷新UI界面
xml配置文件: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_par ......
idea默认不能选java8
——答案来源博客评论区 解决方法,将Server URL更改为—— https://start.aliyun.com/ 解决结果 ......
设计模式Java实战,彻底学会
这是全网最强的Java设计模式实战教程。此教程用实际项目场景,结合SpringBoot,让你真正掌握设计模式。 网址是:Java设计模式实战专栏介绍 - 自学精灵(也可以百度搜索“自学精灵”)。 本设计模式专栏的威力 用Java实战来介绍常用的设计模式,让你真正掌握设计模式。 用项目实际场景进 ......
线程池
一、Executor 利用Executors创建不同的线程池满足不同场景的需求 1、newFixedThreadPool(int nThreads) 制定工作线程数量的线程池 2、newCachedThreadPool() 处理大量短时间工作任务的线程池 试图缓存线程并重用,当无缓存线程可用时,就会 ......
java语法
一、数据类型 1、基本数据类型 2、引用数据类型:String 二、类型转换 1、自动类型转换 存在不同类型的变量赋值给其他类型的变量 (1)类型范围小的变量,可以直接赋值给类型范围大的变量 2、表达式自动类型转换 3、强制转换 注意:强制类型转换可能会造成数据(丢失)溢出 浮点型转成整型,直接丢掉 ......
Java流程控制-Scanner对象
Scanner对象 我们可以通过 Scanner 类来获取用户的输入 基本语法 Scanner s = new Scanner(System.in); 通过 Scanner 类的 next() 与 nextLine() 方式来获取输入的字符串,在读取之前我们一般需要使用 hasNext() 与 ha ......
Java Lambda 表达式
目录简介语法区别 简介 Lambda 表达式是 JDK 8 的一个新特性,可以取代大部分的匿名内部类,写出更优雅的Java代码,尤其在集合的遍历和其他集合操作中,可以极大地优化代码结构。但 Lambda 表达式并不能取代所有的匿名内部类,只能用来取代函数接口(Functional Interface ......
Vue2入门之超详细教程十三-key的作用与原理
Vue2入门之超详细教程十三-key的作用与原理 1、简介 React、Vue中的key有什么作用? 1.虚拟DOM中key的作用: key是虚拟DOM对象的标识,当状态中的数据发生变化时,Vue会根据[新数据]生成[新的虚拟DOM],随后Vue进行[新虚拟DOM]的差异比较,比较规则如下: ......
充电宝自动租赁机的原理?
充电宝自动租赁机的原理? 自动售货机的工作原理如下: 售货机一台专用计算机 输入:它只接收来自服务器的电子信号 运算:特定的门电路(专用的操作系统+专用的软件) 输出:各种功能的开关,比如旋转电机的开关 注意: 那个大大的二维码,只是帮你连接到服务器的下单页面 充电宝这个,比售货机多了一个注册功能 ......
JAVA类和对象
[JAVA的类和对象] 类是一个抽象的概念。 对象则是能用来实现具体功能。 例如:Scanner sc=new Scanner(System.in) Scanner 是类,sc是对象。 我们一般通过sc.xxx来实现输入。 类 类定义了成员变量和成员方法 类是一种引用数据类型 使用 1.导包 -如果 ......
检测IPV6地址是否合法的Java工具类
import java.math.BigInteger; import java.util.Arrays; import java.util.HashSet; import java.util.Set; public class ipv6 { private static final Charact ......
【从零开始重学Java】第3天
前情提示 从零开始重学Java 第0天 从零开始重学Java 第1天 从零开始重学Java 第2天 表达式和流程控制语句 表达式 操作数 常量 (只有简单数据类型和String) 变量 运算符 位运算只对字符char和整型生效 Java里 <<(算术)左移 >>(算术)右移 >>>无符号(逻辑)右移 ......
JAVA方法重载(函数)
[JAVA方法] 方法重载 重载指的是多个方法名称相同,但参数列表不同 参数列表不同分为: 参数个数不同 参数类型不同 参数的多类型顺序不同 注意事项 一个表达式中的最后结果以数据类型范围大的为结果的数据类型。 无法因为返回值类型不同进行重载。 参数传递 对于引用类型,形式参数的操作会影响实际参数。 ......
帆软报表如何在超链接传入参数,又如何在SQL中接收参数?
1、这是帆软的超链接 http://localhost:8075/webroot/decision/view/report?viewlet=3C%252F%25E6%25B5%258B%25E8%25AF%2595%252xxxxxxx.cpt 添加一个fileName的参数。 http://loc ......
java 包和访问修饰符
免责声明:java基础资料均来自于韩顺平老师的《循序渐进学Java零基础》教案,具体视频内容可以去B站观看,这些资料仅用于学习交流,不得转载用于商业活动 java 包和访问修饰符 1.1 包 包的三大作用 区分相同名字的类 当类很多时,可以很好的管理类 控制访问范围 基本语法:pagckage co ......
java面向对象:类(二)
1.Java面向对象:类 1.1 作用域 1.1.1 基本使用 面向对象中,变量作用域是非常重要的知识点 在java编程中,主要的变量就是属性(成员变量)和局部变量 我们所获得局部变量一般是指在成员方法中定义得变量 java中作用域得分类: 全局变量:也就是属性,作用域为整个类,可以不赋值,直接使用 ......