Java多线程 文章目录1. 实现多线程1.1 进程和线程1.2 实现多线程方式一:继承Thread类1.3 设置和获取线程名称1.4 线程优先级1.5 线程控制1.6 线程的生命周期1.7 实现多线程方式二:实现Runnable接口2. 线程同步2.1 卖票2.2 卖票案例的问题2.3 同步代码块解决数据安全问题2.4 同步方法解决数据安全问题2.5 线程安全的类2.6 Lock锁3. 生产者消费者3.1 生产者和消费者模式概述3.2 生产者和消费者案例1. 实现多线程1.1 进程和线程进程:是正在运行的程序
Java文件操作、IO流 文章目录1. File类1.1 File类概述和构造方法1.2 File类创建功能1.3 File类判断和获取功能1.4 File类删除功能2. 递归2.1 递归2.2 递归求阶乘2.3 递归遍历目录3. IO流3.1 IO流概述和分类3.2 字节流写数据3.3 字节流写数据的三种方式3.4 字节流写数据的两个小问题3.5 字节流写数据加异常处理3.6 字节流读数据(一次读一个字节数据)3.7 字节流复制文本文件3.8 字节流读数据(一次读一个字节数组数据)3.9 字节流复制图片4. 字节缓冲流4.1 字节
Java集合篇 文章目录1. Collection集合1.1 集合体系结构1.2 Collection集合概述和基本使用1.3 Collection集合的常用方法1.4 Collection集合的遍历1.5 集合使用步骤图解1.6 集合的案例-Collection集合存储学生对象并遍历2. List集合2.1 List集合概述和特点2.2 List集合的特有方法2.3 集合的案例-List集合存储学生对象并遍历2.4 并发修改异常2.5 列表迭代器2.6 增强for循环2.7 集合的案例-List集合存储学生对象三种方式遍
macOS下安装JDK11和配置环境变量 1. 下载官网下载地址tar包或者dmg,二者区别在于:tar你自己解压,放在你想要的地方(配置JAVA_HOME的时候是你自己选的位置!)dmg会把JDK一键安装到 /Library/Java/JavaVirtualMachines下。安装后 /Library/Java/JavaVirtualMachines目录下文件夹如图:2. 安装过程不做过多讲解。3. 打开配置文件:open ~/.bash_profile在最后一行加入export JAVA_11_HOME=`/usr/
Java异常篇 文章目录1. 异常2 JVM默认处理异常的方式3 try-catch方式处理异常4 Throwable成员方法5 编译时异常和运行时异常的区别6 throws方式处理异常7 throws和throw的区别8 自定义异常1. 异常异常的概述 异常就是程序出现了不正常的情况异常的体系结构2 JVM默认处理异常的方式如果程序出现了问题,我们没有做任何处理,最终JVM 会做默认的处理,处理方式有如下两个步骤:把异常的名称,错误原因及异常出现的位置等信息输出在了控制台程序停止执行
Java API入门篇 1.API1.1 API概述什么是API API (Application Programming Interface) :应用程序编程接口java中的API 指的就是 JDK 中提供的各种功能的 Java类,这些类将底层的实现封装了起来,我们不需要关心这些类是如何实现的,只需要学习这些类如何使用即可,我们可以通过帮助文档来学习这些API如何使用。1.2 如何使用API帮助文档打开帮助文档找到索引选项卡中的输入框在输入框中输入Random看类在哪个包下
idea快捷键(持续完善) 功能mac快捷键win快捷键快速生成main方法psvm,回车快速生成输出语句sout,回车内容辅助键Ctrl+Alt+space(内容提示,代码补全等)注释单行:选中代码,Ctrl+/,再来一次,就是取消 多行:选中代码,Ctrl+Shift+/,再来一次,就是取消格式化ALT+WIN+LCtrl+Alt+L查看类的子类父类Ctrl + H变量重命名shift+F6搜索文件双击shiftcrtl+shift+n...
Java面向对象篇:封装、继承、多态 1. 类和对象1.1 类和对象的理解客观存在的事物皆为对象 ,所以我们也常常说万物皆对象。类类的理解类是对现实生活中一类具有共同属性和行为的事物的抽象类是对象的数据类型,类是具有相同属性和行为的一组对象的集合简单理解:类就是对现实事物的一种描述类的组成属性:指事物的特征,例如:手机事物(品牌,价格,尺寸)行为:指事物能执行的操作,例如:手机事物(打电话,发短信)类和对象的关系类:类是对现实生活中一类具有共同属性和行为的事物的抽象对象:是能够看得到摸的着的真实存
JS将元素放到现有数组/集合的第一个位置 实例:将新项添加到数组起始位置:var fruits = ["Banana", "Orange", "Apple", "Mango"];fruits.unshift("Lemon","Pineapple");fruits 将输出:Lemon,Pineapple,Banana,Orange,Apple,Mango
Java基础语法 1. Java概述1.1 Java语言发展史语言:人与人交流沟通的表达方式计算机语言:人与计算机之间进行信息交流沟通的一种特殊语言Java语言是美国Sun公司(Stanford University Network)在1995年推出的计算机语言Java之父:詹姆斯·高斯林(James Gosling)2009年,Sun公司被甲骨文公司收购,所以我们现在访问oracle官网即可:https://www.oracle.com当前,我们课程使用的JDK版本:11.01.2 Java语言跨平台原理
授权sh文件执行权限 chmod是 Linux 中权限管理命令change the permissions mode of a file的缩写。一、为所有 .sh 脚本添加执行权限chmod u+x *.sh,表示对当前目录下的file.sh文件的所有者增加可执行权限。u 代表所有者;x 代表执行权限;+ 表示增加权限;*.sh 表示当前目录下所有 .sh 文件。二、为指定 .sh 脚本添加执行权限chmod u+x file1.sh,表示对当前目录下的 file1.sh 文件的所有者增加可执行权限。
MAC中执行.sh脚本,/bin/sh^M: bad interpreter:解决办法 在win下编辑的时候,换行结尾是\r , 而在linux下 是,所以才会有 多出来的\r#可以用以下方式解决先在控制台cd到报错的目录#编辑报错的那个文件vi xxx.sh#利用如下命令查看文件格式:set ff 或 :set fileformat#可以看到如下信息#fileformat=dos 或 fileformat=unix#利用如下命令修改文件格式:set ff=unix 或 :set fileformat=unix#保存退出后再次执行sh文件即可...
Dubbo入门,这一篇就够了 1. 软件架构的演进过程软件架构的发展经历了由单体架构、垂直架构、SOA架构到微服务架构的演进过程,下面我们分别了解一下这几个架构。1.1 单体架构架构说明:全部功能集中在一个项目内(All in one)。架构优点:架构简单,前期开发成本低、开发周期短,适合小型项目。架构缺点:全部功能集成在一个工程中,对于大型项目不易开发、扩展和维护。技术栈受限,只能使用一种语言开发。系统性能扩展只能通过扩展集群节点,成本高。1.2 垂直架构架构说明:按
SpringBoot入门,这一篇就够了 0. 学习目标说出Spring Boot的作用 应用Spring Boot Yaml配置文件 了解Spring Boot自动配置原理 使用Spring Boot整合SpringMVC 使用Spring Boot整合连接池 使用Spring Boot整合Mybatis 使用Spring Boot整合Redis 部署Spring Boot项目1. Spring Boot概述在这一部分,我们主要了解以下3个问题:什么是Spring Boot 为什么要学习Spring Boot Sp
Springboot为什么加载不上application.yml的配置文件 问题:application.yml 配置了# tomcat端口server: port: 80但是项目启动后,端口总是8080(修改Tomcat默认的8080端口)解决方案1pom.xml 文件的配置不对,错误:<packaging>pom</packaging>正确:<packaging>jar</packaging>解决方案2配置文件名称写错了错误:applicaton.yml正确:appl
F12解决网页不能复制 很多人想要复制网页上的文字时,经常因为不是vip而无法复制,教你一招轻松解决。1. 首先按一下键盘上的F12,打开开发工具2. 在右上角选择设置,下滑找到禁用JavaScript,打勾3. 刷新一下当前网页,这时我们再复制就可以了...
Oracle删除重复数据只留一条 查询及删除重复记录的SQL语句1、查找表中多余的重复记录,重复记录是根据单个字段(Id)来判断select * from 表 where Id in (select Id from 表 group byId having count(Id) > 1)2、删除表中多余的重复记录,重复记录是根据单个字段(Id)来判断,只留有rowid最小的记录DELETE from 表 WHERE (id) IN ( SELECT id FROM 表 GROUP BY id HAVING CO
java.lang.OutOfMemoryError GC overhead limit exceeded原因分析及解决方案 一、解释:JDK6新增错误类型。当GC为释放很小空间占用大量时间时会抛出此异常 即(Sun 官方对此的定义:超过98%的时间用来做GC并且回收了不到2%的堆内存时会抛出此异常)。一般是因为堆太小,导致异常的原因:没有足够的内存。二、解决方案: 1、查看系统是否有使用大内存的代码或死循环。2、可以添加JVM的启动参数来限制使用内存:-XX:-UseGCOverheadLimit方法如下:linux环境下在tomcat的catalina.sh文件中 在cygwin=fals...