首先MySQL的事务是有四个特性A(原子性)、C(一致性)、I(隔离性)D(持久性),而原子性、一致性、持久性是由数据库中的redolog和undolog来完成的,而隔离性是通过数据的加锁来进行实现的redolog用来保证事务的持久性,其实就是将该事务的所有日志写入到重做日志文件进行持久化,待事务的commit...
首先重载是发生在同一个类中的,他的参数个数、参数顺序、参数类型都可以不同,但是重载的方法名必须相同重写的话,一般发生在父子类中,方法名、参数类型、参数列表都必须相同。典型的例子就是定义一个接口,我们去实现一个接口其实就是一种典型的重写。
Java序列化是指把Java对象保存为二进制字节码的过程,Java反序列化是指把二进制码重新转换成Java对象的过程
区别:线程安全方面:String和StringBuilder都是线程不安全的,但是StringBuffer是线程安全的。String是字符串常量,而StringBuffer和StringBuilder都是字符串变量,说白了就是,当String字符串对象一旦创建成功,就不会改变,但是StringBuffer和St...
成员变量可以不用初始化:原因如下原因是因为成员变量是属于实例对象的一部分,而且所有的实例对象都是分配在堆内存中,在虚拟机中分配好存储空间的时候,此时就会把实例对象的内存空间的成员变量都初始化为0,在类对象的加载过程中有五步,加载–>验证—>准备(static在这进行隐式初始化...
如果两个对象彼此有关系,就说他们是彼此相关联的。组合和聚合是面向对象中的两种形式的关联。组合是一种比聚合更强力的关联。组合中,一个对象是另一个的拥有者,而聚合则是指一个对象使用另一个对象。如果对象A是由对象B组合的,则A不存在的话,B一定不存在,但是如果A对象聚合了一个对象B,则即使A不存在了,B也可以单独存在...
类的内部可以有多个嵌套公共静态类,但是一个Java源文件只能有一个顶级公共类,并且顶级公共类的名称与源文件名称必须一致。
虽然两种都可以实现代码复用,但是组合比继承共灵活,因为组合允许你在运行时选择不同的实现。用组合实现的代码也比继承测试起来更加简单。
组合模式使用树结构来展示部分与整体继承关系。它允许客户端采用统一的形式来对待单个对象和对象容器。当你想要展示对象这种部分与整体的继承关系时采用组合模式。
访问者模式用于解决在类的继承层次上增加操作,但是不直接与之关联。这种模式采用双派发的形式来增加中间层。