- 博客(17)
- 收藏
- 关注
转载 阻塞队列 BlockingQueue
BlockingQueue(阻塞队列)详解注意:该随笔内容完全引自http://wsmajunfeng.iteye.com/blog/1629354,写的很好,非常感谢,复制过来算是个积累,怕以后找不到。一. 前言在新增的Concurrent包中,BlockingQueue很好的解决了多线程中,如何高效安全“传输”数据的问题。通过这些高效并且线程安全的队列类,为我们快速搭建高质量的多线程程序带来极大的便利。本文详细介绍了BlockingQueue家庭中的所有成员,包括他们各自的功能以及常见使用场景。
2022-02-17 08:44:59
114
原创 类和对象--Java对象
类和对象面向对象中最主要的“一词”是:对象。 什么是类? 类实际上在现实世界中是不存在的,是一个抽象的概念。是一个模板,它描述一类对象的行为和属性。。是我们进行“思考,总结,抽象”的一个结果。什么是对象? 对象是实际存在的个体。 java语言中,要想得到“对象”,就必须定义“类”,“对象”是通过“类”模板创造出来的。 类是一个模板:类中描述的是所有对象的“共同特征信息”对象就是通过类创造出的个体。类的定义? 【修饰符列表】 class 类名{ //类体 = 属性
2021-07-31 19:36:57
147
原创 面向对象--Java笔记
类和对象OOA:面向对象分析(Object-Oriented Analysis)OOD:面向对象设计(Object-Oriented Design)OOP:面向对象编程(Object-Oriented Programming)1、面向对象和面向过程的区别?面向对象和面向过程编程体现了编程者的两种不同的思维方式。 面向过程是一种以过程为中心的编程思想,它注重的是解决问题的步骤,强调实现功能的因果关系。是一种基础的顺序的思维方式。面向过程开发方式是对计算机底层结构的一层抽象,它将程序分为数据和操
2021-07-31 19:18:44
110
原创 方法、方法重载--Java笔记
方法、方法重载什么是方法? Java方法是语句的集合,它们在一起执行一个功能。 方法是解决一类问题的步骤的有序组合 方法包含于类或对象中 方法在程序中被创建,在其他地方被引用方法的优点使程序变得更简短而清晰。有利于程序维护。可以提高程序开发的效率。提高了代码的重用性。方法的定义:修饰符(权限修饰符、static) 返回值类型 方法名(参数类型 参数名【形参列表】){ … 方法体 … return 返回值; }修饰符:修饰符,这是可选的,告诉编译器如何
2021-07-31 19:13:45
126
原创 控制语句--java笔记
控制语句控制语句:1、控制语句的出现可以让我们的程序具有逻辑性/条理性。可以使用控制语句来实现一个业余2、控制语句包括几类?3类: 选择语句、循环语句、转向语句 2.1选择语句也可以叫做分支语句 if语句、Switch语句 2.2循环语句:主要循环反复的去执行某段特定的代码 for循环(foreach)、while循环、do–while循环 2.3转向语句 break、continue、return选择/分支语句 注意:对于if语句来说,在任何情况下只能有一个分支执行,不存
2021-07-17 20:58:19
72
原创 运算符--java笔记
&&(短路与) 当左边为false时右边不执行(结果以及确定),效率高& (逻辑与) 两边都要进行判断,效率低短路或同理 赋值运算符: byte x = 10; x+=200;(运算结果以及超出了byte的取值范围,但编译是不会报错的,因为会默认进行强制类型转换) x+=200 等同于: x=(byte)x+200注意:这样会自动损失精度...
2021-07-17 20:43:04
88
原创 标识符、关键字、变量、数据类型、转义字符--Java笔记
标识符、关键字、变量、数据类型、转义字符标识符:程序员自己有权利命名的单词。用于标识类名、方法名、变量名、接口名、常量名某些Java已经定义好的标识符是不能修改的,如:main命名规则和命名规范有什么区别 ?命名规则是语法,不遵守就会报错。命名规范是大家统一的命名方法,命名方法不一致的代码是可以编译通过的,但是你的代码风格和大姐不一致,那么你的代码可读性就会很差。规则类似于:现实世界中的法律。规范类似于:现实世界中的道德。标识符的命名规则:1、标识符由字母(包括中文)、数字、下划线、$
2021-07-16 23:07:30
452
原创 注释、类与public--Java笔记
注释、类与public1、什么是注释,有什么用?注释是对Java源代码的解释说明。注释可以帮助程序员更好的理解程序。2、注释信息只保存在Java源文件中,Java源文件编译生成的class文件是没有这些注释信息的3、在实际的开发中,一般项目组都要求积极地编写注释。这也是程序员的基本素养。4、注释不是写得越多越好,要精简,主线清晰,每个注释都应该是点睛之笔。// 单行注释/*多行注释*//**类的注释信息*@version 1.0*@author xxx*这是doc注释,可以被d
2021-07-15 23:28:53
658
原创 安装JDK及配置环境变量--Java笔记
安装JDK及配置环境变量一、下载直接在Oracle官网下载JDK工具包Java SE Development Kit 16 - Downloads (oracle.com)二、环境变量配置开发Java程序,需要使用JDK中提供的工具,工具在 JDK安装目录的\bin 目录下为了开发方便,我们想在任意的目录下都可以使用JDK的开发工具,则必须配置环境变量,配置环境变量的意义在于告诉操作系统,我们使用的JDK开发工具在哪个目录下。步骤:1.计算机鼠标右键,选择 属性 或者打开控制面板选择
2021-07-15 23:25:10
93
原创 Java的特点与加载--Java笔记
Java的特点与加载一、Java是堪称完全面向对象的。面向对象更容易让人理解,人类通常是以对象的方式认知世界的。采用面向对象的方式可以让复杂问题简单化。1、健壮性主要是因为Java中有一种机制:自动垃圾回收机制(GC机制)Java语言是健壮的,相对于c语言来说,C语言没有Java健壮Java不容易导致内存泄露c++或者C语言使用不当时容易导致内存泄露JVM(c++语言写的虚拟机)负者调度GC机制,程序员不需要干涉。2、Java支持多线程并发机制支持多个线程同时并发执行,极大提高了程序执
2021-07-15 23:17:12
89
原创 Linux中交叉编译器的安装
在 Linux 下进行 C 程序开发, 我们使用的 gcc 编译器进行代码的编译, 编译完,直接在 X86 架构下的 PC 下运行的。 而 arm 架构的, 所以我们需要使用支持 arm 的编译器并且该编译器在 X86 架构下运行, 这个编译器我们通常称为交叉编译器。arm-linux-gnueabihf-gcc是由 Linaro 公司基于GCC推出的的ARM交叉编译工具。可用于交叉编译ARM系统中所有环节的代码,包括裸机程序、u-boot、Linux kernel、filesystem和App应用程
2021-07-09 18:16:22
1876
原创 Filezilla无法启动传输的问题
Filezilla无法启动传输由于自己经常碰到文件无法传输的问题,特在此记录一下。使用Fileilla在服务器与客户端之间传输文件确实是十分的方便,但是Linux的文件夹或文件都有对应的权限级别,所有对于某些文件夹,就会遇到无法启动传输的问题。(连接正常)这时候不要急不要紧张到Linux中给对应的文件夹添加权限就可以了sudo chmod -R 777 文件名/文件夹至于为什么是777(777是最高权限,3+3+1),建议去网上自己找答案,因为我只是个菜鸟给了权限后:成功传输!!!
2021-07-09 17:35:11
9250
2
原创 ubantu16.04下安装FTP服务
ubantu下安装FTP服务为了实现Linux和服务器间的文件互传。我们就需要在Linux中安装FTP服务,(记录一下安装过程,方便自己以后再次安装)1、终端下使用以下命令安装FTP服务sudo apt-get install vsftpd稍等一会就好apt-get update2、vsftpd 的配置使用vim打开以下文件sudo vim /etc/vsftpd.conf修改其中的文件,使local_enable =YESwrite_enable =YES3、重启服务
2021-07-09 17:18:16
189
原创 在Ubantu上安装配置nfs
Ubantu16.04上安装配置nfs服务nfs简介nfs安装修改配置文件重启nfs服务查看nfs的端口是否打开nfs简介nfs安装终端输入sudo apt-get install nfs-kernel-server等待nfs服务安装完成即可修改配置文件先提前创建好要挂载的目录这里是/home/zzw/book/linux/nfsNFS服务器的配置文件保存"/etc/“目录中,文件名称是"exports”,该文件用于被指NFS服务器提供的目录共享命令#vim /etc/export
2021-07-09 16:12:55
122
原创 Linux使用命令安装vim编辑器
安装vim编辑器vim简介及安装vim使用及常用命令vim简介及安装Vim是从 vi 发展出来的一个富文本编辑器。代码补完、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。简单的来说, vi 是老式的字处理器,不过功能已经很齐全了,但是还是有可以进步的地方。 vim 则可以说是程序开发者的一项很好用的工具。vi/vim 共分为三种模式,分别是命令模式(Command mode),输入模式(Insert mode)和一般模式(Last line mode)在Linux的终端中,我们只需
2021-07-09 15:31:20
5740
原创 Linux设置root权限
这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar
2021-07-09 15:06:57
12273
3
原创 java大作业网络聊天室
这个项目是我大一的java期末大作业,学习了一个学期的成果,编程能力不够,做的并不够好,写在这里记录一下自己的成长,也欢迎大家给出宝贵意见!该篇博客写一个基于java的单/多人网络即时聊天室,聊天室...
2020-08-30 13:49:58
12901
8
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人