[转载]Java中继承.装饰者模式和代理模式的区别 这是我在学Java Web时穿插学习Java设计模式的笔记 我就不转载原文了,直接指路好了: 装饰者模式和继承的区别: https://blog.csdn.net/qq_27093465/article/details/53323187 代理模式和装饰者模式的区别: https://www.cnblogs.com/panxuejun/p/6127832.html 这篇文章干货没有第一篇那么多,主要的结论就是: 装饰模式:以对客户端透明的方式扩展…
任何语言或软件都需要一个运行环境.正如人想生活在空气中,鱼想生活在水中一样,喜荫植物不能暴露在阳光下,任何物体个体的存在都离不开其所需的环境,编程语言也是一样的. 接下来就详细描述一下Java中JDK.JRE和JVM三者的联系和区别是什么?我也找了套相关的视频,大家可以参考一下,如果文字看不下去的,也可以直接看以下视频理解>>> Java中JDK.JRE和JVM三者之间有什么区别和联系?Java基础!Java300集零基础适合初学者视频 Java中JDK.JRE和JVM三者的概念分别是什…
1. 子类的构造函数如果要引用super的话,必须把super放在函数的首位. class Base { Base() { System.out.println("Base"); } } public class Checket extends Base { Checket() { super();//调用父类的构造方法,一定要放在方法的首个语句 System.out.println("Checket"); } public static void main(Str…
1.String Java中string类是不可变的,其中在声明的源代码中用的final,所以只能声明一次.所以每次在明面上的改变其实是重新生成一个String对象,指针指向新的String对象.同时,String内部重写的了equal的方法,原本Object的equal就是两个对象相等就可以,但是现在,并不能靠对象相等来判断值相等了,重写的equal中会挨个比较字符,这也就是为啥比较同样内容字符串要用equal的原因. 同时String a="111"+"222"…
对于大部分的对象而言,程序里会有一个引用变量来引用该对象,这是最常见的引用方法.除此之外,java.lang.ref包下还提供了3个类:SoftReference.WeakReference和PhantomReference.它们分别代表了系统对对象的另外3中引用方式:软引用.弱引用和虚引用. Java中四种引用的区别和关联: 强引用.这是Java中最常见的引用方式.程序创建一个对象,并把这个对象赋给一个引用变量,程序通过该引用变量来操作实际的对象.当一个对象被一个或者多个引用变量引用时,它处于…
https://bijian1013.iteye.com/blog/1836575 在Java中,synchronized 是用来表示同步的,我们可以synchronized 来修饰一个方法.也可以synchronized 来修饰方法里面的一个语句块. 修饰实例方法: public synchronized void normalMethod() throws InterruptedException { for (int i = 0; i < 10; i++) { Thread.sleep(1…
1. Java 中File类的createNewFile()与createTempFile()的区别 最近,在看代码时看到了一个方法, File.createTempFile() ,由此联想到File.createNewFile() 方法,一时间不知道两者到底有什么区别,感觉都是创建新文件嘛,后来查看api文档介绍,并经过自己动手试验,终于有了一个较为清楚地认识. 1. File 的 createNewFile() 方法:        createNewFile():返回值为 boolean:…
1. 类的继承 继承是面向对象编程技术的主要特征之一,也是实现软件复用的重要手段,使用继承特性子类(subclass) 可以继承父类(superclass)中private方法和属性,继承的目的是使程序代码重用,减少冗余. 1.1 类的继承的实现 ·java语言中子类对父类的继承是通过在子类定义时,使用关键字extends来实现的: ·如果定义一个java类时并未显示的指定这个类的直接父类,则这个类默认继承java.land.Object类 ·继承的特点,子类中的对象可以使用父类中的非priva…
synchronized 修饰在 static方法和非static方法的区别   在Java中,synchronized是用来表示同步的,我们可以synchronized来修饰一个方法.也可以synchronized来修饰方法里面的一个语句块.那么,在static方法和非static方法前面加synchronized到底有什么不同呢?大家都知道,static的方法属于类方法,它属于这个Class(注意:这里的Class不是指Class的某个具体对象),那么static获取到的锁,是属于类的锁.而…
数组和链表 数组:所谓数组就是相同数据类型的元素按照一定顺序排列的集合. 它的存储区间是连续的,占用内存严重,所以空间复杂度很大,为o(n),但是数组的二分查找时间复杂度很小为o(1). 特点是大小固定,不可变,在同一个数组中只能存放同一个类型的数据,寻址容易,插入和删除困难. 链表:所谓链表就是一种物理存储单元上非连续的,非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针实现的.链表是由一系列节点(链表中每个元素称为节点)组成的,节点是可以动态生成的.每个节点包括两部分:一个是存储数据元素…