自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 问答 (1)
  • 收藏
  • 关注

原创 JVM基础一:Jvm内存区域介绍

JVM内存区域介绍1、内存介绍(下图为JDK1.7)(1)堆:线程共享的一片区域,虚拟机启动的时候创建。用来新创建的对象实例,几乎所有的对象和数组都从这里分配内存。(2)方法区:用于存储已经被虚拟机加载的类的信息、常量、静态变量、即时编译后的代码等数据。Java1.8后被直接内存里的元空间代替了。方法区里面还包含运行时常量池(1.8后也直接放在内存里了),运行时常量池包含的内容:字面量(文本字符串,声明为final的常量值,基本数据类型的值,其他)和符号引用(类和结构的完全限定名,字段名称和描述符,

2021-05-07 20:04:54 96

原创 Java基础十二:Java动态代理、Object类中的方法以及重写和重载的区别

1、Java动态代理(1) 代理一般分为静态代理和动态代理,都是代理模式的一种应用。(2) 静态代理指的是在程序运行前已经编译好,知道谁来执行代理方法。(3) 动态代理只有在程序运行期间才能确定,与静态代理相比,优势是可以很方便的对代理类的函数进行统一的处理,而不用修改每个代理类中的方法。动态代理是基于反射实现的。通过反射可以直接操作类或者对象,获得声明的属性和方法。动态代理是一种在运行时构建大力、动态处理方法调用的机制。动态代理的方式有很多,其中Jdk动态代理是基于类的继承实现的。2、Object

2021-04-29 15:04:25 359

原创 Java基础十一:Java关键字instanceof

1、Java关键字instanceofinstanceof是一个双目运算符,用来测试一个对象是否为一个类的实例,格式:boolean result=对象obj instanceof Class;//返回结果为boolean类型用法:(1)对象obj必须是引用类型,不能是基本数据类型;(2)如果对象obj为null,则返回false(3) obj为class类的实例对象: 【常用】 Integer integer=new Integer(1); System.out.println(

2021-04-23 19:48:47 214

转载 Java基础十:Java怎么对数据库中的事务进行管理

Java怎么对数据库中的事务进行管理方式一:JDBC事务管理jdbc全称:Java Data Base Connectivity,Java数据库连接a) 开启事务:setAutocommit(boolean autoCommit):调用该方法设置参数为false,即开启事务。b) 提交事务:commit(),所有的sql执行完提交事务c) 回滚事务:rollback(),在catch中回滚事务方式二:数据库连接池管理事务a) 实现:标准接口DataSource javax.sql包下,一般使用

2021-04-22 22:41:04 321

原创 Java基础九:代码块,静态代码块,构造代码块和局部代码块的介绍以及throw和throws的区别

1、代码块,静态代码块,构造代码块和局部代码块的介绍(1) 代码块:在java中使用{…}括起来的代码(2) 静态代码块定义:在类中的成员位置,用{ }括起来,使用static修饰。作用:一般是对类进行初始化,只执行一次(3) 构造代码块定义:在构造方法的位置,在类中的成员位置;每一次调用构造方法,都会执行对应的代码块;(4) 局部代码块定义:局部位置(main方法里),用于限定变量的生命周期面试题:静态代码块,构造代码块,构造方法三者的执行顺序答:静态代码块>构造代码块>构

2021-04-21 11:20:26 105

原创 Java基础八:Java中的反射机制

1、Java中的反射机制1.1、定义 反射机制是在运行时,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意个对象,都能够调用它的任意一个方法。在java中,只要给定类的名字,就可以通过反射机制来获得类的所有信息。1.2、用法 jdbc就是典型的反射----如class.forName('com.mysql.jdbc.Driver.class');//加载MySQL的驱动类----这就是反射。如hibernate,struts等框架使用反射实现的。1.3、实现方式首先获取class对

2021-04-20 22:15:25 96

原创 Java基础七:comparable 和 Comparator的详细介绍

comparable 和 Comparator的区别(1) Comparable接口实际上是出自java.lang包,它有一个compareTo(Object obj)方法来排序(2) Comparator接口实际上是出自java.util包,它有一个compare(Object obj1,Object obj2)方法来排序一般需要对一个集合使用自定义排序时,就要重写CompareTo方法或者compare()方法对一个集合进行自定义排序的两种实现方法场景:对下面的Student进行排序,排序规则

2021-04-19 11:43:50 131

原创 Java基础六:内部类相关,成员内部类,静态内部类,局部内部类以及匿名内部类的介绍

1、内部类内部类:定义在类内部的类。使用内部类的好处:(1)内部类方法可以访问该类定义所在的作用域中的数据,包括私有数据。(2) 内部类可以对同一个包中的其他类隐藏起来。(3)当要定义一个回调函数且不想编写大量代码时,使用内部类简洁。成员内部类,静态内部类,局部内部类以及匿名内部类的介绍(1) 成员内部类:存在于某个类的内部,与全局属性或者方法同级的内部类就是成员内部类。特点:成员内部类可以无条件访问外部类的所有成员属性和成员方法(包括静态成员和私有成员);成员内部类和外部类的属性和方法名同

2021-04-18 11:00:38 78

原创 Java基础五:HashMap、ConcurrentHashMap和HashTablele的比较

1、HashMap、ConcurrentHashMap和HashTablele的比较(1)线程是否安全:HashMap是⾮线程安全的,ConcurrentHashMap和HashTable是线程安全的。因为ConcurrentHashMap和HashTable内部的⽅法都加锁了。 Jdk1.7 ConcurrentHashMap使用的是分段锁(Segment,每⼀把锁只锁容器其中⼀部分数据,多线程访问容器⾥不同数据段的数据,就不会存在锁竞争,提⾼并发访问率);到了JDK1.8 的时候已经摒弃了Segmen

2021-04-17 10:45:56 103

原创 Java基础四:集合List,Set,Map的区别,以及list集合的介绍

Java基础四:集合1、说说List,Set,Map三者的区别?(1)List (对付顺序的好帮⼿): 存储的元素是有序的、可重复的。List的子类特点:ArrayList:底层数据结构是数组,查询快,增删慢;Vector:底层数据结构是数组,查询快,增删慢—线程安全,效率低;Linkedlist:底层数据结构是链表,查询慢,增删快—线程不安全,效率高。(2) Set (注重独⼀⽆⼆的性质): 存储的元素是⽆序的、不可重复的。(3) Map (⽤ Key 来搜索的专家): 使⽤键值对(kye

2021-04-16 19:33:54 166

原创 Java基础三:无参构造,hashcode与equals,final和static关键字总结

Java基础三:Java中定义一个不做事且无参数的构造方法的作用是什么?答:Java 程序在执⾏⼦类的构造⽅法之前,如果没有⽤ super() 来调⽤⽗类特定的构造⽅法,则会调⽤⽗类中“没有参数的构造⽅法”。因此,如果⽗类中只定义了有参数的构造⽅法,⽽在⼦类的构造⽅法中⼜没有⽤ super() 来调⽤⽗类中特定的构造⽅法,则编译时将发⽣错误,因为 Java 程序在⽗类中找不到没有参数的构造⽅法可供执⾏。解决办法是在⽗类⾥加上⼀个不做事且没有参数的构造⽅法。两个对象的hashCode值相等,调用eq

2021-04-15 20:59:34 147

原创 Java基础二:自动拆箱和装箱,“==”以及equals的区别

Java基础二1、自动拆箱和装箱装箱就是:自动将基本数据类型转换为包装器类型;拆箱就是:自动将包装器类型转换为基本数据类型。自动装箱/拆箱代码如下。//自动装箱Integer aa=110;//自动拆箱int bb=aa;2021.4.09网易暑期实习笔试题:下面的输出结果为? Integer a1=-127; Integer a2=-127; Integer b1=100; Integer b2=100; Integer c1

2021-04-14 19:07:51 72

原创 java基础一:StringBuffer和StringBuild的区别String为什么是不可变的?

java基础一:StringBuffer和StringBuild的区别String为什么是不可变的?1、可变性String类中使⽤ final 关键字修饰字符数组来保存字符串,private final char value[] ,所以String对象是不可变的。StringBuilder与StringBuffer都继承自AbstractStringBuilder 类,是使用字符数组char[] value保存字符串,但是没有使用final关键字修饰,所以两种对象都是可变的。部分源码如下:// S

2021-04-13 17:21:51 286

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除