自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 收藏
  • 关注

原创 堆和栈的区别、垃圾回收机制、内存分配、类加载器

一、堆和栈的区别1、存放的数据不同堆中存放对象,需要手动释放内存。(垃圾回收机制)栈中存放局部变量,内存的释放是系统控制实现的。(局部变量的存活时间是这个函数调用完之后)2、空间大小不一样堆的空间大,栈的空间小二、垃圾回收机制(主要针对堆和方法区)1、使用目的:避免发生内存泄漏和内存溢出的情况,使得系统能更好地使用内存。(在JVM中,程序计数器是唯一一个没有规定任何OO...

2019-09-24 10:39:33 1170

原创 Bean的实例化方法

Bean的实例化就是对依赖注入的对象的实例化:1)setter方法2)构造函数3)静态工厂4)实例工厂

2019-09-23 19:28:24 77

原创 反射机制及应用场景

1、反射:动态获取信息或动态调用对象的方法的机制。对于任意一个类,都能知道他的所有属性与方法,对于任意对象,都可以获取对象的方法。 应用场景:在第三方应用开发过程中,如果某一个类的方法属性是私有的,或者只对应用系统开放,可以通过反射机制获得自己所需要的信息。 实现方式:1)调用运行时类本身的.class属性 2)利用运行时类的...

2019-09-23 08:10:31 2011

原创 Java数据类型

1、Java数据类型包括基本数据类型和引用数据类型。基本数据类型包括:int short long floatdouble char ture flase引用数据类型:数组、类、接口(*接口 抽象类)(数组:具有相同数据类型的数据集合,数组名为数组地址,指向数组首元素)为、基本数据类型经过封装之后变为对应的包装类,与之相反的是拆箱。3、包装类型(封装类型)与基本数据类型的区...

2019-09-22 10:03:54 82

原创 不可变类

不可变类就是一个类中的对象一旦创建了,在整个生命周期中,它的成员变量不会再改变。不可变类有:String、基本类型的包装类等。使用不可变类的原因:一旦创建了就不再改变,因此它安全,易于操作,也容易设计。如何设计一个不可变类?1)使用final修饰成员变量、类名或者类中的方法2)类中没有对成员变量修改的方法,例如setxxx(),通过构造函数对成员变量初始化。...

2019-09-22 09:49:16 123

原创 Java面向对象开发的六大原则

面向过程需要了解每一步流程、面向过程只需要知道功能,不需要了解具体工作原理。面向过程实现面向对象:结构体+函数指针1、单一原则:引起类发生变化的原因只有一个。也就是说,一个类只做和自己有关的事,不做其他领域的事情2、依赖倒置原则:实现面向接口编程。3、里式替换原则:可以用子类代替父类。4、开放封闭原则:面对扩展开发,修改封闭。5、合成聚合复用:优先使用合成或聚合关系代...

2019-09-22 09:34:32 133

原创 接口、抽象类

相同点:接口和抽象类都不能被实例化,是由其他类实现和继承的。不同点:一个类可以实现多个接口,但是只能继承一个类。(要想实现多继承,就需要通过内部类和接口来实现(*成员变量 内部类))抽象类中可以包含普通方法、普通成员变量、静态常亮、构造器(通过子类调用抽象类的构造函数,实现抽象类的初始化操作(*this super))...

2019-09-22 09:33:55 59

原创 Java基本特性(抽象、继承、封装、多态)

(*文档名)抽象——抽取一类对象的共同特性。继承——子类继承父,父类又叫基类、超类(*this(new一个对象的流程) super(程序初始化顺序))。封装——将数据结构与操作系统组合起来,外界通过接口访问,实现了隐藏细节。多态——不同事件对同一消息的不同响应。实现方式——重载、重写(区别)重载:就是一个类中有多个同名方法,但参数列表不同。重写:子类对父类方法的继承,...

2019-09-22 09:32:42 53

原创 构造函数

用途:用来创建对象时初始化对象的。调用方式:new 构造函数名(),因此,构造函数名一般与类名一致,首字母大写。重载:构造函数可以重载,可以有多个,且带参数的构造函数...

2019-09-22 09:31:57 55

原创 this(new一个对象的流程) super(程序初始化顺序)

1、this的使用:构造方法(*构造函数)就是创建对象(new可以通过调用构造函数来创建对象)。实际的创建对象的流程是:0)加载类(String.class)文件进入内存中1)为对象分配空间(静态区(栈)和堆,String str=new String("hello");检查静态区(常量区)有没有“hello”,有则直接在堆中创建对象,没有则在堆中和静态区中创建对象。),并...

2019-09-22 09:29:38 257

原创 内部类

1、使用内部类的原因:内部类+接口可以实现多继承(让内部类继承接口)2、应用场景:当你要实现的接口中,有一个方法与类中的方法名称和参数列表相同时,可以使用内部类实现接口。publicinterfaceContents{}publicinterfaceDestination{}publicclassGoods{private...

2019-09-22 09:27:06 48

原创 成员变量与局部变量的区别

成员变量与局部变量的区别:1)定义位置不同成员变量定义在类中方法外局部变量定义在方法中或者方法声明中2)生命周期不同成员变量随着对象创建而创建、随着对象销毁而销毁局部变量随着方法的调用而存活,随着调用结束而销毁3)存储位置不同成员变量存储在堆中局部变量存储在栈中4)初始值不同成员变量有默认值局部变量必须赋值...

2019-09-22 08:56:22 61

空空如也

空空如也

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

TA关注的人

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