object

Python学习笔记(五) 类与对象

て烟熏妆下的殇ゞ 提交于 2020-03-26 07:04:50
这篇文章介绍有关 Python 类中一些常被大家忽略的知识点,帮助大家更全面的掌握 Python 中类的使用技巧 1、内置方法 (1) issubclass(class, classinfo) 检查 class 是否为 classinfo 的子类,classinfo 可以是一个类也可以是由多个类组成元组 注意 class 被认为是 class 的子类,也被认为是 object 的子类,若传入的类型与期望不符则抛出 TypeError 异常 (2) isinstance(object, classinfo) 检查 object 是否为 classinfo 的实例化对象,classinfo 可以是一个类也可以是由多个类组成元组 注意若 object 不是对象则返回 False,若 classinfo 既不是类也不是由多个类组成元组则抛出 TypeError 异常 (3) == 和 is == 比较两对象是否 相等 is 比较两对象是否 相同 >>> a = [1,2,3] >>> b = [1,2,3] >>> a == b # 比较两个对象的值是否相等 True >>> a is b # 比较两个对象的 id 是否相等 False (4) hasattr , getattr , setattr 和 delattr hasattr(object, name) :检查 object

Spring的两种动态代理:Jdk和Cglib 的区别和实现

让人想犯罪 __ 提交于 2020-03-25 20:43:46
https://www.cnblogs.com/leifei/p/8263448.html 一、原理区别: java动态代理是利用反射机制生成一个实现代理接口的匿名类,在调用具体方法前调用InvokeHandler来处理。 而cglib动态代理是利用asm开源包,对代理对象类的class文件加载进来,通过修改其字节码生成子类来处理。 1、如果目标对象实现了接口,默认情况下会采用JDK的动态代理实现AOP 2、如果目标对象实现了接口,可以强制使用CGLIB实现AOP 3、如果目标对象没有实现了接口,必须采用CGLIB库,spring会自动在JDK动态代理和CGLIB之间转换 如何强制使用CGLIB实现AOP? (1)添加CGLIB库,SPRING_HOME/cglib/*.jar (2)在spring配置文件中加入<aop:aspectj-autoproxy proxy-target-class="true"/> JDK动态代理和CGLIB字节码生成的区别? (1)JDK动态代理只能对实现了接口的类生成代理,而不能针对类 (2)CGLIB是针对类实现代理,主要是对指定的类生成一个子类,覆盖其中的方法 因为是继承,所以该类或方法最好不要声明成final 二、代码实现 用户管理接口 package com.lf.shejimoshi.proxy.entity; //用户管理接口

How to fetching data from react.js before render compontents and Cannot read property 'includes' of undefined?

烂漫一生 提交于 2020-03-25 18:14:49
问题 I have got two components, child components and parent components. Here is data format is coming from database : {permissible_objects :["group", "topGroup"],all_permissions: ["can_view","can_create"]} I am going to pass data from parent component to child components . when I pass data parent to child compontent I got an error that is TypeError: Cannot read property 'includes' of undefined However, I saw data in the console.log(). Where is the problem of typeError can not undefined ? If I

Java设计模式之代理设计模式

核能气质少年 提交于 2020-03-25 08:44:48
3 月,跳不动了?>>> 概念 举例:我要灭了传说中的山口组,我通知青龙帮,然后青龙帮 帮我灭了,最终达到了我要灭山口组的目的,我亲自灭和别人帮我灭结果都一样的,所以,青龙帮就相当于代替了我,这种方式叫代理模式。 2、技术点(反射) 了解下反射,可能只讲代理设计模式的话可能你不需要掌握,但是代理设计模式的应用场景会讲到,还是希望你能够了解下反射知识点。 3、代理设计模式 3.1 静态代理 1、概念:目标对象、和代理对象统一实现一样的接口 缺点,代理类太多的情况,一旦增加接口方法,那么目标对象与代理对象都要重新修改和维护。 2、代码讲解 类:接口IUserDao、实现接口的两个类,目标类和代理类 GirlUser和ProxyGirl,最后main函数执行(java9版本以上) 代码如下 public interface IUserDao { public static final String girlName ="七七"; void miss(String boyName); static void love(){ System.out.println("恋爱"); }; default void noLove(){ System.out.println("高冷,不谈恋爱"); } private static void securt(){ System.out.println(

Jquery插件制作经验分享 之 json字符串转换插件(附:jQuery.Json.js)

允我心安 提交于 2020-03-25 07:43:23
前几天在做ecshop开发商城时,因其原使用的js框架和方法,与(我想使用的)Jquery框架有冲突,但(原js文件)其中的Ajax处理的 json对象转换的方法又是不可缺少的方法,原来的不能用,只能自己想办法写或找了,为了省事,就先网上搜索看看 ——也感觉有个东西有必要随便了解和学习下:Jquery插件的制作;对于Jquery插件有些了解,却仅仅局限于使用和概念上,对于其制作,只有个大概 的'自我'认识,但却不知道其规范制作方法。[学就学规范的,上网一查 Jquery插件制作方法的文章和帖子 还挺不少。之前还感觉挺神秘或陌生的东西,一看其中的一两篇文章,发现它: 其实很简单,规范也很清晰 易用]现将所了解到的写出来,希望对“Jquery插件制作”有兴趣的朋友 有些帮助! jQuery为开发插件提拱了两个方法 ,分别是: jQuery.extend(object); 为扩展jQuery类本身.为类添加新的方法。 jQuery.fn.extend(object);给jQuery对象添加方法。 虽然 javascript 没有明确的类的概念,但是用类来理解它,会更方便。 jQuery便是一个封装得非常好的类,比如我们用 语句 $("#btn1") 会生成一个 jQuery类的实例。 jQuery.extend(object);  为jQuery类添加添加类方法,可以理解为添加静态方法

面向对象特征:继承、多态

情到浓时终转凉″ 提交于 2020-03-25 04:32:34
继承 ·为什么要有继承?   多个 类中存在相同的属性和行为时,将这些内容抽取到单独一个类中,那么多个类无需再定义这些属性和行为,只要继承那个类即可。 ·此处的多个类称为子类,单独的这个类称为父类(基类或超类)。可以理解为:子类 is a 父类 ·类继承语法规则: class Subclass extends Superclass{} 作用:   继承的出现提高了代码的复用性   继承的出现让类与类之间产生了关系,提供了多态的前提   不要仅为了获取其他类中某个功能而去继承 ·子类继承了父类,就继承了父类的方法和属性 在子类中,可以使用父类中定义的方法和属性,也可以创建新的数据和方法。 ·在Java中,继承的关键字用的是“extends”,即子类不是父类的子集,而是对父类的“扩展”。 关于继承的规则:   子类不能直接访问父类中私有的(private)的成员变量和方法。 ·Java只支持单继承,不允许多重继承   一个子类只能有一个父类   一个父类可以派生出多个子类 方法的重写(override) ·定义:在子类中可以根据需要对从父类中继承来的方法进行改造,也称方法的重置、覆盖。在程序执行时,子类的方法将覆盖父类的方法。 ·要求   重写方法必须和被重写方法具有相同的 方法名称、参数列表和返回值类型 。   重写方法不能使用比被重写方法更严格的访问权限。  

Object.entries() && Object.fromEntries()

半世苍凉 提交于 2020-03-24 20:41:54
Object.entries()方法返回一个给定对象自身可枚举属性的键值对数组,其排列与使用 for...in 循环遍历该对象时返回的顺序一致(区别在于 for-in 循环还会枚举原型链中的属性)。  const obj = { foo: 'bar', baz: 42 }; console.log(Object.entries(obj)); // [ ['foo', 'bar'], ['baz', 42] ] // array like object const obj = { 0: 'a', 1: 'b', 2: 'c' }; console.log(Object.entries(obj)); // [ ['0', 'a'], ['1', 'b'], ['2', 'c'] ] // array like object with random key ordering const anObj = { 100: 'a', 2: 'b', 7: 'c' }; console.log(Object.entries(anObj)); // [ ['2', 'b'], ['7', 'c'], ['100', 'a'] ] Object.fromEntries() 方法把键值对列表转换为一个对象。 const map = new Map([ ['foo', 'bar'], ['baz', 42

Unsafe 相关整理

假装没事ソ 提交于 2020-03-24 18:21:08
1. Unsafe 类 Java 不能直接访问操作系统底层,而是通过本地方法来访问。Unsafe 类提供了硬件级别的原子操作。 Unsafe 类在 sun.misc 包下,不属于 Java 标准。很多 Java 的基础类库,包括一些被广泛使用的高性能开发库都是基于 Unsafe 类开发,比如 Netty、Hadoop、Kafka 等。 Unsafe 是用于在实质上扩展 Java 语言表达能力、便于在更高层(Java 层)代码里实现原本要在更低层(C 层)实现的核心库功能用的。 这些功能包括裸内存的申请/释放/访问,低层硬件的 atomic/volatile 支持,创建未初始化对象等。 它原本的设计就只应该被标准库使用,因此不建议在生产环境中使用。 1.1 获取实例 Unsafe 对象不能直接通过 new Unsafe() 或调用 Unsafe.getUnsafe() 获取。 Unsafe 被设计成单例模式,构造方法私有。 getUnsafe 被设计成只能从引导类加载器(bootstrap class loader)加载。 private Unsafe() { } public static Unsafe getUnsafe() { Class var0 = Reflection.getCallerClass(2); if (var0.getClassLoader() != null

收藏的一些javascript片段

a 夏天 提交于 2020-03-24 09:38:21
学习js也很有一段时间,收集了一些js的片段。特地整理排版了一下,以一个js初学者的视界来分析注释了这些代码段,暂且不去讨论它 的性能和优化问题,相信会对一些初学者有用。第一次发文,定许多纰漏和不足的地方,希望可以交流和学习。 1 javascript动态加载--2 获取字符串的字节长度--3 DOM加载完即执行(有别于onload-页面的一切都加载完后执行)--4获取CSS属性--5 数组检测--6 继承--7 简单事件绑定--8 浏览器判断--9 阻止事件的默认行为--10 数组合并去重--11 将arguments转化为数组--12 数组去重--13 根据生日算年龄--14 获取某个节点下类名为classname的所有元素--15 object.crate的用法--16 获取事件的目标对象--17 获取事件发生时按键状态--18 dom操作--19 阻止事件冒泡--20 元素位置计算--21 元素显示效果--22 闭包的用例--23 实现字符串长度截取--24 获取域名的主机--26 清楚空格--27 替换全部--28 html文档中转义和解码字符--29 判断是否为数字类型--30 设置cookie--31 获取指定cookie--32 加入收藏夹--33 判断IE6--34 跨域解决方法--35 加载样式文件--36 今天是星期几--38 返回按id检索的元素对象--39

windows phone之依赖属性(DependencyProperty)

余生长醉 提交于 2020-03-24 09:36:21
Windows Presentation Foundation (WPF) 提供了一组服务,这些服务可用于扩展公共语言运行时 (CLR) 属性的功能,这些服务通常统称为 WPF 属性系统。由 WPF 属性系统支持的属性称为依赖项属性。 这段是MSDN上对依赖属性(DependencyProperty)的描述。主要介绍了两个方面,WPF中提供了可用于扩展CLR属性的服务;被这个服务支持的属性称为依赖属性。 单看描述,云里雾里的,了解一个知识,首先要知道它产生的背景和为什么要有它,那么WPF引入依赖属性是为了解决什么问题呢? 从属性说起 属性是我们很熟悉的,封装类的字段,表示类的状态,编译后被转化为get_,set_方法,可以被类或结构等使用。 一个常见的属性如下: public class NormalObject { private string _unUsedField; private string _name; public string Name { get { return _name; } set { _name = value; } } }    在面向对象的世界里,属性大量存在,比如Button,就大约定义了70-80个属性来描述其状态。那么属性的不足又在哪里呢?   当然,所谓的不足,要针对具体环境来说。拿Button来讲,它的继承树是 Button-