java
文章平均质量分 85
西北2020
要站在自己所热爱的世界里闪闪发光
展开
-
JAVA基础面试(续002)
文章目录ArrayList 和 LinkedList 的区别ArrayList 和 Vector 的区别字符流和字节流的区别说明缓冲流的优点和原理方法的重载和方法的覆盖有什么不同?Java集合框架的基础接口有哪些java中有哪几种xml解析方式?如何自定义异常类?ArrayList 和 LinkedList 的区别数据结构实现:ArrayList 是动态数组的数据结构实现,而 LinkedList 是双向链表的数据结构实现。随机访问效率:ArrayList 比 LinkedList 在随机访问的时原创 2021-11-16 12:35:42 · 590 阅读 · 0 评论 -
nginx面试相关
文章目录一、什么是ngnix?二、ngnix的应用场景?三、什么是反向代理?四、什么是负载均衡?一、什么是ngnix?Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like 协议下发行。其特点是占有内存少,并发能力强,事实上nginx的并发能力在同类型的网页服务器中表现较好,中国大陆使用nginx网站用户有:百度、原创 2021-11-02 21:49:58 · 72 阅读 · 0 评论 -
Java基础面试(续001)
写文章之前,先聊聊最近的状态吧。最近课不多,却一刻也没有闲下来,感觉自己的每分每秒都有要做的事情。但因为自己干了许多徒劳无功的事情,所以有点丧,想出去走走,想找个人一起出去吃好吃的。翻了翻好友列表,很悲哀,好像没有能约的。害,算咯,一个人也罢。最近确实有点惨不忍睹,但,还是有收获的,比如上一次发表的一篇博客 java面试基础 ,就收获了一批粉丝。非常感谢大家的支持,让我有了继续创作的动力。有读者建议持续更新基础面试这一块的文章,我觉得可以。那就续!文章目录1、Java 对象初始化顺序?2、什么是序列化,如原创 2021-04-15 15:10:16 · 960 阅读 · 10 评论 -
枚举&注解&反射
为了能更好的理解框架,我又重新捋了一遍注解和反射。一、枚举所谓枚举,就是一个个列举出来,就像一组固定常量。比如每个星期都有七天,可以一一列举出来:星期一、星期二、星期三、星期四、星期五、星期六、星期天。那么这一组可以一一列举出来的固定常量,就可被定义成一个枚举类型的数据。枚举是JDK1.5引入了新的类型,在JDK1.5之前,都是通过public static final…来定义常量。例如:public class OldWeek { public static final OldWee原创 2021-04-06 16:16:29 · 140 阅读 · 0 评论 -
HashMap 的实现原理
HashMapHashMap基于hashing原理,我们通过put()和get()方法存储和获取对象。当我们将键值对传递给put()方法时,它调用键对象的hashCode()方法来计算hashcode,然后找到bucket位置来存储值对象。当获取对象时,通过键对象的equals()方法找到正确的键值对,然后返回值对象。HashMap中默认的初始容量为16,默认的加载因子为0.75。初始容量代表了哈希表中桶的初始数量,即 Entry< K,V>[] table 数组的初始长度加载因原创 2021-04-06 10:45:30 · 197 阅读 · 0 评论 -
Java基础面试题
学习Java近两个月,现在回过头来缕一缕java的基础知识。感觉自己已经学习java好久了,但仔细扣手指一算,居然还不到两个月!我是从2月18日开始学的,今天是4月3日,最多也就一个半月。我甚是惊讶,原来两个月的时间居然能学这么多东西。话说回来,学是学了,又记住了多少呢?估计都忘光了,所以学太快也不见得是什么好事。那就只好回头屡屡,复习复习了。文章目录1、JVM、JRE 和 JDK 的关系2、什么是跨平台性?原理是什么?3、Java是解析运行吗?4、&和&&的区别5、用最有效率的方原创 2021-04-03 17:54:22 · 3363 阅读 · 24 评论 -
2021-03-07
一、Java与JSON联系将Java中的对象 快速的转换为 JSON格式的字符串。将JSON格式的字符串, 转换为Java的对象。二、Gson要使用Gson首先要引入JAR包。1、 将对象转换为JSON字符串在需要转换JSON字符串的位置编写如下代码即可:String json = new Gson().toJSON(要转换的对象);案例: //1、创建Gson对象 Gson g = new Gson(); //2、转换 St原创 2021-03-07 14:37:40 · 84 阅读 · 2 评论 -
隐式锁与显式锁
文章目录一、隐式锁1、同步代码块2、同步方法二、显示锁Lock三、区别1、实现方式2、是否公平3、灵活性4、内存泄漏5、使用方式6、是否可中断7、精确唤醒四、共同点一、隐式锁隐式锁中又分为同步代码块和同步方法,但是都是基于Synchronized关键字来实现的,因为他只需要是使用管关键字就可以,不用显示加锁和解锁的过程,所以称之为隐式锁。1、同步代码块在代码块前面加上Synchroized关键字,并在后面的小括号内传入锁对象,这里的this是指定了当前的这个对象作为锁,注意任何对象都是可以作为锁来使原创 2021-03-02 17:51:42 · 691 阅读 · 0 评论 -
多线程
一、线程与进程进程:是指一个内存中运行的运用程序,每个进程都有一个独立的内存空间。线程:是进程中的一个执行路径,共享一个内存空间,线程之间可以自由切换,并发执行。一个进程中至少有一个线程。线程实际上是在进程的基础上的进一步划分,一个进程启动后,里面的若干执行路径又可以划分成若干个线程。Java线程调度Java中采用的抢占式调度:即优先让优先级高的线程使用CPU,如果线程的优先级相同,那么会随机选择一个(线程随机性)。同步与异步同步:一个或多个动作排队执行,效率低,安全异步:一个或多个原创 2021-03-02 15:55:00 · 238 阅读 · 5 评论 -
File类
文章目录一、概述二、构造方法三、常用方法1、createNewFile2、mkdir、mkdirs3、delete4、renameTo5、listFiles6、文件过滤器一、概述程序有时候需要获取磁盘上文件的有关信息或在磁盘上创建新的文件等,这就需要用到File类。File类的对象主要是用来获取文件本身的一些信息,例如文件所在的目录、文件的长度或文件的读写权限,不涉及对文件的读写操作。二、构造方法使用File(String filename)创建文件时,该文件被认为与当前应用程序在同一目录中。原创 2021-02-28 10:09:56 · 99 阅读 · 2 评论 -
Java集合
文章目录一、集合和数组的区别二、集合体系结构三、Collection接口List接口(内容允许重复)1、ArrayList类(数组结构、异步、线程不安全)2、vector类(数组结构、同步、线程安全)3、LinkedList类(双向链表结构)set接口(内容不允许重复)1、HashSet(无序的)LinkedHashSet2、TreeSet(排序的)四、迭代器Iteraror接口(用来迭代Collection下的所有集合)ListIterator接口(只能用来迭代List集合)五、Map接口HashMapL原创 2021-02-28 00:10:54 · 177 阅读 · 0 评论 -
Date、DateFomat、Calender
文章目录一、Date类1、构造方法2、常用方法二、DateFomat类(抽象类)SimpleDateFormat1、format2、parse三、Calender类(抽象类)一、Date类1、构造方法Date()Date(long date)2、常用方法public long getTime()返回自此 Date对象表示的1970年1月1日00:00:00 GMT以来的毫秒数。 Date date = new Date(); //获取当前的毫秒数原创 2021-02-27 15:38:13 · 183 阅读 · 0 评论 -
StringBuilder和StringBuffer
一、区别StringBuilder和StringBuffer与String一样,都用来表示字符串。区别在于String的值是不可变的,所以我们每次使用String都会产生新的String对象,这会带来内存浪费、效率低的缺点。使用StringBuilder和StringBuffer的类的对象可以被多次改变,且不会产生新的对象,解决了String带来的浪费内存的问题,而StringBuilder与StringBuffer又有什么区别呢?从官方给出的API文档可以知道,StringBuilder是线程不安全的,原创 2021-02-26 15:05:12 · 111 阅读 · 1 评论 -
Arrays类常用静态方法
文章目录1、sort2、asList3、toString4、copyOf5、copyOfRange6、fill7、mismatch8、binarySearch1、sortsort(int[] a)将指定数组按升序排序int a[]={21,12,90,1,3,2,88}; System.out.println("排序前:"+Arrays.toString(a)); Arrays.sort(a); System.out.println("排序后:"+A原创 2021-02-26 13:03:26 · 411 阅读 · 1 评论 -
String类重要方法
1、splitpublic String[] split(String regex)作用:通过在给定正则表达式的匹配项周围拆分此字符串计算的字符串数组例:public class Demo1 { public static void main(String[] args) { String s = "I am a beautiful boy"; String [] ss = s.split(" "); for(String str:ss){原创 2021-02-26 00:37:45 · 139 阅读 · 2 评论 -
什么是泛型?
文章目录概念泛型类泛型接口泛型方法泛型中的通配符 ?概念所谓泛型,可以顾名思义的理解为广泛的类型。我们通常使用的参数都是指定类型的,即限定了参数的类型,如果我们不想限定参数的类型那怎么办呢?会有人想到使用Object类型,但是Object有时候也会因为类型不匹配而出错。那么此时我们就可以利用泛型来解决问题了。使用泛型,就是在写一个类或方法或接口的时候可以不指定类型,而在使用方法、类、接口的时候再给定具体的类型。泛型类如果需要写一个类,而暂时不指定类中使用到的某个数据类型,则可以采用以下的方式:cl原创 2021-02-25 22:28:10 · 95 阅读 · 0 评论 -
异常处理
异常处理一、try catch二、throws和throw三、finally一、try catch格式:try{// 有可能发生异常的代码段}catch(异常类型1 对象名1){// 异常的处理操作}catch(异常类型2 对象名2){// 异常的处理操作} ...finally{// 异常的统一出口}catch和finally可以省略其中一个 , catch和finally不能同时省略处理流程:1、 一旦产生异常,则系统会自动产生一个异常类的实例化对象。2、 那么,此时原创 2021-02-23 00:08:55 · 67 阅读 · 0 评论 -
面向对象高级(下)
面向对象高级(下)一、内部类1、成员内部类2、局部内部类3、匿名内部类4、静态内部类二、包装类八种数据类型的包装类装箱和拆箱操作字符串转换三、可变参数四、递归五、例题一、内部类在Java中,可以将一个类定义在另一个类里面或者一个方法里面,这样的类称为内部类。1、成员内部类成员内部类是最普通的内部类,它的定义为位于另一个类的内部形如下面的形式:class Outer {private double x = 0;public Outer(double x) {this.x = x;}cla原创 2021-02-22 16:00:33 · 100 阅读 · 0 评论 -
面向对象高级(上)
面向对象高级一、继承二、super关键字三、重写四、final关键字五、抽象类六、接口七、多态八、一、继承二、super关键字三、重写四、final关键字final 用于修饰属性、变量、类、方法变量变成了常量,属性也是常量属性,无法对其再次进行赋值。final 修饰的局部变量只能赋值一次(可以先声明后赋值)final 修饰的是成员属性,必须在声明时进行赋值全局常量(public static final)常量的命名规范:由一个或多个单词组成,单词与单词之间必须使用下划线隔开,单词中的所有原创 2021-02-22 15:13:33 · 165 阅读 · 1 评论 -
面向对象进阶
面向对象进阶一、封装private二、this关键字三、静态static四、权限修饰符五、代码块1、普通代码块2、构造代码块3、静态代码块4、同步代码块六、包七、例题一、封装private封装性:所谓封装,也就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。简而言之就是,内部操作对外部而言不可见(保护性)。观察如下代码:class Person{private String name ; // 表示姓名private int age原创 2021-02-21 16:44:30 · 180 阅读 · 0 评论 -
面向对象基础
文章目录一、面向对象思想1、概述2、三大思想3、三大特征二、类与对象1、两者关系2、属性与方法3、对象的创建与使用三、对象创建内存1、栈2、堆3、方法区4、PC寄存器5、本地方法栈四、构造方法五、方法的重载构造方法重载六、匿名对象七、例题一、面向对象思想1、概述面向对象(Object Oriented)是软件开发方法。面向对象的概念和应用已超越了程序设计和软件开发,是一种对现实世界理解和抽象的方法,是计算机编程技术发展到一定阶段后的产物。面向对象是相对于面向过程来讲的,指的是把相关的数据和方法组织原创 2021-02-21 14:46:08 · 1995 阅读 · 1 评论 -
Java基础
Java基础一、环境搭建1、JDK安装2、环境变量配置3、安装eclipse或IDEA二、基础语法1、数据类型2、标识符3、类型转换4、方法5、运算符6、转义字符7、例题三、流程控制1、顺序结构2、分支结构if语句switch语句3、循环结构while循环do while循环for循环4、break和continue如何退出多重循环5、判断用户输入类型6、例题四、数组1、概述2、数组常用算法冒泡排序二分查找3、例题五、综合案例一、环境搭建1、JDK安装2、环境变量配置找到环境变量配置,在Path中添原创 2021-02-21 12:44:58 · 375 阅读 · 1 评论