![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java基础
卖报的小男孩0716
技术菜鸟,漫漫进阶之路
展开
-
java八大常见排序
冒泡排序相邻两个元素两两进行比较然后交换位置for(int i = 1; i < arr.length; i++){ // 控制轮数for(int j = 1; j <= arr.length - i; j++){ // 控制每一轮的次数if(arr[j - 1] > arr[j]){int temp = arr[j - 1];arr[j - 1] = arr[j];...原创 2019-01-04 10:55:51 · 100 阅读 · 0 评论 -
Java面试题—try语句中执行return语句
题目:try {}里有一个return语句,那么紧跟在这个try后的finally {}里的code会不会被执行,什么时候被执行,在return前还是后?也许你的答案是在return之前,但往更细地说,我的答案是在return中间执行,请看下面程序代码的运行结果:public class Test { /** * @param args add by zxx ,Dec 9, 2008...原创 2019-01-26 12:22:29 · 1032 阅读 · 0 评论 -
StringBuffer与StringBuilder的区别?
StringBuffer和StringBuilder类都表示内容可以被修改的字符串,StringBuilder是线程不安全的,运行效率高,如果一个字符串变量是在方法里面定义,这种情况只可能有一个线程访问它,不存在不安全的因素了,则用StringBuilder。如果要在类里面定义成员变量,并且这个类的实例对象会在多线程环境下使用,那么最好用StringBuffer。...原创 2019-01-26 11:18:55 · 88 阅读 · 0 评论 -
String 和StringBuffer的区别?
JAVA平台提供了两个类:String和StringBuffer,它们可以储存和操作字符串,即包含多个字符的字符数据。String类表示内容不可改变的字符串。而StringBuffer类表示内容可以被修改的字符串。当你知道字符数据要改变的时候你就可以使用StringBuffer。典型地,你可以使用StringBuffers来动态构造字符数据。另外,String实现了equals方法,new Str...原创 2019-01-26 11:17:55 · 102 阅读 · 0 评论 -
Math.round(11.5)等於多少? Math.round(-11.5)等於多少?
Math类中提供了三个与取整有关的方法:ceil、floor、round,这些方法的作用与它们的英文名称的含义相对应,例如,ceil的英文意义是天花板,该方法就表示向上取整,所以,Math.ceil(11.3)的结果为12,Math.ceil(-11.3)的结果是-11;floor的英文意义是地板,该方法就表示向下取整,所以,Math.floor(11.6)的结果为11,Math.floo...原创 2019-01-18 11:47:36 · 1105 阅读 · 0 评论 -
Integer与int的区别
int是java提供的8种原始数据类型之一。Java为每个原始类型提供了封装类,Integer是java为int提供的封装类。int的默认值为0,而Integer的默认值为null,即Integer可以区分出未赋值和值为0的区别,int则无法表达出未赋值的情况,例如,要想表达出没有参加考试和考试成绩为0的区别,则只能使用Integer。在JSP开发中,Integer的默认为null,所以用el表达...原创 2019-01-18 11:37:30 · 100 阅读 · 0 评论 -
"=="和equals方法究竟有什么区别?
“= =”操作符专门用来比较两个变量的值是否相等,也就是用于比较变量所对应的内存中所存储的数值是否相同,要比较两个基本类型的数据或两个引用变量是否相等,只能用= =操作符。如果一个变量指向的数据是对象类型的,那么,这时候涉及了两块内存,对象本身占用一块内存(堆内存),变量也占用一块内存,例如Objet obj = new Object();变量obj是一个内存,new Object()是另一个内...原创 2019-01-18 10:54:33 · 115 阅读 · 0 评论 -
常见设计模式
设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。设计模式的分类总体来说设计模式分为三大类:创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式...转载 2019-01-03 11:50:59 · 98 阅读 · 0 评论 -
单例模式8种写法
1、饿汉式(静态常量)[可用]public class Singleton { private final static Singleton INSTANCE = new Singleton(); private Singleton(){} public static Singleton getInstance(){ return INSTANCE...原创 2019-01-03 11:35:54 · 413 阅读 · 0 评论 -
java面试题基础篇
static特点随着类的加载而加载;优先于对象存在;被所有对象所共享;可以直接被类名调用。静态方法只能访问静态成员,非静态方法既可以访问静态也可以访问非静态。静态方法中不可以定义this super关键字,因为静态优先于对象存在,所以静态方法中不可以出现this。多态多态可以理解为事物存在的多种体现形式,父类的引用指向了自己的子类对象;父类的引用也可以接收自己子类的对象好处:提高了代...原创 2019-01-03 10:36:14 · 136 阅读 · 0 评论 -
线程
多线程作为Java中很重要的一个知识点,在此还是有必要总结一下的。一.线程的生命周期及五种基本状态关于Java中线程的生命周期,首先看一下下面这张较为经典的图:Java线程具有五中基本状态新建状态(New):当线程对象对创建后,即进入了新建状态,如:Thread t = new MyThread();就绪状态(Runnable):当调用线程对象的start()方法(t.start();...原创 2019-01-02 13:16:51 · 77 阅读 · 0 评论 -
集合
java中的集合是一个重点,也是一个面试中常见的考点,下面只是我认为比较常出现的知识点,以及遇到过的考点,由于经验的欠缺,难免出现不全或者错误,还望见谅!**集合和数组的比较:**数组不是面向对象的,存在明显的缺陷,集合弥补了数组的缺点,比数组更灵活更实用,而且不同的集合框架类可适用不同场合。如下:1:数组能存放基本数据类型和对象,而集合类存放的都是对象的引用,而非对象本身!2:数组容...原创 2019-01-02 12:05:44 · 67 阅读 · 0 评论 -
反射
A.类的加载概述当程序要使用某个类时,如果该类还未被加载到内存中,则系统会通过加载,连接,初始化三步来实现对这个类进行初始化加载就是指将class文件读入内存,并为之创建一个Class对象,任何类被使用时系统都会建立一个Class对象连接验证是否有正确的内部结构,并和其他类协调一致准备负责为类的静态成员分配内存,并设置默认初始化值解析将类的二进制数据中的符号引用替换为直接引用B.加...原创 2019-01-02 10:44:38 · 64 阅读 · 0 评论 -
泛型
泛型是java1.5的新特性泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数泛型的好处:类型安全:泛型的主要目标是提高java程序的类型安全编译时期就可以检查出因java类型不正确导致的异常符合越早出错代价越小原则消除强制类型转换泛型的一个附带好处是,使用时直接得到目标类型,消除许多强制类型转换所得即所需,使得代码更加可读,并且减少了出错机会在Java中,泛型广...原创 2019-01-02 10:37:53 · 49 阅读 · 0 评论 -
枚举的使用
**枚举**在枚举中,我们可以把相关的常量分组到一个枚举类型里,枚举也比常量类有更多灵活的方法,使用枚举,可以有效提高代码的整洁性,可读性,可维护性等常用场景:1.作为普通常量使用,如星期,季节,颜色等等,通常配合switch语句使用//周一到周天枚举public enum WeekEnum {MON,TUES,WED,THURS,FRI,SAT,SUN;}使用//jdk1....原创 2019-01-02 10:35:33 · 173 阅读 · 0 评论 -
NIO概述
Non-Blocking I/O,是一种非阻塞通信模型。BIO和NIO的对比BIONIO1.阻塞通信模型,典型代表是ServerSocket 和Socket accept connect read write 会产生阻塞。所以 BIO通信模型的弊端在于:如果有大量请求,会创建大量线程,一是可能造成内存溢出,此外,线程多了之后,会造成cpu的负载过高...原创 2019-01-04 10:58:25 · 116 阅读 · 0 评论 -
浅谈java中的final关键字
一、final关键字的基本用法在Java中,final关键字可以用来修饰类、方法和变量(包括成员变量和局部变量)。1、修饰类当用final修饰一个类时,表明这个类不能被继承。也就是说,如果一个类你永远不会让他被继承,就可以用final进行修饰。final类中的成员变量可以根据需要设为final,但是要注意final类中的所有成员方法都会被隐式地指定为final方法。2、修饰方法下面这段话...原创 2019-01-16 13:54:09 · 77 阅读 · 0 评论