java基础概念
文章平均质量分 52
whathellll
这个作者很懒,什么都没留下…
展开
-
面试----exception和error
运行时异常与一般异常有什么区别?以及exception和error的对比? exception和error一、相同点:1.都继承了throwable类,在java中只有继承了该类才可以被抛出并捕获。二、不同点:1.exception和error体现了java平台设计者对不同异常情况的分类。exception是程序正常运行中,可以预料的意外情况,可以捕获并进行处理;而erro...转载 2018-06-22 16:20:56 · 391 阅读 · 0 评论 -
面试——反射机制浅显讲解
反射:java提供的动态执行机制,可以动态的加载类,动态创建对象,动态执行方法。上图是jvm如何执行Class cls = Class.forName("Foo"),也就是jvm如何将Foo.class文件加载到内存中的——类加载step1:javac(java编译器)将java文件编译生成*.class文件step2:jvm在运行过程中,根据class.forName("Foo")中的Foo来找...原创 2018-07-03 21:14:51 · 5340 阅读 · 1 评论 -
面试——aop
一、什么是AOPAOP:大体可以理解为面向切面编程,详解可以百度:https://baike.baidu.com/item/AOP/1332219?fr=aladdin二、AOP是基于什么实现的AOP是基于动态代理实现的,而动态代理可以理解为动态执行方法,动态加载类。三、AOP在ssm框架中是如何执行的,怎么使用的反射机制我在我的项目业务层增加了一个空指针异常,来查看ssm框架如何调用从异常抛出的...原创 2018-07-04 16:18:50 · 5063 阅读 · 0 评论 -
面试——内存简单讲解
栈:1.栈描述的是一个方法执行的内存模型,每个方法被调用都会创建一个栈帧(存储局部变量,操作数、方法出口等)2.JVM为每一个线程创建一个栈,用于存放该线程执行方法的信息(实际参数,局部变量)3.栈是属于线程私有的,不能在线程之间进行共享4.这个栈的存储特性:先进后出5.栈是由系统自动分配,速度快!栈是一个连续的内存空间理解:从这段话可以看出,每个线程拥有一个独立的栈空间,每当线程执行方法,mai...原创 2018-07-04 18:26:12 · 557 阅读 · 0 评论 -
对象头信息Object Header
备注:配合java中的锁,以及jvm创建对象的具体过程,tlab等知识联系观看tlab:https://blog.csdn.net/xiaomingdetianxia/article/details/77688945锁:https://blog.csdn.net/zqz_zqz/article/details/70233767HotSpot 虚拟机的对象头包括两部分信息:Mark Wo...转载 2018-08-21 21:19:41 · 4080 阅读 · 0 评论 -
Java基础——JVM——Java1.8的永久代
根据 JVM 规范,JVM 内存共分为虚拟机栈、堆、方法区、程序计数器、本地方法栈五个部分,如下图所示1.1 虚拟机栈:每个线程有一个私有的栈,随着线程的创建而创建。栈里面存着的是一种叫“栈帧”的东西,每个方法会创建一个栈帧,栈帧中存放了局部变量表(基本数据类型和对象引用)、操作数栈、方法出口等信息。栈的大小可以固定也可以动态扩展。当栈调用深度大于JVM所允许的范围,会抛出StackOver...转载 2019-03-09 14:39:03 · 1568 阅读 · 0 评论 -
Java基础——JVM——一个java程序是如何从磁盘中跑起来的
一、粗略解释不专业:https://blog.csdn.net/jim_007/article/details/53839755二、较为专业化阅读了官方文档的解释:https://blog.csdn.net/chengzhang1989/article/details/75451980 https://blog.csdn.net/chengzhang1989/article/detail...转载 2019-03-09 16:06:00 · 332 阅读 · 0 评论 -
回调机制简单的理解
回调与普通调用方法的回调与普通的方法调用不同,普通方法调用一般需要程序员手动调用,而回调方法则是由系统、服务器或者别的程序调用程序员自己创建、实现接口/抽象类的方法、重写父类的方法,这种方法一般称为回调函数(钩子函数)。一、普通的方法调用:public class A { void methrod() { } public sta...原创 2019-08-13 19:43:28 · 2728 阅读 · 0 评论 -
面试----java平台的理解
“一次编译,到处运行“说的是java语言跨平台的特性,java的跨平台特性与java虚拟机存在着密不可分的关系,可以在不同环境中运行。其实java语言本身与其他的编程语言没有太大的差异,并不是说java语言可以跨平台而是在不同平台有着让java在不同平台运行的环境而已。所以才有了一次编译,到处运行的效果。 严格的讲,跨平台的语言不只java一种,但是java是较为成熟的一种。“一次编译到处...转载 2018-06-22 15:23:36 · 164 阅读 · 0 评论 -
JAVASE,面向对象,数据库基础错题集
原创 2018-05-12 14:59:48 · 180 阅读 · 0 评论 -
线程方面错题集合以及答案详解
1.(单选题)getCustomerInfo()方法如下,try中可以捕获三种类型的异常,如果在该方法运行中产生了一个IOException,将会输出什么结果() public void getCustomerInfo() { try { // do something that may cause an Exception } catch ...原创 2018-03-13 15:59:07 · 2162 阅读 · 0 评论 -
一篇关于线程并发的简单案例
之前对线程并发的理解不够深刻,写一个简单案例体会一下如题/** * sleep 是线程类(Thread)的方法,导致此线程暂停执行指定时间, * 给执行机会给其他线程,但是监控 状态依然保持,到时后会自动恢复。 * 调用 sleep 不会释放对象锁。wait 是 Object 类的方法,对此对象 * 调用 wait 方法导致本线程放弃对象锁,进入等待此对象的等待锁定池, * 只有针对此对象发出 n...原创 2018-03-13 16:26:47 · 465 阅读 · 0 评论 -
通过验证码的设计来深入理解web项目中jsp与servlet的不同
我们都知道,在访问网站登陆的时候,会有输入验证码的情况,而且每次登陆所输入的验证码都不同,那么这是用什么实现的?猜想1:直接写在jsp中,然后由servlet转发并呈现给用户答:jsp一般是用来帮助我们编辑网页与java的,其本质上还是java,因为服务器在执行jsp的时候会将它翻译成一个与servlet几乎一样但是只是名字不同的一个接口实现类。那么jsp中是可以写java的,但是由于我们开发的w...原创 2018-03-20 19:21:43 · 264 阅读 · 0 评论 -
阅读1.3.1.7算术表达式求值感受
用算法来实现算数字符串求值这个问题看似复杂,我刚开始的思路是对每个算数表达式中的子算数表达式统计其左右两端的括号的个数,括号个数越多,则计算优先级越高。但是大师用简单的两个栈就实现了看似复杂的功能。所以给了我我在算法与数据结构方面的启示:算法与数据结构,本质上是逻辑思维,也就是数学。处理数学问题,用欧拉那句名言,一切从定义触发。遇到复杂问题,先从最简单的角度思考解决问题的方式,如上文的问题。任何问...原创 2018-04-09 12:55:49 · 462 阅读 · 0 评论 -
XML相关题目,synchronized
原创 2018-05-02 17:13:13 · 144 阅读 · 0 评论 -
spring框架题目
原创 2018-05-03 14:50:57 · 210 阅读 · 0 评论 -
servletJsp相关习题
原创 2018-05-03 14:28:15 · 178 阅读 · 0 评论 -
jsp
原创 2018-05-03 14:31:35 · 119 阅读 · 0 评论 -
AJAX错题集合以及二进制错题集合
原创 2018-05-12 14:14:37 · 132 阅读 · 0 评论 -
Java基础——String,StringBuilder,StringBuffer的区别
String是Java中基础且重要的类,并且String也是Immutable类的典型实现,被声明为final class,除了hash这个属性其它属性都声明为final,因为它的不可变性,所以例如拼接字符串时候会产生很多无用的中间对象,如果频繁的进行这样的操作对性能有所影响。StringBuffer就是为了解决大量拼接字符串时产生很多中间对象问题而提供的一个类,提供append和add方法,...转载 2019-08-21 15:13:02 · 230 阅读 · 0 评论