文档上载,上载也不知道哪个大神(混球)起的名字,读起来怪怪的,反正平时我只读上传. 闲话少说,直入主题.先等等这两天做文件上传,都快把宝宝折磨疯了,不会呀,各种查呀,最可悲的是废了老大功夫学会了传送文档的方法,自测的时候特别顺利,图片名,后缀名等等都可以得到了,终于可以跟前端对接了妹的死活接不上,文件上传失败呀,疯了.....于是找原因呀,终于知道,我测试用的form 表单,前端用的数据流,哎,改吧,命苦不能怪政府,谁让人家是资深工程师,我是小白呢,人家随便说句话我就掉坑里了,改吧,人家忙,没空…
这是一个面试经常遇到的知识点,无论什么公司这个知识点几乎是考小白必备,为什么呢?因为这玩意儿太特么常见了,常见到你写一百行代码,都能用到好几次,不问这个问哪个.so!本小白网罗天下HashMap与HashTable知识重点只是为应对面试官各种神奇提问方式. 最常见的莫过于,问他们的区别了: 其实API中给出了一句相当简短的介绍,在介绍HashMap的一章中,原文是这么说的 [ 基于哈希表的 Map 接口的实现.此实现提供所有可选的映射操作,并允许使用 null 值和 null 键.(除了非同步和…
synchronized在java中是一个关键字,但是在kotlin中是一个内联函数.假如分别在java和kotlin代码锁住同一个对象,会发生什么呢,今天写了代码试了试.首先定义people类 12345678910111213 public class { public void () { for (int i = 0; i < 10; i ++) { try { Thread.sleep(50); } catch (InterruptedException e) { e.printStac…
Java中的基本数据类型有八种:int.char.boolean.byte.long.double.float.short.Java作为一种面向对象的编程语言,数据在Java中也是一种对象.我们用基本数据类型创建的对象,如 int x = 0;这里的x只有值这个属性,没有(或者很少)有其他的方法.这在一些需要对数据进行操作时变的很不方便,程序员需要自己编写很多代码去实现一些常用的功能,增加了工作量及程序的大小. 所以,Java中每种基本数据类型都有其对应的引用类,或者叫封装类.如int的引用类为…
在面向对象的程序设计中,模块之间交互采用接口编程,通常情况下调用方不需要知道被调用方的内部实现细节,因为一旦涉及到了具体实现,如果需要换一种实现就需要修改代码,这违反了程序设计的"开闭原则".所以我们一般有两种选择:一种是使用API(Application Programming Interface),另一种是SPI(Service Provider Interface),API通常被应用程序开发人员使用,而SPI通常被框架扩展人员使用. 在进入下面学习之前,我们先来再加深一下API和…
作为一个面向对象编程的程序员对于 下面的一句一定非常熟悉: try { // 代码块 } catch(Exception e) { // 异常处理 } finally { // 清理工作 } 就是面向对象中最最常见的异常处理程序,而且甚至我们会莫名其妙的被编译器要求加上这个模块,甚至我们自己也不知道捕捉到异常该怎么处理... 为什么要有异常 其实这个问题不用多说,程序员都知道,简单总结为一句话:就是为了增强程序健壮性呗,比如下面的代码: Class DenominatorZeroExceptio…
在jdk的源码中,存在这样的一些接口,他们不包含任何的(抽象)方法,但是却广泛的存在. 这种接口我们称之为Mark Interface,也就是标记接口. 这些接口呢,我们不用来实现任何的方法,他们的作用就是当某个类实现这个接口的时候,我们就认为这个类拥有了这个接口标记的某种功能了. 下面通过三个例子,分别介绍java中常用的三个标记接口: RandomAccess .Cloneable.java.io.Serializable (1)RandomAccess  在C#中经常会有很多人在争论,在遍…
一.public.protected.default和private修饰符的作用域 public:在java程序中,如果将属性和方法定义为 public 类型,那么此属性和方法所在的类和及其子类,同一个包中的类,不同包中的类都可以访问这些属性和方法. protected:在java程序中,如果对属性和方法使用了 protected 修饰符修饰,那么该属性和方法只能在自己的类和子类中被访问. (空的):默认的,如果没有指定访问控制修饰符,则表示使用默认修饰符,这时变量和方法只能在自己的类及该类同一…
一.Queue的实现 通过LinkedList类实现Queue接口来完成对Queue的实例类的实现,代码如下: Queue<Integer> queue=new LinkedList<>();//linkedList实现了Queue接口,将其向上转型为队列 二.Queue的方法 1.offer————加入元素(加入至队尾) queue.offer(2);//使用offer将元素插入队尾 2.remove,poll————返回头结点并删除元素 区别remove方法在队列为空时将抛出异…
一.List接口的继承关系 List接口是Collection接口的子接口,而ArrayList和LinkedList以及Vector是其实现类. List的特点是可以将元素维护在特定的序列中,可以再List 插入和删除元素. 二.两个实现类ArrayList和LinkedList ArrayList:擅长随机访问,但是插入和删除消耗较慢,原因:底层维护的是一个Object数组 源码如下: /** * The array buffer into which the elements of the…