一、封装 1.作用:有效保护对象的状态(即属性值)。 2.外部调用:提供属性对应的get/set方法。 3.优点:避免对数据直接操作导致的错误和安全问题;保护数据的完整性,提升程序的可维护性。 二、继承 1.作用:提取重复代码到统一的类中,通过extends关键字实现继承关系。 2.优点:消除代码重 ...
分类:
编程语言 时间:
2017-07-31 13:26:26
阅读次数:
168
继承关键字 继承可以使用 extends 和 implements 这两个关键字来实现继承,而且所有的类都是继承于 java.lang.Object,当一个类没有继承的两个关键字,则默认继承object(这个类在 java.lang 包中,所以不需要 import)祖先类。 extends关键字 在 ...
分类:
编程语言 时间:
2017-07-30 23:31:40
阅读次数:
155
原创文章,转载请注明出处:http://www.cnblogs.com/hongfei/archive/2012/07/07/2580776.html 简单工厂模式: ①抽象基类:类中定义抽象一些方法,用以在子类中实现 ②继承自抽象基类的子类:实现基类中的抽象方法 ③工厂类:用以实例化对象 看完文章... ...
分类:
Web程序 时间:
2017-07-28 14:43:27
阅读次数:
256
虽然在ES6中有了继承,使用extends关键字就能实现。本篇讲的不是这种,而是ES6之前的几种实现继承的方式。 (一)原型链 ECMAScript中将原型链作为实现继承的主要方法。其基本思想是利用原型让一个引用类型继承另一个引用类型的属性和方法。(不理解原型链的童鞋们可以翻阅一下我之前的博客,里面 ...
分类:
编程语言 时间:
2017-07-26 20:19:57
阅读次数:
166
/** * js实现继承: * 1.基于原型链的方式 * 2.基于伪造的方式 * 3.基于组合的方式 */ 一、基于原型链的方式 function Parent(){ this.pv = "parent"; } Parent.prototype.showParentValue = function( ...
分类:
Web程序 时间:
2017-07-25 10:16:32
阅读次数:
142
全局变量和单例模式的区别: 1. 全局变量是对一个对象的静态引用,不能保证只有一个实例; 2. 过多全局变量造成代码难读,命名空间污染; 3. 全局变量不能实现继承; 饿汉模式:在类加载时就实例化类的一个对象 懒汉模式:在需要的时候再创建对象。 ...
分类:
其他好文 时间:
2017-07-24 01:31:52
阅读次数:
129
ECMAscript只支持实现继承,主要是依靠原型链来实现的。 JavaScript实现继承的方式: 类式继承 构造函数继承 组合继承 寄生组合式继承 类式继承 构造函数继承 组合继承 寄生组合式继承 1.类式继承 原理说明:在实例化一个类时,新创建的对象复制了父类的构造函数内的属性与方法并且将原型 ...
分类:
编程语言 时间:
2017-07-23 12:43:45
阅读次数:
318
Fragment是界面和逻辑的结合,对于实现继承Fragment的类,一般可以分一下几块: 1、方法块: 1)重写方法,实现一些父类、接口的方法,重要的有 Fragment的生命周期的回调函数。Fragment需要和Activity关联才能使用,所以可能需要获得对应的Activity对象;Fragm ...
分类:
其他好文 时间:
2017-07-22 19:46:15
阅读次数:
199
JS实现继承的几种方式 前言 JS作为面向对象的弱类型语言,继承也是其非常强大的特性之一。那么如何在JS中实现继承呢?让我们拭目以待。 JS继承的实现方式 既然要实现继承,那么首先我们得有一个父类,代码如下: // 定义一个动物类 function Animal (name) { // 属性 thi ...
分类:
Web程序 时间:
2017-07-21 13:22:51
阅读次数:
197
封装: 把对象属性隐藏在构造函数内部,不让外部程序(实例对象)直接访问,而是通过构造函数提供的方法来实现属性的访问和操作! 继承: 1、子对象复制父对象的属性和方法 2、构造函数相关联实现继承 一、子对象复制父对象的属性和方法 1、浅拷贝,把父对象的属性和方法拷贝到子对象中 使用浅拷贝,如果改变子对 ...
分类:
Web程序 时间:
2017-07-20 17:22:46
阅读次数:
278