![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java 基础
文章平均质量分 59
刘皇叔9527
这个作者很懒,什么都没留下…
展开
-
到底创建了几个String对象?
到底创建了几个String对象? 我们首先来看一段代码: Java代码 String str=new String("abc"); String str=newString("abc"); 紧接着这段代码之后的往往是这个问题,那就是这行代码究竟创建了几个String对象呢?相信大家对这道题并不陌生,答案也是众所周知的,2个。接下来我们就从这道题展开,一起回顾一下与创建转载 2015-10-30 11:12:24 · 294 阅读 · 0 评论 -
LinkedHashMap源码分析(一)
LinkedHashMap 表示链散列映射表:继承了散列映射表HashMap,实现了Map接口。LinkedHashMap用的是访问顺序而不是插入顺序,对映射表条目进行迭代。每次调用get或put方法时,受到影响的条目都会被删除并放到链表的尾部(只有条目在链表中的位置会受影响,而散列表中的桶不会受到影响,一个条目总位于键散列码对应的桶中)。访问顺序有利于实现高速缓存的“最近最少使用”。例如,可能希原创 2016-09-28 22:41:48 · 494 阅读 · 0 评论 -
ArrayDeque的分析
ArrayDeque继承了集合的抽象类AbstractCollection ,实现了 Deque, Cloneable, Serializable三个接口。 从名字可以看出该队列是由循环数组实现的。 private void allocateElements(int numElements) { int initialCapacity = MIN_INITIAL原创 2016-09-27 11:07:29 · 443 阅读 · 0 评论 -
java 通过注解 生成sql的工具类
package test; import com.lmq.annotation.Column; import com.lmq.annotation.Table; @Table("teacher") public class Teacher { @Column("id") private int id; @Column("teacher_name") private String teache原创 2016-04-13 23:16:32 · 1208 阅读 · 0 评论 -
java jdbc工具类
package lmq.util; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import com.mysql.jdbc.Connection; import com.mysql.jdbc.PreparedStatement; import java.util原创 2016-04-13 19:09:59 · 263 阅读 · 0 评论 -
java泛型
package com.imooc.reflect; import java.lang.reflect.Method; import java.util.ArrayList; public class MethodDemo4 { public static void main(String[] args) { ArrayList list = new ArrayList();转载 2016-04-13 15:32:18 · 194 阅读 · 0 评论 -
如何创建基于socket多线程的客户端和服务端
对于Java Socket编程而言,有两个概念,一个是ServerSocket,一个是Socket。服务端和客户端之间通过Socket建立连接,之后它们就可以进行通信了。首先ServerSocket将在服务端监听某个端口,当发现客户端有Socket来试图连接它时,它会accept该Socket的连接请求,同时在服务端建立一个对应的Socket与之进行通信。这样就有两个Socket了,客户端和服原创 2016-03-28 15:48:53 · 689 阅读 · 0 评论 -
java 中volatile关键字
1.volatile关键字往往用于多线程,保证了线程可以正确读取其他线程传入的值。 2.volatile的特殊规则保证了volatile变量值修改后的新值立刻同步到主内存,每次使用volatile变量前立即从主内存中刷新,因此volatile保证了多线程之间的操作变量的可见性,而普通变量则不能保证这一点 3.volatile变量规则(Volatile Variable Rule原创 2016-04-04 20:17:00 · 309 阅读 · 0 评论 -
基于socket,实现用户注册,用户登录,以及文件上传的例子
观看慕课网关于socket的视频,完成的一个小练习,demo源码和课程链接会放在后面。 1.项目截图: 2.源码分析 1.server.java 服务器端socket 需要首先启动 package lmq.socket; import java.io.IOException; import java.net.ServerSocket; import java.net.Soc原创 2016-04-04 16:38:34 · 7394 阅读 · 3 评论 -
java IO 之文件的复制
最近本彩笔在学习java的IO,整理一下通过io对文件进行复制,所以写了一个工具类,以便以后使用。 package com.imooc.io; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.File; import java.io.FileInputStre原创 2016-04-03 12:03:25 · 276 阅读 · 0 评论 -
java判断奇数
关于判断java中的奇数的问题,看似很简单,其实里面还是有值得注意的地方。 1.可能最先想到的是如下: public static boolean isOdd(int i){ return i % 2 == 1; }很遗憾,它在1/4的情况下是错误的,为什么呢?因为当i是负奇数的时候,它返回的的是-1而不是1. 这是 Java 对取余操作符(%)的定义所产生的后果。该操作符被定义为对于所原创 2016-03-30 09:20:35 · 1714 阅读 · 0 评论 -
eclipse debug快捷键
简单的说下调试的快捷键: 1 F5:下一步,可以进入下一个函数栈 2 F6:当前函数的下一步,不会进入其他的函数。 3 F8:下一个断点。 4 也可以通过选中一个变量或者表达式,按ctrl+shift+i 来查看内容。或者添加监视的方式,查看。 5 可以通过快捷键F2,来查看一个函数方法的javadoc,即说明 6 快捷键F3或者ctrl+鼠标点击,进入一个函数转载 2016-12-12 14:12:21 · 6764 阅读 · 0 评论