Java
文章平均质量分 69
Brick farmers
我们不生产代码,只做代码的搬运工
展开
-
SQL语句优化汇总
21、用select top 100 / 10 Percent 来限制用户返回的行数或者SET ROWCOUNT来限制操作的行。READ_ONLY:不允许通过游标定位更新(Update),且在组成结果集的行中没有锁。MS SQL Server查询优化方法。查询速度慢的原因很多,常见如下几种。原创 2023-09-15 11:59:53 · 297 阅读 · 0 评论 -
彻底明白Java的IO系统
但是,如果我们想实现“先把要写入文件的数据先缓存到内存中,再把缓存中的数据写入文件中”的功能时,上面的API就没有一个能满足我们的需求了。如CharArrayReader:和ByteArrayInputStream的作用都是把内存中的一个缓冲区作为InputStream使用,所不同的是前者每次从内存中读取一个字节的信息,而后者每次从内存中读取一个字符。1区中,当读取文件时,先把文件内容读到缓存中,当调用in.readLine()时,再从缓存中以字符的方式读取数据(以下简称“缓存字节读取方式”)。原创 2023-09-15 11:58:13 · 89 阅读 · 0 评论 -
java23种设计模式与追MM
20、STATE—跟MM交往时,一定要注意她的状态哦,在不同的状态时她的行为会有不同,比如你约她今天晚上去看电影,对你没兴趣的MM就会说“有事情啦”,对你不讨厌但还没喜欢上的MM就会说“好啊,不过可以带上我同事么?2、BUILDER—MM最爱听的就是“我爱你”这句话了,见到不同地方的MM,要能够用她们的方言跟她说这句话哦,我有一个多种语言翻译机,上面每种语言都有一个按键,见到MM我只要按对应的键,它就能够用相应的语言说出“我爱你”这句话了,国外的MM也可以轻松搞掂,这就是我的“我爱你”builder。原创 2023-09-15 11:47:56 · 404 阅读 · 0 评论 -
Java那些不为人知的特殊方法
你会看到它生成了三个方法,应该是x 变量的setter和getter方法,以及x()方法对应的一个synthetic方法。译者注:其实作者说到最后也没讲完到底什么是volatile方法,其实volatile方法如篇首所说,是不存在的,所谓的volatile方法就是指 bridge方法。他们发现,使用immutator(这个项目探索了Java的一些不为人知的细节)生成的Java代码使用volatile了作为方法的关键字,而这样的代码没法通过编译。有趣的是,两个方法的签名是一模一样的,只有返回类型不同。原创 2023-09-15 11:46:25 · 50 阅读 · 0 评论 -
JAVA实现线程的三种方法
它提供了检查计算是否完成的方法,以等待计算的完成,并检索计算的结果。通过Future对象可了解任务执行情况,可取消任务的执行,还可获取任务执行的结果。Callable是类似于Runnable的接口,实现Callable接口的类和实现Runnable的类都是可被其它线程执行的任务。①Callable规定的方法是call(),而Runnable规定的方法是run().②Callable的任务执行后可返回值,而Runnable的任务是不能返回值的。③call()方法可抛出异常,而run()方法是不能抛出异常的。原创 2023-09-15 10:20:58 · 294 阅读 · 0 评论 -
Java中static、this、super、final用法简谈
在涉及到继承的时候,会先初始化父类的static变量,然后是子类的,依次类推。还有一种用法是定义方法中的参数为final,对于基本类型的变量,这样做并没有什么实际意义,因为基本类型的变量在调用方法时是传值的,也就是说你可以在方法中更改这个参数变量而不会影响到调用语句,然而对于对象变量,却显得很实用,因为对象变量在传递时是传递其引用,这样你在方法中对对象变量的修改也会影响到调用语句中的对象变量,当你在方法中不需要改变作为参数的对象变量时,明确使用final进行声明,会防止你无意的修改而影响到调用方法。原创 2023-09-15 10:19:05 · 73 阅读 · 0 评论 -
解析static和final修饰符
原因2:当类的属性被同时被修饰为static和final的时候,他属于类的资源,那么就是类在被加载进内存的时候(也就是应用程序启动的时候)就要已经为此属性分配了内存,所以此时属性已经存在,它又被final修饰,所以必须在属性定义了以后就给其初始化值.而构造函数是在当类被实例化的时候才会执行,所以用构造函数,这时候这个属性没有被初始化.程序就会报错.而static块是类被加载的时候执行,且只执行这一次,所以在static块中可以被初始化。而你的代码里对final修饰的属性进行了修改,所以错误.原创 2023-09-15 10:10:44 · 105 阅读 · 0 评论 -
string,你到底是谁?
System.String是一个功能非常强大且用途非常广泛的基类,但它不是.NET中惟一与字符串相关的类,该类专门用于存储字符串,允许对字符串进行许多操作。很久以前,成龙上演了一部《我是谁》,现在string也遭遇了相同的问题.无论在JAVA中还是.NET中它永远都是一种“明星”气质,考虑它总是要从特殊性的角度考虑,它属于基本数据类型,也是基本数据类型中唯一的引用类型。如果按照引用类型,传递的应该是地址,修改了name的值,那么myname的值应该也要做相应的修改,结果应该是”efg”,但事实与之相反。原创 2023-09-15 10:07:08 · 46 阅读 · 0 评论 -
Java HashMap实现详解
1. HashMap概述: HashMap是基于哈希表的Map接口的非同步实现。此实现提供所有可选的映射操作,并允许使用null值和null键。此类不保证映射的顺序,特别是它不保证该顺序恒久不变。 2. HashMap的数据结构: 在java编程语言中,最基本的结构就是两种,一个是数组,另外一个是模拟指针(引用),所有的数据结构都可以用这两个基本结构来构造的,HashMap也不例外。HashMap实际上是一个“链表散列”的数据结构,即数组和链表的结合体。 HashMap底层就是一个数组结构,数组中的每原创 2022-04-02 14:31:34 · 2268 阅读 · 0 评论