
Java
Java技术
牧码ya
这个作者很懒,什么都没留下…
展开
-
final、finally、finalize 的区别
final:用于声明属性( 变量 ),方法和类。分别表示属性不可变( 不可二次赋值 ),方法不可覆盖,被其修饰的类不可继承finally:异常处理语句 try/catch 结构的一部分,表示总是执行finalize:Object 类的一个方法,在垃圾回收器执行的时候会调用被回收对象的此方法,可以覆盖此方法提供垃圾收集时的其他资源回收,例如关闭文件等。该方法更像是一个对象生命周期的临终方法,当...原创 2018-11-09 16:33:44 · 1135 阅读 · 0 评论 -
Java 的基本数据类型都有哪些,各占几个字节
四类 八种 字节数 数据表示范围 整型 byte 1 -128~127 short ...原创 2018-11-09 17:37:25 · 2391 阅读 · 0 评论 -
Servlet简介及其生命周期详解
一、什么是Servlet?Servlet:是用Java编写的服务器端程序,一门用于开发动态web资源的技术。其主要功能在与交互式的浏览和修改数据,生成动态web内容。狭义的Servlet是指Java语言实现的一个接口,广义的Servlet是指任何实现了这个Servlet的类。一般对Servlet的理解是后者。若想开发一个动态web资源(即开发一个Java程序向浏览器输出数据),需要完成以下2个...原创 2018-11-16 10:36:38 · 1319 阅读 · 0 评论 -
同源策略与JS跨域
为什么要跨域为了用户的信息安全,浏览器就引入了同源策略那么同源策略是如何保证用户的信息安全的呢?如果没有同源策略,你打开了你的银行账户页面A,又打开了另一个不相关的页面B,这时候如果B是恶意网站,B可以通过Javascript轻松访问和修改A页面中的内容现在我们广泛的使用cookie来维护用户的登录状态,而如果没有同源策略,这些cookie信息就会泄露,其他网站就可以冒充这个登录用户...原创 2018-11-19 10:49:12 · 1042 阅读 · 0 评论 -
重载(overload)和重写(override)的区别?
方法重载:方法名相同,参数列表【参数的顺序,类型,个数】不同重载与方法的返回值无关,存在于同一类中方法重写:参数列表和返回值类型必须相同重写发生在子类与父类之间...原创 2018-11-21 20:04:30 · 1291 阅读 · 0 评论 -
Java中创建线程的两种方式
创建线程方式一通过继承Thread类来创建并启动多线程Java使用java.lang.Thread类代表线程,所有的线程对象都必须是Thread类或其子类的实例。每个线程的作用是完成一定的任务,实际上就是执行一段程序流即一段顺序执行的代码。Java使用线程执行体来代表这段程序流。Java中通过继承Thread类来创建并启动多线程的步骤如下:定义Thread类的子类,并重写该类的run...原创 2018-11-22 11:35:47 · 1029 阅读 · 0 评论 -
Java中的线程安全问题
线程安全线程安全:如果有多个线程在同时运行,而这些线程可能会同时运行这段代码。程序每次运行结果和单线程运行的结果是一样的,而且其他的变量的值也和预期的是一样的,此时我们就称之为是线程安全的。我们通过一个案例,演示线程的安全问题:电影院卖票,使用了A、B、C三个窗口进行卖票,电影票总数为100张采用线程对象来模拟卖票窗口A、B、C;使用Runnable接口的子类来模拟买的电影票模拟电影票...原创 2018-11-23 01:07:37 · 1195 阅读 · 0 评论 -
String、StringBuffer、StringBuilder以及对String不变性的理解
String、StringBuffer、StringBuilder都是final 类, 都不允许被继承String 长度是不可变的, StringBuffer、StringBuilder 长度是可变的;StringBuffer 是线程安全的, StringBuilder 不是线程安全的,但它们两个中的所有方法都是相同的,StringBuffer在StringBuilder的方法之上添加...原创 2018-11-20 09:21:22 · 956 阅读 · 0 评论 -
==和equals()的区别
equals 和 == 最大的区别是一个是方法一个是运算符==:如果比较的对象是基本数据类型,则比较的是数值是否相等;如果比较的是引用数据类型,则比较的是对象的地址值是否相等。equals():用来比较方法两个对象的内容是否相等。注意:equals 方法不能用于基本数据类型的变量,如果没有对equals方法进行重写,则比较的是引用类型的变量所指向的对象的地址。...原创 2018-11-20 10:26:33 · 184 阅读 · 1 评论 -
JSP九大内置对象及其作用和四大作用域详解
JSP中一共预先定义了9个这样的对象,分别为:request、response、session、application、out、pagecontext、config、page、exception1、request对象request 对象是 javax.servlet.httpServletRequest类型的对象。 该对象代表了客户端的请求信息,主要用于接受通过HTTP协议传送到服务器的数...原创 2018-11-20 14:33:08 · 3011 阅读 · 0 评论 -
java中的\t\r\n\b(Java转义字符)分别是什么?
Java转义字符原创 2018-11-27 15:33:09 · 27836 阅读 · 3 评论 -
为何 short s1 = 1; 是对的,而 float f=3.4; 是错的?
在Java中,没小数点的默认是int ,有小数点的默认是 double编译器可以自动向上转型,如 int 转成 long 系统自动转换没有问题,因为后者精度更高 ;但如果是向下转型,就需要强制类型转换short类型变量的初始化语句,只要不超过short范围( -215 ~ 215-1 )的就可以直接初始化,所以short s1 = 1;是对的;而对于小数,默认情况下:float f=3....原创 2018-12-19 20:42:28 · 977 阅读 · 0 评论 -
基本数据类型与String之间的转换
字符串转基本数据类型调用基本数据类型对应的包装类中的方法parseXXX(String)或valueOf(String)即可返回相应基本类型。基本数据类型转字符串一种方法是将基本数据类型与空字符串("")连接(+)即可获得其所对应的字符串;另一种方法是调用String类中的valueOf()方法返回相应字符串...原创 2018-12-19 21:12:35 · 1123 阅读 · 0 评论 -
Java中clone()与new的区别?
为什么要使用clone()?在实际编程过程中,我们常常要遇到这种情况:有一个对象A,在某一时刻A 中已经包含了一些有效值,此时可能会需要一个和A 完全相同新对象B,并且此后对B 任何改动都不会影响到A 中的值,也就是说,A 与B 是两个独立的对象,但B 的初始值是由A 对象确定的。在Java 语言中,用简单的赋值语句是不能满足这种需求的。要满足这种需求虽然有很多途径,但实现clone()方法是...原创 2018-12-20 11:27:48 · 1694 阅读 · 0 评论 -
Java中List集合去重的几种方式
准备数据:// 准备数据List<String> list = new ArrayList();list.add("a");list.add("b");list.add("c");list.add("c");list.add("b");list.add("a");1. 利用HashSet去重// 利用list中的元素创建HashSet集合,原创 2019-02-19 08:52:35 · 29559 阅读 · 0 评论 -
数组的两种排序方式:选择排序和冒泡排序
选择排序int[] arr = {5,8,3,9,10,2};System.out.println(&quot;排序前:&quot; + Arrays.toString(arr));// 使用两层循环遍历数组,将前一位数值与后面以为数值进行比较,// 如果前一位数值要大于后一位数值,则交换他们的位置。故而可以实现排序for(int m = 0; m&amp;lt;arr.length-1; m++){ for(...原创 2018-11-09 16:23:06 · 1309 阅读 · 0 评论 -
关于int和Integer之间的装箱机制问题
装箱/拆箱机制Integer是int的包装类就是,从 Java 5 开始引入了自动装箱/拆箱机制,使得二者可以相互转换。Java 为每个原始类型提供了包装类型:原始类型包装类型byteByteshortShortintIntegerlongLongfloatFloatdoubleDoublecharCharacter...原创 2019-08-25 15:47:27 · 403 阅读 · 0 评论