面试题每日一题
文章平均质量分 70
敲一个代码掉一根头发
这个作者很懒,什么都没留下…
展开
-
final,finally{}和finalize()的不同之处
final,finally{}和finalize()的不同之处finalfinal是个修饰符(关键字),可以用来修饰变量,方法,类修饰成员变量当用final作用于类的成员变量时,成员变量(注意是类的成员变量,局部变量只需要保证在使用之前被初始化赋值即可)必须在定义时或者构造器中进行初始化赋值,而且final变量一旦被初始化赋值之后,就不能再被赋值了。修饰方法一个类中的方法如果被final关键字修饰,则其子类无法覆写该方法,只能被子类继承。如果父类中的某个方法不想被其子类所覆写,可将该方法定义为f原创 2021-08-23 11:28:21 · 158 阅读 · 0 评论 -
#{}和${}的区别是什么?
#{}和${}的区别是什么?#{}:是预编译处理,可以防止SQL注入${}:是字符串替换例如:在Mybatis中当你进行数据库查询时SQL语句通过#{id}传值<select id="SelecUserById" resultType="com.hzc.pojo.User" parameterType="int"> select *from user where id=#{id};</select>当你执行项目时,我们通过log4j打印日志出来可以看到DEB原创 2021-08-20 17:29:09 · 7297 阅读 · 0 评论 -
什么是RestFul风格
什么是RestFul风格RestFul风格概念Restful就是一个资源定位及资源操作的风格。不是标准也不是协议,只是一种风格。基于这个风格设计的软件可以更简洁,更有层次,更易于实现缓存等机制。功能资源:互联网所有的事物都可以被抽象为资源资源操作:使用POST、DELETE、PUT、GET,使用不同方法对资源进行操作。分别对应 添加、 删除、修改、查询。传统方式操作资源 :通过不同的参数来实现不同的效果!方法单一,post 和 gethttp://127.0.0.1/i原创 2021-08-20 15:32:51 · 418 阅读 · 0 评论 -
spring框架中用到了哪些设计模式
spring框架中用到了哪些设计模式1、工厂设计模式pring使用工厂模式可以通过 BeanFactory 或 ApplicationContext 创建 bean 对象。两者对比:BeanFactory :延迟注入(使用到某个 bean 的时候才会注入),相比于BeanFactory 来说会占用更少的内存,程序启动速度更快。ApplicationContext :容器启动的时候,不管你用没用到,一次性创建所有 bean 。BeanFactory 仅提供了最基本的依赖注入支持,Applicati原创 2021-08-12 16:53:46 · 402 阅读 · 0 评论 -
SpringAOP代理模式(静态、动态)
SpringAOP的代理模式代理模式作为23种经典设计模式之一,其比较官方的定义为“为其他对象提供一种代理以控制对这个对象的访问”,简单点说就是,之前A类自己做一件事,在使用代理之后,A类不直接去做,而是由A类的代理类B来去做。代理类其实是在之前类的基础上做了一层封装。java中有静态代理、JDK动态代理、CGLib动态代理的方式。静态代理指的是代理类是在编译期就存在的,相反动态代理则是在程序运行期动态生成的一、静态代理静态代理的特点是, 为每一个业务增强都提供一个代理类, 由代理类来创建代理对象静原创 2021-08-12 16:24:39 · 292 阅读 · 0 评论 -
Java单例模式
一、什么是单例模式?单例模式是一种常用的软件设计模式,其定义是单例对象的类只能允许一个实例存在。许多时候整个系统只需要拥有一个的全局对象,这样有利于我们协调系统整体的行为。比如在某个服务器程序中,该服务器的配置信息存放在一个文件中,这些配置数据由一个单例对象统一读取,然后服务进程中的其他对象再通过这个单例对象获取这些配置信息。这种方式简化了在复杂环境下的配置管理。单例的实现主要是通过以下两个步骤:将该类的构造方法定义为私有方法,这样其他处的代码就无法通过调用该类的构造方法来实例化该类的对象,只有原创 2021-08-11 11:21:14 · 118 阅读 · 0 评论 -
Spring中的单例bean的线程安全问题
Spring中的单例bean的线程安全问题因为成员变量是存放在堆内存中,而堆内存又是线程共享的,这就造成了线程安全问题因为Spring中的Bean默认是单例的,所以在定义成员变量时也有可能会发生线程安全问题单例的bean 多线程共享,存在资源竞争。如果单例bean 只关注于方法,不会对Bean的成员执行查询以外的操作,这个bean是线程安全的。 重点在于有无对bean 属性的查询以外操作。Spring容器中的Bean是否线程安全,容器本身并没有提供Bean的线程安全策略,因此可以说Spring容器中原创 2021-08-11 11:19:34 · 4108 阅读 · 0 评论 -
Spring框架中有哪些模块?
Spring框架中有哪些模块?体系结构中的模块作用1、 Core Container(核心容器)Spring的核心容器是其他模块建立的基础,它主要由Beans模块、Core模块、Context模块、Context-support模块和SpEL(Spring Expression Language,Spring表达式语言)模块组成,具体介绍如下。Beans模块:提供了BeanFactory,是工厂模式的经典实现,Spring将管理对象称为Bean。Core核心模块:提供了Spring框架的原创 2021-08-10 11:23:19 · 1706 阅读 · 0 评论 -
什么是Spring框架
什么是Spring框架Spring 框架是一个轻量级的 Java 开发框架,为应用开发提供平台。它是为了解决企业应用开发的复杂性而创建的。框架的主要优势之一是分层架构,分层架构允许使用者选择使用哪一个组件,同时为 J2EE 应用程序开发提供继承的框架。Spring 使用基本的 JavaBean 来完成以前只能只可能由 EJB 完成。Spring 提供 IOC 容器,可以将对象直接的依赖关系交由 Spring 进行控制,避免通过硬编码造成程序过度耦合。Spring 提供 AOP 功能,方便进行面向切面原创 2021-08-09 09:56:13 · 300 阅读 · 0 评论 -
TCP三次握手,四次挥手
TCP三次握手,四次挥手TCPTransmission Control Protocol/Internet Protocol的简写,中译名为传输控制协议/因特网互联协议,又名网络通讯协议,是Internet最基本的协议。通俗而言:TCP负责发现传输的问题,一有问题就发出信号,要求重新传输,直到所有数据安全正确地传输到目的地。而IP是给因特网的每一台联网设备规定一个地址。TCP 协议简述TCP 提供面向有连接的通信传输,面向有连接是指在传送数据之前必须先建立连接,数据传送完成后要释放连接。无论哪一原创 2021-08-06 10:44:29 · 311 阅读 · 0 评论 -
Spring AOP、IOC
Spring AOP、IOCIOC(控制反转)Ioc—Inversion of Control,即控制反转,不是什么技术,而是一种设计思想。IOC容器负责实例化、定位、配置应用程序中的对象和建立这些对象中的依赖关系。交由Spring容器统一进行管理,从而实现松耦合。就例如:你的公司需要招聘技术人员、主管人员,你需要去发布招聘信息、去面试应聘人员、最后通过、获得技术人员…控制反转后比如,有个猎头公司给你推荐、引荐了各类技术人才,你不需要去发布招聘信息、面试人员,可以直接引用猎头公司推荐的技术人才;原创 2021-08-06 09:02:05 · 86 阅读 · 0 评论 -
Java:基本数据类型和包装类型的区别
基本数据类型和包装类型的区别一、有了基本数据类型为什么还要包装类? 在Java语言中,new一个对象存储在堆里,我们通过栈中的引用来使用这些对象。但是对于经常用到的数据类型,例如,int、boolean… 如果我们用new将其存储在堆里就不是很高效——特别是简单的小的变量。所以,同C++ 一样Java也采用了相似的做法,决定基本数据类型不是用new关键字来创建,而是直接将变量的值存储在栈中,方法执行时创建,结束时销毁,因此更加高效。 而Java是一门面向对象的编程语言,但是Java中的基本数据原创 2021-07-31 17:55:44 · 348 阅读 · 0 评论 -
为什么Java中没有全局变量?
为什么Java中没有全局变量?初步理解: Java程序是由多个类、方法堆积而成的,而每个类、方法中的变量相当于自己的"全局变量",而相对于其他类、方法而言,是属于不能直接调用的"局部变量";简单来说: 相当于一个main方法中,所有的类方法能调用的变量就是"全局变量";总的来说: "全局变量"和"局部变量"就是一个相对的概念;...原创 2021-07-30 13:24:17 · 1715 阅读 · 0 评论 -
equals与==的区别
equals与==的区别1、 ==的含义在Java中"=="的作用主要有两个:基本数据类型,"=="的作用就是比较两者的值是否相等,例如int类型,比较的是变量的值是否相等引用数据类型,"=="的作用就是比较的是引用地址是否相同,比如新建两个User对象,比较两个对象的地址是否相同public class Subject01 { public static void main(String[] args) { int a=2; int b=2;原创 2021-07-30 13:22:10 · 103 阅读 · 0 评论