浪人 浪人
4年前
深入不可变类 -- 谈谈Java String与包装类的底层实现
深入不可变类——谈谈String与包装类的底层实现一、走进不可变类不可变类是指在创建实例后该例变量不可以改变的类。比如String类和包装类。定义不可变类需要遵守:1.成员变量设置为priavte,final修饰2.提供带参构造器对成员变量进行初始化3.只提供getter,
Wesley13 Wesley13
3年前
JAVA获取所有接口的实现类或父类的所有子类
packagefind;importjava.io.File;importjava.io.IOException;importjava.net.URL;importjava.util.ArrayList;importjava.util.List;importfind.test.Intf;importfind.tes
Wesley13 Wesley13
3年前
Java面试基础篇——第八篇:抽象类与接口的区别
1.抽象类抽象类:如果一个类中包含有抽象方法,或这个类使用abstract关键字修饰,则称这个类是抽象类。抽象方法是什么呢?抽象方法就是指用abstract关键字修饰的方法。需要注意的是:抽象类不一定必须包含抽象方法,而如果一个类中有抽象方法,这个类必须是抽象类。packagecom.developlee.abstractI
Stella981 Stella981
3年前
Python进阶丨如何创建你的第一个Python元类?
摘要:通过本文,将深入讨论Python元类,其属性,如何以及何时在Python中使用元类。Python元类设置类的行为和规则。元类有助于修改类的实例,并且相当复杂,是Python编程的高级功能之一。通过本文,将深入讨论Python元类,其属性,如何以及何时在Python中使用元类。本文介绍以下概念:什么是Python元类?
Stella981 Stella981
3年前
JVM 类加载机制详解
一.类的生命周期           !(https://static.oschina.net/uploads/img/201803/29115109_9IwG.jpg)  分析:1)加载loading:查找和导入class文件    不一定非得要从一个Class文件获取,这里既可以从ZIP包中读取(比
Stella981 Stella981
3年前
Base64工具类
package com.locator.encryption;import java.io.ByteArrayInputStream;import java.io.ByteArrayOutputStream;import java.io.File;import java.io.FileInputStr
Wesley13 Wesley13
3年前
Java 类之间的关系
总述类和类之间的关系,耦合度从高到低:is。继承、实现has。组合、聚合、关联use。依赖。要求是:高内聚、低耦合。继承Person和Man之间是继承关系。!(https://oscimg.oschina.net/oscnet/7b9f06e3a37b7bc9c5c2fe14
Stella981 Stella981
3年前
31、最简单的mvc框架tiny,增加Ioc,jdbc工具类(1个类),连接池(1个类)
Ioc按照mvc,我们需要把tiny分成3层,其中视图(Renderer抽象类)和Action我们已经在前面实现了,这次我们用最少的代码实现Model。    model沿用Action的想法,用户自定义类,类名必须以Model结尾,同Action一样在初始化时放入Container容器内。model就是数据模型,我们这里充血模型,model
Easter79 Easter79
3年前
Swift专题讲解十四——继承
Swift专题讲解十四——继承一、引言      Swift中,一个类可以从另一个类继承方法、属性、下标及其他特性。当一个类继承于另一个类时,这个类被称为子类,所继承的类被称为父类。在Swift中,继承是类区别于其他类型的主要特征。子类除了可以调用父类的属性,下标,方法外,其也可以对父类的属性,下标,方法进
Stella981 Stella981
3年前
Reflections框架,类扫描工具
Reflections是一个能提供一站式服务的对象。巧用Reflections库实现包扫描(扫描某个包中某个接口实现、注解等)它扫描工程的classpath,为元数据建索引,允许你运行时查询元数据信息。此外,他还能为你项目的lib库中所有的jar包保存和收集元数据。