谈谈面试中常问的I/O模型
一、IO介绍1.1 Java中IO的分类以下部分源自网络相关资料。IO按照处理的数据类型可分为:(1)面向字节操作的I/O接口:inputStream,outputStream(2)面向字符操作的接口:Reader,WriterIO按照数据的传输方式可分为:(1)面向磁盘操作的I/O接口:File(2)面向网络操作的I/O接口:Socket1.2 Unix中的五种IO模型以下分类...
2024-01-10昨天微信的一道面试题,求解
题目是: 有A B C D 4个候选元素,2个元素展示位。写一个推荐程序,每一次选择2个不同的元素去展示。要求多次推荐后,A B C D推荐次数出现的比例趋近4:3:2:1。元素出现越随机越好。注意是两个不同的元素。回答:P(X1 X2)为出现组合X1,X2的概率则有:P(AB) + P(AC) + P(AD) = 4/10P(AB) + P(BC) + P(BD) = 3/10P(AC) + P(BC) +...
2024-01-10面试题合集(持续更新中。。。)
1.Redis缓存的删除策略算法FIFO First in First out 先近先出。删除进入redis最早的key。LRU Least Recently Used 最近最早被使用。删除最近一段时间内,被使用过的使用时间离现在最远的key。LFU Least Frequently Used 最近最不经常使用。删除最近一段时间内,使用频率最少的key。具体策略,当有新key要写入却...
2024-01-10一个面试题,求解答
#include <iostream>using namespace std;class Myclass{public: Myclass():i(0){}; void f1(){cout<<"f1"<<endl;} void f2(){cout<<i<<endl;}private: int i;};int main(){ Myclass *p = NULL; // f1 p->f1(); // error p->f2(); return 0;}如注...
2024-01-10[CSS面试题] 如何使得左右两边没有确定宽度的元素保持其中文本的自适应
需要实际的代码, 而不是解题思路 :<div class="bg"><div><span>文案文案文案文案文案文案文案文案文案文案文案文案文案文案</span></div><div><button>按钮按钮</button></div></div>回答 <style type="text/css"> .bg { display: flex; justify-content: space-between; } .rig...
2024-01-10vue递归实现自定义tree组件
本文实例为大家分享了vue递归实现自定义tree组件的具体代码,供大家参考,具体内容如下1. 在tree/index.vue中:<template> <div> <ul> <item :model='data'></item> </ul> </div></template> <script>import Item from './item'export default { components:{ Item }, data(){ ...
2024-01-10vue flex 布局实现div均分自动换行的示例代码
许久没有更新了,今天才意外发现以前还是没有看懂盒模型,今天才算看懂了,首先我们今天来看一下想要实现的效果是什么?当然适配是必须的,1920 或者 1376都测试过。效果如图所选中区域所示: 一、关于flex布局我建议去看一下http://www.ruanyifeng.com/blog/2015/07/flex-grammar.html这篇博客,我们主要...
2024-01-10linux上传并配置jdk和tomcat的教程详解
准备工作1.开启虚拟机2. git工具root账号登陆使用root账号登陆登陆后:使用linux命令:cd /opt/ 打开opt目录mkdir app 在opt下创建app目录(压缩包解压到这儿)mkdir software在opt下创建software目录(上传的压缩包放在这儿)mkdir war 在opt下创建war 目录(上传的项目放在这儿)关闭linux防火墙防火墙相关设置查看...
2024-01-10CentOS 7.5下 安装Docker 教程 详解
Docker简介Docker是一个开源的容器引擎,它有助于更快地交付应用。Docker可将应用程序和基础设施层隔离,并且能将基础设施当作程序一样进行管理。使用Docker可更快地打包、测试以及部署应用程序,并可以缩短从编写到部署运行代码的周期。Docker的优点如下:1、简化程序Docker让开发者可以打包他...
2024-01-10详解thinkphp5+swoole实现异步邮件群发(SMTP方式)
本文介绍了thinkphp5+swoole实现异步邮件群发(SMTP方式),分享给大家,具体如下:1、环境说明阿里云centos7thinkphp5.0.11swoole2.0.82、tp实现邮件发送在项目下建立如下的文件目录:其中SendMail.php是我们实际调用的发送邮件的文件。以下是主要代码:namespace app\library\utils\mail;use app\library\utils\mail\PhpM...
2024-01-10java设计模式学习之工厂方法模式
工厂方法模式(Factory Method):定义一个用于创建对象的接口,让子类决定实例化哪一个类。工厂方法使一个类的实例化延迟到其子类。工厂方法模式结构图:项目需求,创建一个雷锋工厂,大学生可以去帮助别人,志愿者也可以帮助别人做事情。1:创建一个雷锋类,具有帮助别人扫地,洗衣,买米的...
2024-01-10mybatis实现一对一关联映射实例代码
前言在客观世界中,对象很少是孤独存在的,如班级与学生之间的关系,学生与课程之间的关系,它们的实例之间可以互相访问,这就是关联关系。MyBatis 的关联映射可以大大简化持久层数据的访问,关联关系的分类如下:一对一一对多多对多我们首先绘制一个简化的 E-R 图来表示三种关联关系。...
2024-01-10详解spring与jdbc整合操作
先上一段简单示例public class MyTemplate { private DataSource dataSource; public DataSource getDataSource() { return dataSource; } public void setDataSource(DataSource dataSource) { this.dataSource = dataSource; } public void insert(String sql) throws...
2024-01-10java Jersey框架初体验
一、背景最近,Jersey学习群组的朋友越来越多,很多朋友问一些非常基础的问题,我看这种现象普遍存在,原因是进入群中的同学们大部分是Jersey的初学者,更有甚者,可能是java的初学者,他们带着对REST webservice的好奇,闯入了Jersey这个框架的学习领域,然而,由于是新手,感觉老虎吃天,无法下爪...
2024-01-10Java设计图形与多媒体处理
本文实现了两个效果:第一种,同心圆效果图:/** *程序要求:新建一个600*600像素的应用程序窗口,并在窗口中绘制5个不同颜色的同心圆, *所有圆心都是屏幕的中心点,相邻两个圆直接的半径相差50像素 *效果图如下图所示(颜色随机设置),源程序保存为Ex7_1.java。 *作者:wwj *日期:2012/4...
2024-01-10java必学必会之网络编程
一、网络基础概念 首先理清一个概念:网络编程 != 网站编程,网络编程现在一般称为TCP/IP编程。 二、网络通信协议及接口 三、通信协议分层思想 四、参考模型 五、IP协议 每个人的电脑都有一个独一无二的IP地址,这样互相通信时就不会传错信息了。 IP地址是...
2024-01-10在J2ME/MIDP中实现图像旋转
J2ME是标准版java(J2SE)面向手机、PDA等各类移动和嵌入式设备的缩减版本,是一种获得众多厂商的支持和广泛使用的移动设备开发平台。图一展示了J2ME技术的体系结构。它分为三层:虚拟机层,配置层,和简表层。 配置层(Configuration)通过对功能的描述,把千差万别的嵌入式设备进行了功能的说...
2024-01-10python3 while循环语句 – Python3教程
上一章Python教程请查看:python3 for循环语句循环在编程中用于重复特定的代码块,在本文中,你将学习如何用Python创建while循环。Python中的while循环是什么?Python中的while循环用于在测试表达式(条件)为真时遍历代码块。我们通常在不知道迭代次数的情况下使用这个循环。Python中while循环的语法:while ...
2024-01-10Galaxy Leapfrogging 盖乐世蛙跳 Pwning the Galaxy S8
作者:Flanker 公众号:Galaxy Leapfrogging 盖乐世蛙跳 Pwning the Galaxy S8 在最近的一系列文章中,我会介绍这些年以来通过Pwn2Own和官方渠道所报告的在各种Android厂商设备中发现的各种CVE,包括通过fuzz和代码审计发现的各式各样的内存破坏漏洞和逻辑漏洞。第一篇文章将会介绍在2017年末我们用来远程...
2024-01-10C语言 全局变量作为线程回调函数的参数传值后再改变其值,线程获得的值是否会随之改变
如上图,假如在在程序一开始的地方声明一个全局变量var,并在main函数里赋值为0。经过一段时间后,创建一个线程并将这个全局变量作为参数传给线程回调函数。在线程运行一段时间后,再在main函数里改变var的值,这样,线程里面所获得的var的值是否会随之改变?回答:引用和指针是会同步的,...
2024-01-10VSCode对emmet的支持是不是不完全?
开始在vscode里使用emmet,尽管ul>li*5之类的操作完全没有问题,但是有些功能似乎就不行。比如emmet官网提到的Go to Edit Point功能,在Mac里就是按⌃⌥→到下一个编辑点,按⌃⌥←去到上一个编辑点。但是在vscode里按⌃⌥→就不行。所以,这确实是vscode对emmet的支持不完全还是需要有些别的配置?回答:...
2024-01-10iOS有关文件头域
所有的文件在它的内容的头部应该都有一个域,记录了当前文件的信息,比如文件长度,name等等,那么在iOS里面这个文件的头域怎么获取呢?回答:答案来自:Stack Overflow - Finding file's size获取文件属性的代码:NSDictionary *fileAttributes = [[NSFileManager defaultManager] attributesOfItemAtPath:URL error:&attributesError];属...
2024-01-10如何构建一个高效的 golang web 开发环境,golang go run watch
go web 开发环境在项目目录下go run main.go打开浏览器看到 web 界面当修改 项目文件后 文件后,需要 ctrl + c 退出 在输入 go run main.go这样感觉好麻烦呀,大家的 go 语言开发环境是什么流程呀回答:不。这并不是一个好的开发方式。这种开发方式叫做试错型编程,对代码质量并没有提高。我建议一个业...
2024-01-10Android布局上下两层,底层播放视频,上层有输入框,当软键盘弹出时如何才能不挤压底层视频层呢?
问题的描述在底下,输入框位于屏幕的最底部,第一张图没有体现出来,输入框位于最底部哈下边看两张图:下边的截图是从印客直播截取的第一张图没有软键盘时第二张图软键盘弹出时以上截图就是我要的效果,但是我不知如何去实现这个不挤压底层视频View的效果通过尝试设置:android:windowSoftInputM...
2024-01-10TFS 被锁定如何解锁
下图的问题,有没有高人解决下在工作区 PC 中,zjlh.panhuayi 为 签出 锁定了项 $/RDC.CAP/Project/ZJLH/MDM/iteration/3/nova-mdm-contract-web/war/WEB-INF/classes/com/zjlh/nova/mdm/contract/client/component/CDialogBox$1.class。...
2024-01-10