<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[GGGGGSole的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/GGGGGSole</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; GGGGGSole]]></copyright><item><title><![CDATA[JVM - OOM可能发生在哪些区域上]]></title><link>https://blog.youkuaiyun.com/GGGGGSole/article/details/109036946</link><guid>https://blog.youkuaiyun.com/GGGGGSole/article/details/109036946</guid><author>GGGGGSole</author><pubDate>Mon, 12 Oct 2020 21:07:16 +0800</pubDate><description><![CDATA[根据Java doc的描述，OOM是指JVM的内存不够用了，同时垃圾收集器也无法提供更多的内存。从描述中可以看出，在JVM抛出OutOfMemoryError之前，垃圾收集器一般会出马先尝试回收内存。
从上面分析的Java数据区来看，除了程序计数器不会发生OOM外，哪些区域会发生OOM的情况呢？
堆内存
堆内存不足是最常见的发送OOM的原因之一。
如果在堆中没有内存完成对象实例的分配，并且堆无法再扩展时，将抛出OutOfMemoryError异常，抛出的错误信息是“java.lang.OutOfMemory]]></description><category></category></item><item><title><![CDATA[用 Java 实现一个 Singleton 模式]]></title><link>https://blog.youkuaiyun.com/GGGGGSole/article/details/109036419</link><guid>https://blog.youkuaiyun.com/GGGGGSole/article/details/109036419</guid><author>GGGGGSole</author><pubDate>Mon, 12 Oct 2020 20:44:43 +0800</pubDate><description><![CDATA[题目：请用 Java 手写一个单例模式代码，希望尽可能考虑地全面。
不论是 Java 还是 Android 中单例模式肯定是我们经常用到的，所以这道题可能大多数人会第一时间想到饿汉式代码。
public class Singleton {
    private static final Singleton INSTANCE = new Singleton();
​
    private Singleton() {
    }
​
    public static Singleton getInstan]]></description><category></category></item><item><title><![CDATA[jvm对象生存还是死亡]]></title><link>https://blog.youkuaiyun.com/GGGGGSole/article/details/109036004</link><guid>https://blog.youkuaiyun.com/GGGGGSole/article/details/109036004</guid><author>GGGGGSole</author><pubDate>Mon, 12 Oct 2020 20:23:54 +0800</pubDate><description><![CDATA[即使在可达性分析算法中不可达的对象，也并非是“非死不可”的，这时候它们暂时处于“缓刑”阶段，要真正宣告一个对象死亡，至少要经历两次标记过程:如果对象在进行可达性分析后发现没有与GC Roots 相连接的引用链，那它将会被第一次标记并且进行一次筛选，筛选的条件是此对象是否有必要执行finalize() 方法。当对象没有覆盖finalize() 方法，或者finalize() 方法已经被虚拟机调用过，虚拟机将这两种情况都视为“没有必要执行”。
如果这个对象被判定为有必要执行finalize()方法，那么这个对象]]></description><category></category></item><item><title><![CDATA[Java 基础 包装类 （四类八种的包装类）拆箱、装箱 JVM缓存整型]]></title><link>https://blog.youkuaiyun.com/GGGGGSole/article/details/109035747</link><guid>https://blog.youkuaiyun.com/GGGGGSole/article/details/109035747</guid><author>GGGGGSole</author><pubDate>Mon, 12 Oct 2020 20:21:03 +0800</pubDate><description><![CDATA[包装类
概述
Java 提供了俩个类型系统：基本类型、引用类型
使用基本类型在于效率，然而很多情况，会创建对象使用，因为对象可以做更多的功能，如果想要我们使用基本类型对象一样操作，就可以使用基本类型对应的包装类
4类8种如下图（可以百度）

基本数据类型与包装类：主要记住 Integer 和 Character

装箱与拆箱
基本类型与对应的包装类对象之间，来回转换的过程称为“装箱”与“拆箱”

装箱：从基本数据类型转换为对应的包装类对象
拆箱：从包装类对象转换为对应的基本类型

这里以 Integer 包]]></description><category></category></item><item><title><![CDATA[java双亲委派机制及作用的深入理解]]></title><link>https://blog.youkuaiyun.com/GGGGGSole/article/details/109035494</link><guid>https://blog.youkuaiyun.com/GGGGGSole/article/details/109035494</guid><author>GGGGGSole</author><pubDate>Mon, 12 Oct 2020 20:11:09 +0800</pubDate><description><![CDATA[什么是双亲委派机制
 当某个类加载器需要加载某个.class文件时，它首先把这个任务委托给他的上级类加载器，递归这个操作，如果上级的类加载器没有加载，自己才会去加载这个类。
类加载器的类别
BootstrapClassLoader（启动类加载器）
 c++编写，加载java核心库 java.*,构造ExtClassLoader和AppClassLoader。由于引导类加载器涉及到虚拟机本地实现细节，开发者无法直接获取到启动类加载器的引用，所以不允许直接通过引用进行操作
ExtClassLoader （标准扩]]></description><category></category></item><item><title><![CDATA[面试问题]]></title><link>https://blog.youkuaiyun.com/GGGGGSole/article/details/108656200</link><guid>https://blog.youkuaiyun.com/GGGGGSole/article/details/108656200</guid><author>GGGGGSole</author><pubDate>Fri, 18 Sep 2020 00:32:17 +0800</pubDate><description><![CDATA[Java面向对象编程的三大特性
类加载过程
Java常见的几种设计模式
Java中Synchronized的用法
JAVA中final关键字的作用
Java final 修饰符知识点总结


]]></description><category></category></item><item><title><![CDATA[Java面向对象编程的三大特性]]></title><link>https://blog.youkuaiyun.com/GGGGGSole/article/details/108655313</link><guid>https://blog.youkuaiyun.com/GGGGGSole/article/details/108655313</guid><author>GGGGGSole</author><pubDate>Fri, 18 Sep 2020 00:12:00 +0800</pubDate><description><![CDATA[1. 面向对象编程的三大特性
Java 面向对象编程有三大特性：封装、继承、多态。
1.1 封装（Encapsulation）

封装
隐藏对象的属性和实现细节，仅对外公开访问方法，控制在程序中属性的读和写的访问级别。

1.1.1 封装的目的
增强安全性和简化编程，使用者不必了解具体的实现细节，而只要通过对外公开的访问方法，来使用类的成员。
1.1.2 封装的基本要求


把所有的属性私有化。


对每个属性提供 getter 和 setter 方法。


如果有一个带参的构造函数的话，那一定要写一个不带]]></description><category></category></item><item><title><![CDATA[类加载过程]]></title><link>https://blog.youkuaiyun.com/GGGGGSole/article/details/108325510</link><guid>https://blog.youkuaiyun.com/GGGGGSole/article/details/108325510</guid><author>GGGGGSole</author><pubDate>Mon, 31 Aug 2020 17:21:18 +0800</pubDate><description><![CDATA[类从被加载到虚拟机内存中开始，到卸载出内存为止，它的整个生命周期包括：加载（Loading）、验证（Verification）、准备(Preparation)、解析(Resolution)、初始化(Initialization)、使用(Using)和卸载(Unloading)7个阶段。其中准备、验证、解析3个部分统称为连接（Linking）。如图所示。

这里写图片描述加载、验证、准备、初始化和卸载这5个阶段的顺序是确定的，类的加载过程必须按照这种顺序按部就班地开始，而解析阶段则不一定：它在某些情况下可以.]]></description><category></category></item><item><title><![CDATA[死锁的产生原因和条件]]></title><link>https://blog.youkuaiyun.com/GGGGGSole/article/details/108324790</link><guid>https://blog.youkuaiyun.com/GGGGGSole/article/details/108324790</guid><author>GGGGGSole</author><pubDate>Mon, 31 Aug 2020 16:55:56 +0800</pubDate><description><![CDATA[产生死锁的原因主要是：
（1） 因为系统资源不足。
（2） 进程运行推进的顺序不合适。
（3） 资源分配不当等。
如果系统资源充足，进程的资源请求都能够得到满足，死锁出现的可能性就很低，否则就会因争夺有限的资源而陷入死锁。其次，进程运行推进顺序与速度不同，也可能产生死锁。
产生死锁的四个必要条件：
（1） 互斥条件：一个资源每次只能被一个进程使用。
（2） 请求与保持条件：一个进程因请求资源而阻塞时，对已获得的资源保持不放。
（3） 不剥夺条件:进程已获得的资源，在末使用完之前，不能强行剥夺。
（4） 循环]]></description><category></category></item><item><title><![CDATA[DBS中用户类型]]></title><link>https://blog.youkuaiyun.com/GGGGGSole/article/details/108265804</link><guid>https://blog.youkuaiyun.com/GGGGGSole/article/details/108265804</guid><author>GGGGGSole</author><pubDate>Sat, 29 Aug 2020 17:11:46 +0800</pubDate><description><![CDATA[DBS中用户类型
数据库管理员（DBA）：从事管理和维护数据库管理系统(DBMS)的相关工作人员的统称，主要负责业务数据库从设计、测试到部署交付的全生命周期管理。
数据库管理员的职责：
1、决定数据库中的信息内容和结构
2、决定数据库的存储结构和存取策略
3、定义数据的安全性要求和完整性约束条件
4、监控数据库的使用和运行
5、数据库的改进和重组、重构
数据库设计人员（一般不负责安全授权）
数据库设计人员负责数据库中数据的确定，数据库各级模式的设计。数据库设计人员必须参加用户需求调查和系统分析，然后进行数据]]></description><category></category></item><item><title><![CDATA[关于多态中调用子类特有方法]]></title><link>https://blog.youkuaiyun.com/GGGGGSole/article/details/108296881</link><guid>https://blog.youkuaiyun.com/GGGGGSole/article/details/108296881</guid><author>GGGGGSole</author><pubDate>Sat, 29 Aug 2020 17:11:00 +0800</pubDate><description><![CDATA[关于多态种调用子类特有方法
当使用多态方式调用方法时，首先检查父类中是否有该方法，如果有，再去调用子类的同名方法；如果没有，，只能向下转型
import javax.print.attribute.standard.RequestingUserName;
import java.util.Scanner;
public class testfather {
	public static void main(String[] args)
	{
		Animal a = new fish(); //父类对象被赋]]></description><category></category></item><item><title><![CDATA[关于Servlet报错：405 HTTP method GET is not supported by this URL问题解决方法]]></title><link>https://blog.youkuaiyun.com/GGGGGSole/article/details/108187347</link><guid>https://blog.youkuaiyun.com/GGGGGSole/article/details/108187347</guid><author>GGGGGSole</author><pubDate>Sun, 23 Aug 2020 19:52:21 +0800</pubDate><description><![CDATA[关于Servlet报错：405 HTTP method GET is not supported by this URL问题解决方法
在编写一个项目的某个Servlet时候，在运行时候，报出了错误 405 HTTP method GET is not supported by this URL（无法加载src中的类文件）
问题产生原因：
 1，继承自HttpServlet的Servlet没有重写对于请求和响应的处理方法：doGet或doPost等方法；默认调用父类的doGet或doPost等方法；

2，父]]></description><category></category></item><item><title><![CDATA[最近所学的提纲(3)(1)]]></title><link>https://blog.youkuaiyun.com/GGGGGSole/article/details/83895862</link><guid>https://blog.youkuaiyun.com/GGGGGSole/article/details/83895862</guid><author>GGGGGSole</author><pubDate>Fri, 09 Nov 2018 12:23:54 +0800</pubDate><description><![CDATA[探索纹理特征在预测STS癌肺转移中的潜力的研究，以及首个探索关节fdgpet和MRI纹理特征在评估任何类型癌症生物学特性方面的潜力的研究



图像的纹理可以作为不同强度(即灰度)像素的空间排列来全局化




有51名经组织学正式为原发性STS的患者参加实验，排除出现转移性或复发性的STS患者：

32个未发生肺转移的患者
19个已经发生肺转移的患者

排除未转移患者中随访时间小于十二个月的
...]]></description><category></category></item></channel></rss>