随笔分类 -  Java-基础知识

摘要:1、简述 单例模式(Singleton Pattern)是 Java 中最简单的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 这种模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有单个对象被创建。这个类提供了一种访问其唯一的对象的方式,可以直接访问,不需 阅读全文
posted @ 2019-05-30 22:47 Roni_i 阅读(140) 评论(0) 推荐(0) 编辑
摘要:1、工厂模式 工厂模式(Factory Pattern)是 Java 中最常用的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 在工厂模式中,我们在创建对象时不会对客户端暴露创建逻辑,并且是通过使用一个共同的接口来指向新创建的对象。 2、介绍 意图:定义一个创建对象 阅读全文
posted @ 2019-05-30 20:05 Roni_i 阅读(108) 评论(0) 推荐(0) 编辑
摘要:1、设计模式原则(基于GOF) 对 接口 编程而不是对实现编程 优先使用对象组合而非继承 2、设计模式的用途 开发人员的共同平台,提供了标准的术语系统。也就是我讲的黑话,你听得懂。 提供了软件开发过程中面临的一般问题的最佳解决方案。有助于经验不足的开发人员通过一种简单快捷的方式来学习软件设计。 3、 阅读全文
posted @ 2019-05-30 19:06 Roni_i 阅读(138) 评论(0) 推荐(0) 编辑
摘要:今天,我要问你的是一个经典的 Java 基础题目,谈谈 final、finally、 finalize 有什么不同? 典型回答 final 可以用来修饰类、方法、变量,分别有不同地意义,final修饰地 class 代表不可以继承扩展,final 的变量是不可以修改的,而 final 的方法也是不可 阅读全文
posted @ 2019-05-03 20:48 Roni_i 阅读(209) 评论(0) 推荐(0) 编辑
摘要:今天我要问你的问题是,请对比 Exception 和 Error,另外,运行时异常与一般异常有什么区别? 典型回答 Exception 和 Error 都是继承了 Throwable 类,在 Java 中只有 Throwable 类型的实例才可以被抛出或者捕获,它是异常处理机制的基本组成类型。 Ex 阅读全文
posted @ 2019-05-03 19:31 Roni_i 阅读(276) 评论(0) 推荐(0) 编辑
摘要:今天我要问你的问题是,谈谈你对 Java 平台的理解?“Java 是解释执行”,这句话正确吗? 典型回答 Java本身是一种面向对象的语言,最显著的特性有两个。一是所谓的“书写一次,到处运行”,能够非常容易获得跨平台能力;另一个就是垃圾收集,Java通过垃圾收集器回收分配内存,大部分情况下,程序员不 阅读全文
posted @ 2019-05-03 17:26 Roni_i 阅读(133) 评论(0) 推荐(0) 编辑
摘要:synchoronized是JVM的内置锁,而lock是Java代码实现的。lock是sync对的扩展,完全可以替代后者。lock可以重入,允许同一个线程连续多次获得同一把锁。其次,lock独有的功能有: 1、可以响应中断,sync要么获得锁执行,要么保持等待。而重入锁可以响应中断,使得线程在迟迟得 阅读全文
posted @ 2019-04-06 20:49 Roni_i 阅读(1596) 评论(0) 推荐(0) 编辑
摘要:import java.util.concurrent.locks.Lock; import java.util.concurrent.locks.ReentrantLock; public class Solution { private int start = 1; /** * 对flag的写入虽然加锁保证了线程安全,但由于读取时不是volatile所以... 阅读全文
posted @ 2019-02-22 17:10 Roni_i 阅读(636) 评论(0) 推荐(0) 编辑
摘要:如果当多个线程访问同一个可变的状态变量时没有使用合适的同步,那么程序就会出现错误。有三种方式可以修复这个问题: i、不在线程之间共享该状态变量 ii、将状态变量修改为不可变的变量 iii、在访问状态变量时使用同步 什么是线程安全性? A:我们可以将单线程的正确性近似定义为“所见即所知”。在对“正确性 阅读全文
posted @ 2019-02-21 11:11 Roni_i 阅读(220) 评论(0) 推荐(0) 编辑
摘要:1.Hash Map的数据结构? A:哈希表结构(链表散列:数组+链表)实现,结合数组和链表的优点。当链表长度超过8时,链表转换为红黑树。 transient Node<K,V>[] table; 2.HashMap的工作原理 A:HashMap底层是hash数组和单向链表实现,数组中的每个元素都是 阅读全文
posted @ 2019-02-20 09:52 Roni_i 阅读(2599) 评论(0) 推荐(0) 编辑
摘要:1.抽象类和接口的区别 抽象类和接口的对比 什么时候使用抽象类和接口 如果你拥有一些方法并且想让它们中的一些有默认实现,那么使用抽象类吧。 如果你想实现多重继承,那么你必须使用接口。由于Java不支持多继承,子类不能够继承多个类,但可以实现多个接口。因此你就可以使用接口来解决它。 如果基本功能在不断 阅读全文
posted @ 2019-01-21 13:10 Roni_i 阅读(207) 评论(0) 推荐(0) 编辑
摘要:1.HashMap原理 https://blog.csdn.net/mbshqqb/article/details/79799009 2.集合类中哪些是线程安全的? 一、概念: 线程安全:就是当多线程访问时,采用了加锁的机制;即当一个线程访问该类的某个数据时,会对这个数据进行保护,其他线程不能对其访 阅读全文
posted @ 2019-01-21 13:09 Roni_i 阅读(118) 评论(0) 推荐(0) 编辑
摘要:参考: https://www.cnblogs.com/chanshuyi/p/the_java_class_load_mechamism.html http://www.joahcy.com/JVM/%E7%B1%BB%E7%9A%84%E5%8A%A0%E8%BD%BD%E6%9C%BA%E5% 阅读全文
posted @ 2019-01-21 10:55 Roni_i 阅读(146) 评论(0) 推荐(0) 编辑
摘要:1. 这个问题,每次都是重新编译后还会出现这个异常,原因是Struts2框架自带antlr2.7.2.jar和Hibernate框架自带的ntlr2.7.7.jar冲突了,故只要删除低版本的antlr2.7.2.jar就行,但是antlr2.7.2.jar是Struts2框架自带的,所以删除后重新编 阅读全文
posted @ 2018-12-25 01:27 Roni_i 阅读(281) 评论(0) 推荐(0) 编辑
摘要:之前项目开发多用mysql,对于id自增长设置,只需要简单修改列属性便好。最近改用ORACLE,头大一圈。ORACLE的相关操作,多用脚本。想短平快,难。最终用sql developer通过UI进行修改,但逻辑比想象的啰嗦。 ORACLE实现id自增长,需要三个步骤。 (1)创建序列。即,定义一个增 阅读全文
posted @ 2018-11-27 22:11 Roni_i 阅读(478) 评论(0) 推荐(0) 编辑
摘要:Java学习之路(书籍推荐) 一、基础类 1、《Thinking in java》(阅读2遍),入门第一位是建立正确的概念 2、《Core Java》这本书更贴近实践,更多API的介绍,同样,更新也更频繁。(可以选重点章节读一下) 二、进阶类 1、《Effective Java》(阅读1遍),在熟悉 阅读全文
posted @ 2018-11-22 00:26 Roni_i 阅读(414) 评论(0) 推荐(0) 编辑
摘要:面向对象和面向过程的区别 Java语言有哪些特点 什么是JDK/什么是JRE/什么是JVM&三者之间的联系与区别 什么是字节码&采用字节码最大好处是什么 Java与C++的区别 什么是Java程序的主类&应用程序和小程序的主类有何不同 Java应用程序和小程序之间有哪些区别 字符型常量和字符串常量的 阅读全文
posted @ 2018-11-13 22:38 Roni_i 阅读(185) 评论(0) 推荐(1) 编辑

点击右上角即可分享
微信分享提示