object

设计模式

守給你的承諾、 提交于 2020-01-29 19:37:09
思考:有一种需求,希望一个类有且只能有一个对象,这样保证对象的完整性,请问该如何实现呢? 引入:我们将这种一个类最多只能一个对象称为单例,在操作系统中这种方式需求很多,如任务管理器,而通过代码实现这中单例的设计思路我们称为单例模式 单例模式 定义:单例模式singleeton,是一种类的设计只会最多产生一个对象的设计思想 <?php class singglelon{ //设置属性来保存对象 private static $object=null; //构造方法系优化 不允许在外部实例化 private function __construct(){ echo __METHOD__; } public static function getinfo(){ // 判断对象 instanceof 是判断一个对象是否属于这个类的 或者子类 // 当前保存的object 不是singglelon对象 if(!self::$object instanceof self){ // 产生对象 self::$object=new self; } // 返回对象 return self::$object; } } $s1=singglelon::getinfo(); //返回同一个对象 var_dump($s1); $s2=singglelon::getinfo(); //返回的是同一个对象 var

Destructuring and rename property

人走茶凉 提交于 2020-01-29 14:10:38
问题 const a = { b: { c: 'Hi!' } }; const { b: { c } } = a; Is it possible rename b in this case? I want get c and also rename b . 回答1: You could destructure with a renaming and take the same property for destructuring. const a = { b: { c: 'Hi!' } }; const { b: formerB, b: { c } } = a; console.log(formerB) console.log(c); 回答2: You can destructure the same property multiple times, onto different targets: const { b: {c}, b: d } = a; This assigns a.b.c to c and a.b to d . 来源: https://stackoverflow

Destructuring and rename property

时光总嘲笑我的痴心妄想 提交于 2020-01-29 14:09:56
问题 const a = { b: { c: 'Hi!' } }; const { b: { c } } = a; Is it possible rename b in this case? I want get c and also rename b . 回答1: You could destructure with a renaming and take the same property for destructuring. const a = { b: { c: 'Hi!' } }; const { b: formerB, b: { c } } = a; console.log(formerB) console.log(c); 回答2: You can destructure the same property multiple times, onto different targets: const { b: {c}, b: d } = a; This assigns a.b.c to c and a.b to d . 来源: https://stackoverflow

Destructuring and rename property

陌路散爱 提交于 2020-01-29 14:08:36
问题 const a = { b: { c: 'Hi!' } }; const { b: { c } } = a; Is it possible rename b in this case? I want get c and also rename b . 回答1: You could destructure with a renaming and take the same property for destructuring. const a = { b: { c: 'Hi!' } }; const { b: formerB, b: { c } } = a; console.log(formerB) console.log(c); 回答2: You can destructure the same property multiple times, onto different targets: const { b: {c}, b: d } = a; This assigns a.b.c to c and a.b to d . 来源: https://stackoverflow

性能监视器- Performance Monitor

时间秒杀一切 提交于 2020-01-29 13:53:27
转载: http://kms.lenovots.com/kb/article.php?id=7045 Windows 性能监视器的基本指标(CPU,内存,硬盘参数) 作为一个系统工程师来说,要看懂监控的数据至关重要,关系着优化和分析出现的问题,因此,今天给出Windows 性能监视器的一些基本指标(CPU,内存,硬盘参数),希望对大家将来优化和分析问题提供帮忙。 Windows -Processor 指标名称 指标描述 指标范围 指标单位 CPU利用率 (% Processor Time) % Processor Time指处理器执行非闲置线程时间的百分比。这个计数器设计成用来作为处理器活动的主要指示器。它通过在每个时间间隔中衡量处理器用于执行闲置处理线程的时间,并且用100%减去该值得出。可将其视为范例间隔用于做有用工作的百分比。 根据应用系统情况,在80%±5%范围内波动为宜。过低,则服务器CPU利用率不高;过高,则CPU可能成为系统的处理瓶颈。 % 中断率 (Interrupts/sec.) 每秒钟设备中断处理器的次数。在完成一个任务或需要注意时,装置会发出中断讯号给处理器。可以产生中断的装置包括系统定时器、鼠标、数据通讯联机、网络卡以及其它的外部装置。在中断过程中,一般的执行绪执行将被暂停,而且一个中断可以使处理器切换到另一个具有较高优先等级的执行绪

java反射机制

心已入冬 提交于 2020-01-29 13:28:47
反射在java中占据很重要的地位,spring的IOC/DI背后依靠的就是java的反射机制。不仅spring使用反射机制,Hibernate的ORM框架也是反射机制实现的,AOP动态代理也大量使用了反射技术,在不知不觉中,java的反射机制其实已经被大量应用在我们的程序中。 java反射机制是在运行状态中,对于任意一个类,都能知道这个类的所有属性方法;对于任意一个对象都能调用它的任意一个方法;这种动态获取的信息以及动态调用对象的方法的功能成为java的反射机制。 反射的优点就是动态灵活,一切都是在运行时期根据具体情况(配置)决定创建哪种对象、调用哪个方法等。这种灵活性可以方便我们设计解耦,这也是Spring做得最好的事情之一,所以我们可以很方便的替换某些class文件而不需要重新编译相关类。事物都是两面的,反射当然也有缺点,对于编译期能确定的事情,编译器可以或多或少做些优化,而运行期就像解释执行一样,编译器一般没法进行优化,所以使用反射性能要打点折扣;另外反射破坏类的封装性,通过反射我们可以访问类的任何成员,包括private成员,这违反了面向对象设计原则。 java.lang.Class类:反射中最常出现的类,它跟其它JAVA类没什么两样只是名字恰巧叫Class,都是继承于Object类,其实它就是JAVA类的抽象,用来描述类的元数据,比如每个类都有类名、装载器、哈希等

How to select nth item inside the object

纵饮孤独 提交于 2020-01-29 08:10:33
问题 Say if you were unable to access a certain item inside an object through dot notation like objectName.objectItem i.e. it has random name al the time. Is there a way to alternatively access it like second item? how to get item2 from this object by only knowing that it is second item there?: something: { item1: "text", item2: "text", item3: "text:, ... } 回答1: Order of keys are not fixed in javascript object. You can try var secondKey = Object.keys(something)[1]; //fetched the key at second

Java12/集合

随声附和 提交于 2020-01-29 06:12:51
一 集合 1 Collection常用方法 boolean add(E e) :将e放入集合中 void clear(): 清空集合 boolean isEmpty(): 判断是否为空 boolean remove(Object e) :删除一个元素e int size() :返回集合中的元素个数 Object[] toArray() :返回一个装有所有集合元素的数组 2 Map常用方法 V get(Object k) :获取对应K值的value V getOrDefault(Object k,V defaultValue) :查找K值对应得value,没有则使用默认值替代 V put(k key,V value) :将指定得k-v放入Map中 boolean containsKey(Object key) :判断是否包含key boolean containsValue(Object value) :判断是否包含value Set<Map.Entry<K,V>> entrySet() : 将所有键值对返回 boolean isEmpty(): 判断是否为空 int size() :返回键值对的数量 3 List(线性表) boolean add(E e) :尾插e void add(int index, E element) : 将e插入到index位置 boolean

Java集合框架(java.util包)

不想你离开。 提交于 2020-01-29 05:53:31
集合的概念:   是一种工具类,可以存储任意数量、任意类型的对象(所以后面需要用到泛型,以约束集合中元素的类型) 集合的作用:   1、在类的内部对属性进行组织   2、方便快速定位属性位置   3、某些集合接口,提供了一系列排列有序的元素,可以在序列中快速插入或删除   4、某些集合接口,提供了映射关系,可以通过关键字(key)快速查找到对应的唯一对象,而这个key可以是任意类型 集合与数组的差别:   1、数组长度固定,集合长度可变   2、数组只能通过下标访问具体元素,集合则可通过任意类型查找所映射的具体对象 Java集合框架体系结构:根接口——子接口——实现类(并未全部列出) List接口及其常用实现类——ArrayList   1、List是元素有序并且可以重复的集合,称为序列   2、List可以精确插入或删除某个位置的元素   3、ArrayList——数组序列,底层是由数组实现的 ArrayList实现的方法详见Java API文档:http://tool.oschina.net/apidocs/apidoc?api=jdk-zh 注意:对象存入集合都会变成Object类型,取出时需要进行类型转换 泛型:   集合中的元素可以是任意类型的对象,如果把某个对象放入集合,则会忽略他的类型,当作Object处理   1、泛型集合中

Day01-Object类、常用API

ε祈祈猫儿з 提交于 2020-01-29 05:15:12
第一章 Object类 1.1 概述 java.lang.Object 类是Java语言中的根类,即所有类的父类。它中描述的所有方法子类都可以使用。在对象实例化的时候,最终找的父类就是Object。 如果一个类没有特别指定父类, 那么默认则继承自Object类。例如: public class MyClass /*extends Object*/ { // ... } 根据JDK源代码及Object类的API文档,Object类当中包含的方法有11个。今天我们主要学习其中的2个: public String toString() :返回该对象的字符串表示。 public boolean equals(Object obj) :指示其他某个对象是否与此对象 相等 。 1.2 toString方法 方法摘要 public String toString() :返回该对象的字符串表示。 toString方法返回该对象的字符串表示,其实该字符串内容就是对象的类型+@+内存地址值。 由于toString方法返回的结果是内存地址,而在开发中,经常需要按照对象的属性得到相应的字符串表现形式,因此也需要重写它。 覆盖重写 如果不希望使用toString方法的默认行为,则可以对它进行覆盖重写。例如自定义的Person类: public class Person { private String