java
_吟游诗人
在昨天的未来里活成回忆
展开
-
java模拟多重继承,且避免重复代码的方法
众所周知,java是一门不支持多重继承的语言,每当在java中谈及多重继承,人们都会说起接口。 然而一般理解之下,既然是接口,里面的方法是不能有具体实现的,顶多也就起到一个规范的作用嘛,这样岂不是还会造成代码的大量重复? 但是事实上并非如此,利用类的组合关系,即可很好地避免代码重复,同时也起到了代码的规范化,而类也在逻辑上实现了多重继承。 下面来举一个例子: 交通工具的基类:Vehicle原创 2017-12-13 12:32:18 · 2550 阅读 · 0 评论 -
C、C++、java中的static区别
C中的static可以修饰局部变量(java不行),被static修饰的局部变量表示这个函数执行完后,这个变量不被释放,其值仍然保存着,然后下次访问该函数时,这个变量的值即为上一次函数执行完后它的值。同时C中如果用static修饰全局变量或函数,那么就表示该全局变量或函数不能被其他文件访问。C++中的static在类中的作用和java类似,都强调唯一性。C++中的static修饰变量的作用:...原创 2019-02-19 10:28:49 · 1216 阅读 · 0 评论 -
java中static、final、static final浅析
参考资料:https://www.cnblogs.com/EasonJim/p/7841990.htmlhttps://blog.csdn.net/hust_yfang/article/details/79585696https://blog.csdn.net/zhangyanli0414/article/details/79008681https://www.cnblogs.com/qq...原创 2019-02-18 23:30:12 · 699 阅读 · 0 评论 -
jvm内存区域分配
参考资料:https://blog.csdn.net/qq_33384065/article/details/80282023https://blog.csdn.net/wang_1997/article/details/52267688关于jvm内存区域(如下图所示),一说是分成四块,即方法区、java堆、java栈、本地方法栈,另一说是分成五块,在前四块基础上加上一个指令计数器及其他隐...原创 2019-02-18 23:00:12 · 214 阅读 · 0 评论 -
堆与栈的关系与区别
参考博文:https://blog.csdn.net/pt666/article/details/70876410/https://blog.csdn.net/qq_33384065/article/details/80282023`java`代码是需要在`jvm`环境下运行的,而`jvm`作为`java`虚拟机,自然也是需要获得内存的,而且它还对它自己所分得的内存进行了细分,每一部分内存...原创 2019-02-18 16:08:45 · 223 阅读 · 0 评论 -
IDEA使用DWR框架实现登录功能
近来做项目需要用到SSH框架,我就顺便用了下DWR来做登录和注册了,下面就讲述如何制作登录功能。众所周知,DWR框架是基于ajax的异步框架,通过其可以在js代码里直接对java方法进行操作,其底层肯定是借用了ajax的异步的,但是其也不可能真的能够在js里调用java方法,不过是利用java的一些反射机制罢了,不过必须得承认其做的非常好。下面也不说废话了,直接上手吧。 首先申明,我的项...原创 2018-06-15 20:05:46 · 1459 阅读 · 0 评论 -
java进阶复习——常见易错点总结
本博文用于记载java进阶中一些难点和易混淆的知识点,并不详细,也不全面,适合有java基础的朋友进行复习巩固。(部分内容为从PPT中拷贝,侵删)一、反射反射中我们可以通过Class 对象来反射出一个类的构造方法、方法、属性、注释以及内部类。 在通过反射获取构造方法的适合,有四种不同的方法。 Constructor<T> getConstructor(Class&amp原创 2018-05-14 19:42:05 · 1456 阅读 · 1 评论 -
java中equals()方法的正确使用
在Java中比较两个字符串是否相等,想必只要不是初学者都知道用equals()方法来进行比较,但是实际上很多时候都用错了。就我自己开发而言,加入比较一个String s的内容是否是"aaa"时,往往会写成如下代码:if(s.equals("aaa")){ ...}乍一看没什么问题,直到我装了Alibaba Coding Guidelines 这个插件,一检查,就告诉我这样...原创 2018-04-30 00:25:23 · 12010 阅读 · 0 评论 -
java中x^=y^=x^=y交换整形数据Bug
或许不少做过c语言或者c++的朋友都知道,如果是整形数据x和y,通过x^=y^=x^=y ,就可以交换x和y的值。但是如果想在java中这么做,那就哈哈哈哈~让我们直接看一下这么做的后果: 瞧见了没,y是变成1了,但是x却并不等于2,而是等于0。首先我们来解析一下,如果通过异或来交换两个整数,其正确流程如下:x = x ^ y;y = y ^ x;x = y ^ x;...原创 2018-04-19 17:17:24 · 4112 阅读 · 0 评论 -
Java实现三重DES加密算法
信息安全原理课,本以为会学刺激的攻防,各种注入渗透,然而事实上学的是加密解密。下面代码是抄书的一个实验。 本着学习DES算法的心态我手敲了一遍,然而完全就是写界面,核心算法用的是包里的。。 anyway,既然代码已经敲出来了就贴一下吧,java 写的一个桌面版程序,虽然丑了点,但也不是太难写。代码很冗余,写这段代码的人程序能力肯定不行,但是我也没去改啦:import java.awt....原创 2018-04-12 09:37:14 · 2387 阅读 · 2 评论 -
java基础易错、难理解、易混淆知识点复习
以下为学习java基础语法与原理过程中发现的一些与以往感觉不同、或者是不熟悉的地方,特此列出。只是提纲所以不是很详细,有些地方为了通俗易懂可能不是很严谨,尽请指正与补充。1、 java命令行编译与运行:javac Welcome.java -> java Welcome 2、 栈:形参、局部变量存在栈中,进入子程序分配,退出子程序释放 3、 堆:用new语句创建的内存在堆中,退出原创 2017-12-27 16:38:35 · 1199 阅读 · 1 评论 -
java bean为何需要一个无参构造器
java bean有一个约定俗成的习惯,就是要有一个无参构造器。当然也可以不写,但是一般还是建议写的,原因如下:1、 java web开发中spring是很常用的,其IOC利用了java的反射,而spring的反射要求这个bean必须要有一个无参构造器。多嘴一句,并不是说反射一定要有无参构造器,但是spring显然是只能由无参构造器创建新对象的。关于反射调用构造器可以看:https://bl...原创 2019-02-13 17:39:37 · 3076 阅读 · 1 评论