接口.继承与多态 1.继承和多态是面向对象开发语言中的重要一个环节,使用得当,可以将整个程序的架构变得非常有弹性,减少代码冗余: 2.继承:复用定义好的类: 3.多态:可以动态调整对象的调用,降低对象的依存关系: 4.接口:Java中类可以实现多个接口,被用来建立类与类之间的标准: ***接口***1.接口的目的:Java语言只支持单继承,即一个类只能有一个父类.实际应用中,经常需要多继承解决问题,为解决该问题,提供接口实现类的多重继承:2.接口定义:与类的定义类似,接口的声明和接口体:[修饰符…
import java.lang.reflect.Field; import java.util.ArrayList; import java.util.Collections; import java.util.List; /** * @title 接口继承多态的经典范例 * @author 作者:sunshine * @date 创建时间:2016年7月6日 下午5:27:39 */ //使用Comparable接口自定义排序 class Employee implements Compar…
***多态***1.多态性:通常使用方法的重载(Overloading)和重写(Overriding)实现类的多态:2.重写之所以具有多态性,是因为父类的方法在子类中被重写,方法名相同,实现功能不同.3.方法重载:是指在一个类中出现多个方法名相同,但参数或参数类型不同的方法:4.java执行重载方法时,根据参数个数和类型区执行哪一个方法:5.重载的方法之前不一定必须有联系,但为了提高程序的可读性,一般只重载功能相似的方法:6.方法重载时,方法返回值类型不能作为区分方法的标志: 多态: /** *…
***类的继承***1.继承的实现extends2.[修饰符] class 子类名 extends 父类名{}3.修饰符一般为:public abstract final4.重写是指父子类之间的关系,子类的方法名与父类的方法名相,那么子类就不能继承父类的方法,称子类的方法重写了父类的方法.5.重写体现了子类补充或者改变父类方法的能力.通过重写,可以使一个方法在不同的子类中表现出不同的行为:6.重写民可以称为覆盖: ***使用super关键字***1.子类可以继承父类的非私有成员变量和成员方法(非…
一.抽象类1.所谓抽象类,只声明方法的存在而不去实现它的类:2.抽象类不能被实例化,即不能实现其对象:3.abstract class 类名{ 类体 }4.包含一个或多个抽象方法的类必须声明成抽象类:5.abstract <方法返回值类型> 方法名(参数列表) 二.内部类1.如果在一个类中再定义一个类,就将在类中定义的那个类称为内部类:2.内部类分为成员内部类,局部内部类以及匿名内部类:3.成员内部类: a.可以在内部类中直接存取其所在类的私有成员变量: b.外部类不可以直接访问内部类成员变量…
接口:interface(关键字) public interface USB {} 1. 接口中都是抽象方法,方法前面的可见度(public.private)和抽象关键字(abstract)可以不写. 抽象方法必须要被实现. 2.接口不能创建对象,只能被类来实现 3.接口作为类型的变量,可以引用实现了该接口的对象 接口的好处: 一个类可以实现多个接口,可以隐藏实现. 弥补继承的不足: 1. 继承会导致继承树太深, 从而降低方法调用的效率 2. 不够灵活, 父类的方法一定会被子类继承 接口的实现:…
jQuery源代码学习笔记_工具函数_noop/error/now/trim jquery提供了一系列的工具函数,用于支持其运行,今天主要分析noop/error/now/trim这4个函数: 1.noop //返回一个空函数 function noop() { } noop这个函数的功能就是什么也不做,方便在全局使用一个空函数,减少内存开销. 2.error function error(msg) { throw new Error(msg); } 用于统一抛出异常,可以减少代码中使用thro…
上一篇说了Java面向对象中的继承关系,在继承中说到:调用对象中的成员变量时,根据引用类型来决定调用谁,而调用成员方法时由于多态的存在,具体调用谁的方法需要根据new出来的对象决定,这篇主要描述的是Java中的多态以及利用多态形成的接口 多态 当时在学习C++时,要使用多态需要定义函数为virtual,也就是虚函数.类中存在虚函数时,对象会有一个虚函数表的头指针,虚函数表会存储虚函数的地址,在使用父类的指针或者引用来调用方法时会根据虚函数表中的函数地址来调用函数,会形成多态. 当时学习C++时对…
instanceof 对象名 instanceof 类名 该对象是否属于该类 Animal animal = new Dog(); if(animal instanceof Dog){ Dog d = (Dog)animal; } 多态 Animal animal = new Dog(); animal.sleep();//先调用子方法,如果子方法未重写(复写),则执行父类中的该方法 抽象类 子类继承父类,父类是个抽象类,子类必须实现父类中的抽象方法,如果不想实现,可以将子类定义为抽象类,让下一…
在Java中 除了 Map以外的集合的根接口都是Collection接口,而在Collection接口的子接口中,最重要的莫过于List和Set集合接口. 今天我们就来谈谈List集合接口与Set集合接口的差异性. 查看List集合接口的接口方法 查看Set集合接口的API 从两者的API中,以add和get为例来看, List中提供索引的方式来添加元素和获取元素,而Set并不提供.由此可见List集合可是达到精确的存储和获取,而Set只能一个一个的比较,显然效率和实用性是比不上List集合的…