05 2021 档案

摘要:平时记录一些面试题,以后面试的时候回答的也有条理一些。 一、Java基础 1、Java有哪几种基本数据类型 Java中基本数据类型共有八种,它们分别是属于哪种数据类型、分别用什么关键字来表示、内存的占用情况、各自的取值范围如下 数据类型 关键字 内存占用 取值范围 整数类型 byte 1 -128~ 阅读全文
posted @ 2021-05-24 14:07 徐林俊 阅读(65) 评论(0) 推荐(0)
摘要:一、介绍 在Java 8中,Stream的map方法可以将对象转化为其他对象。 二、例子 2.1、大写字符串列表 List<String> list = new ArrayList<>(); Collections.addAll(list, "a", "b", "c"); list = list.s 阅读全文
posted @ 2021-05-24 14:03 徐林俊 阅读(6628) 评论(0) 推荐(0)
摘要:一、进程 进程简单地说就是在多任务操作系统中,每个独立执行的程序,所以进程也就是“正在进行的程序”。(windows os 我们可以在任务管理器中看到进程) 二、线程 线程是程序运行的基本执行单元。当操作系统执行一个程序时,会在系统中建立一个进程,该进程必须至少建立一个线程(这个线程被称为主线程)作 阅读全文
posted @ 2021-05-21 21:46 徐林俊 阅读(102) 评论(0) 推荐(0)
摘要:一、概述 程序运行过程中由于数据的不合法导致程序无法继续执行,程序中就会产生异常。 实际开发中我们在实现业务功能时,一定要谨慎处理数据,如果数据不合法也是可以用异常来表示的,比如给人设置年龄,如果年龄是负数,或者超大,那就存在问题了。 二、异常的存在形式 异常有类型之分,比如 数组越界异常(Arra 阅读全文
posted @ 2021-05-21 12:22 徐林俊 阅读(91) 评论(0) 推荐(0)
摘要:一、概述 java.util.Map<K, V>集合,里面保存的数据是成对存在的,称之为双列集合,双列集合一次存两个元素。存储的数据,我们称为键值对。Collection集合中元素是单个单个存在的,称为单列集合,单列集合一次存一个元素。Map集合有如下特点 Map<K, V> // K:键的数据类型 阅读全文
posted @ 2021-05-19 15:02 徐林俊 阅读(220) 评论(0) 推荐(0)
摘要:一、 介绍 在Java5中提供了变长参数,允许在调用方法时传入不定长度的参数。变长参数是Java的一个语法糖,本质上还是基于数组的实现,如下 void test(String... args); void test(String[] args); 二、定义 在定义方法时,在最后的一个形参后加入三点. 阅读全文
posted @ 2021-05-17 16:21 徐林俊 阅读(169) 评论(0) 推荐(0)
摘要:一、介绍 java.util.Collections是集合的工具类,里面提供了静态方法来操作集合、乱序、排序... 二、shuffle public static void shuffle(List<?> list) 使用默认随机源对指定列表进行置换 乱序只能对List集合进行乱 集合中元素类型可以 阅读全文
posted @ 2021-05-17 15:34 徐林俊 阅读(159) 评论(0) 推荐(0)
摘要:一、介绍 Set集合也是Collection集合的子类型,没有特有方法。Set比Collection定义更严谨,Set集合有如下要求 元素是不能重复的(不能存储两个对象,其equals方法比较返回true,只能存其中一个) 元素不能保证插入和取出顺序(无序) 元素是没有索引的 二、常用子类 常用子类 阅读全文
posted @ 2021-05-17 15:27 徐林俊 阅读(574) 评论(0) 推荐(0)
摘要:一、概述 List集合是Collection集合子类型,继承了Collection中所有的功能,比Collection约束更加详细、严谨。 二、特点 元素具备索引【有索引】 元素可以重复存储(两个对象如果equals方法调用后返回true)【可重复】 元素的存取是有序的【有序】 三、常用子类 Arr 阅读全文
posted @ 2021-05-17 10:00 徐林俊 阅读(199) 评论(0) 推荐(0)
摘要:一、介绍 增强for循环(foreach),专门用来遍历集合或者数组,底层实现使用迭代器。 二、定义格式 for(变量类型 变量 : 数组/集合){ // 处理数据 } 变量就是每次循环所获取的元素,变量类型就是数组或者集合的元素类型 IDEA快速构建增强for循环:集合/数组.for 例子 Col 阅读全文
posted @ 2021-05-14 23:53 徐林俊 阅读(463) 评论(0) 推荐(0)
摘要:一、概念 迭代器是对Iterator的称呼,专门用来对Collection集合进行遍历使用的。学习迭代器的目的就是为了遍历集合。 二、迭代器的使用步骤 先获取集合的迭代器对象 使用迭代器对象调用hasNext(),判断是否存在下一个元素 如果有调用next()方法,获取下一个元素 循环2、3步骤,直 阅读全文
posted @ 2021-05-14 23:46 徐林俊 阅读(273) 评论(0) 推荐(0)
摘要:一、概述 ArrayList就是集合,集合就是一种能够存储多个数据的容器。常见的容器有集合和数组。 java.util.Collection是集合的顶层类型,而且是一个接口,我们不能对Collection类型进行实例化,我们可以借助ArrayList进行实例化。 二、集合和数组有什么区别 集合长度可 阅读全文
posted @ 2021-05-14 22:43 徐林俊 阅读(147) 评论(0) 推荐(0)
摘要:一、概述 Java中的基本数据类型没有方法和属性,而包装类就是为了让这些拥有方法和属性,实现对象化交互。 基本数据类型 包装类型 byte Byte short Short int Integer long Long float Float double Double char Character 阅读全文
posted @ 2021-05-14 21:47 徐林俊 阅读(72) 评论(0) 推荐(0)
摘要:一、介绍 java.util.Arrays是数组的工具类,里面有很多静态的方法用来对数组进行操作(如排序和搜索),还包含一个静态工厂,可以将数组转换为List集合。 二、toString public static String toString(int[] a) 返回指定数组的内容的字符串表示形式 阅读全文
posted @ 2021-05-14 20:50 徐林俊 阅读(114) 评论(0) 推荐(0)
摘要:一、Biginteger 1.1、介绍 java.math.Biginteger类不是基本数据类型之一,可以用来对一些大整数做运算。当超出基本数据类型数据范围的整数运算时就可以使用BigInteger了。 1.2、构造方法 BigInteger(String value) 可以将整数的字符串,转换为 阅读全文
posted @ 2021-05-14 20:34 徐林俊 阅读(125) 评论(0) 推荐(0)
摘要:一、介绍 System类包含几个有用的类字段和方法。它不能被实例化。 二、exit public static void exit(int status) exit方法用来终止当前运行的Java虚拟机,非零表示异常终止 三、currentTimeMillis currentTimeMillis方法用 阅读全文
posted @ 2021-05-14 19:50 徐林俊 阅读(126) 评论(0) 推荐(0)
摘要:一、介绍 Math包含执行基本数字运算的方法,如基本指数、对数、平方根和三角函数。所提供的都是静态方法,可以直接调用。 二、abs public static int abs(int a) abs方法用来获取参数a的绝对值 例子 public class MathTest { public stat 阅读全文
posted @ 2021-05-14 19:38 徐林俊 阅读(146) 评论(0) 推荐(0)
摘要:一、介绍 java.util.Calendar类表示日历,内含有各种时间信息,以及获取,计算时间的方法。Calendar本身是一个抽象类,有直接子类GregorianCalendar,使用时需要有日历对象,可以借助子类的构造方法创建对象,也可以通过Calendar提供的静态方法getInstance 阅读全文
posted @ 2021-05-14 17:28 徐林俊 阅读(677) 评论(0) 推荐(0)
摘要:一、概念 在程序中日期的数据往往会使用字符串来表示,如果需要进行日期相关的运算,为了操作方便我们会将字符串的日期转换为日期类型。当要将日期信息展示给用户时,往往我们又会将日期对象数据转换为有格式的日期字符串。要完成日期与字符串的相互转换,我们就可以借助DateFormat类了 。 注意:DateFo 阅读全文
posted @ 2021-05-14 16:45 徐林俊 阅读(3701) 评论(0) 推荐(0)
摘要:一、概念 java.util.Date 表示特定的瞬间,精确到毫秒。 二、Date类的构造方法 2.1、public Date() 创建的对象,表示的是当前计算机系统时间 public class DateTest { public static void main(String[] args) t 阅读全文
posted @ 2021-05-14 15:41 徐林俊 阅读(168) 评论(0) 推荐(0)
摘要:一、概念 Object是类层结构的根,每个类都把Object作为超类。所有对象(包括数组)都实现了这个类的方法。 二、toString 2.1、源码 public String toString() { return getClass().getName() + "@" + Integer.toHe 阅读全文
posted @ 2021-05-14 15:16 徐林俊 阅读(215) 评论(0) 推荐(0)
摘要:一、概念 一个类A内部定义了一个类B,那么B就是A的内部类。A可以称为外部类。 二、成员内部类的定义 类中方法外定义的类,我们称为成员内部类。 class Outer{ class Inner{ } } 如果要描述两个事物,这两个事物存在包含关系,就可以使用内部类。人与心的关系;汽车与引擎的关系。 阅读全文
posted @ 2021-05-14 13:44 徐林俊 阅读(80) 评论(0) 推荐(0)
摘要:一、概念 枚举在日常生活中很常见,例如一个人的性别只能是"男"或者"女",一周的星期只能是7天中的一个等。类似这种当一个变量有几种固定可能的取值时,就可以将它定义为枚举类型。 在JDK1.5之前没有枚举类型,那时候一般用接口常量来替代。而使用Java枚举类型enum可以更贴近地表示这种常量。 二、定 阅读全文
posted @ 2021-05-13 15:39 徐林俊 阅读(428) 评论(0) 推荐(0)
摘要:一、代码块的种类 在Java语言中,类中是可以包含5种内容的,如下 成员变量 成员方法 构造器 代码块 内部类 代码块分为3种,分别是静态代码块、构造代码块、局部代码块 二、构造代码块 2.1、如何定义 在类中方法外定义一个大括号。 public class Student { { // 构造代码块 阅读全文
posted @ 2021-05-13 14:59 徐林俊 阅读(248) 评论(0) 推荐(0)
摘要:一、概念 static单词意思是静止的,在Java语言中表示静态的。 二、作用 可以去修饰成员变量,成员方法,被static修饰的成员,称为类的成员(我们也可称为静态成员)。静态成员会随着类的加载而进入方法区内存(早于对象的创建),静态成员使用时可以直接用类名调用。而没有被static修饰的成员,称 阅读全文
posted @ 2021-05-13 14:03 徐林俊 阅读(372) 评论(0) 推荐(0)
摘要:一、介绍 接口是Java语言中的一种引用类型(其他的引用类型有数组、类、String、集合...) 接口,和类属于同一级别 接口,可以理解为是方法的集合体(接口中通常就是用来定义方法的) 接口中封装的就是抽象方法(JDK1.7之前) 从JDK1.8开始,接口中增加了:静态方法、默认方法 从JDK1. 阅读全文
posted @ 2021-05-12 14:18 徐林俊 阅读(98) 评论(0) 推荐(0)
摘要:一、概念 final单词的含义是最终的,不可改变的,在Java语言中,使用final可以用来修饰类、变量、方法。 二、使用格式 // 修饰类 public final class Student{ } // 修饰方法 public final void method(){ } // 修饰变量 pri 阅读全文
posted @ 2021-05-12 13:32 徐林俊 阅读(290) 评论(0) 推荐(0)
摘要:一、概念 在Java中,有以下4个关键字作为权限修饰符号 public,公开的(没有底线,可以任意访问) private,私有的(最小的访问范围:在本类中) 默认的(在代码上不书写任何关键字) protected,受保护的(专为子类提供的) 访问权限从小到大排序:private < 默认的 < pr 阅读全文
posted @ 2021-05-12 13:14 徐林俊 阅读(110) 评论(0) 推荐(0)
摘要:一、什么是多态 事物的多种展现形式。 二、多态的好处 提高程序中代码的复用性、扩展性 三、多态的前提 有继承关系、实现关系 子类重写父类/父接口中的方法 四、多态的书写格式 父类/父接口 父引用 = new 子类(); // 父引用指向子类对象 JavaStudent javaStu = new J 阅读全文
posted @ 2021-05-10 07:32 徐林俊 阅读(103) 评论(0) 推荐(0)