多态 对象有多种状态.作用:提高程序的可扩展性. 一个对象具备多种状态的能力,这个程序是可扩展的. 前提: 必须有层级关系 继承 实现 继承:子类和父类的关系,一个父类可以有多个子类,说明父类的引用有多种形态 作用类型: 形参.返回值.创建对象 可以将子类的方法重载,也可以直接将方法的形式参数类型改成父类的对象,子类对象向上转型为父类的引用,可以把它理解为类型隐式转换,由低到高. 在多态情况下,无法直接获得子类独有的成员,需要进行强制转换,向下转换为子类的类型,由高到低: PM pm=(PM)e…
面向对象的三大特征: 1.封装   (将一类属性封装起来,并提供set()和get()方法给其他对象设置和获取值.或者是将一个运算方法封装起来,其他对象需要此种做运算时,给此对象调用) 2.继承   (继承关系通过extends关键字体现) 3.多态   (父类的引用指向子类的对象,或者接口的引用类型变量指向接口实现类的对象) 1.多态的含义 父类的引用指向子类的对象,或者接口的引用类型变量指向接口实现类的对象 2.多态的应用 1.多态应用于形式参数的时候,可以接收更多类型的数据.    2.多…
/** * 抽象类:很多具有相同特征和行为的类可以抽象为一个抽象类 * 1.抽象类可以没有抽象方法,有抽象方法的类必须是抽象类 * 2.非抽象类继承抽象类必须实现抽象方法[可以是空实现] * 3.抽象类可以有方法和属性 * 4.抽象类不能被实例化 * 5.抽象类不能声明为final * 6.抽象类可以有构造方法[不代表实例化对象] */ public class Main { public static void main(String[] args) { Goddess m1 = new Go…
Object类是所有类的父类: 我们上下代码: package com.learn.chap03.sec14; public class A { // 上面类A继承了Object类,因此又可这样定义: public class A extends Object{ /** * object类是所有类的父类 */ public A(){ super(); } } 我们可以通过多态,利用重写Object类常用的toString()和equals(Object obj)方法,来完成我们自己的逻辑. pa…
http://lavasoft.blog.51cto.com/62575/79864/    深入Java关键字instanceof 2008-06-02 07:50:43 标签:Java 关键字 休闲 职场 instanceof 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://lavasoft.blog.51cto.com/62575/79864 深入Java关键字instanceof   instanceof关键字用于判断…
多态调用的三种格式 * A:多态的定义格式: * 就是父类的引用变量指向子类对象 父类类型 变量名 = new 子类类型(); 变量名.方法名(); * B: 普通类多态定义的格式 父类 变量名 = new 子类(); * C: 抽象类多态定义格式 抽象类 变量名 = new 抽象类子类(); ; * D: 接口多态定义的格式 接口 变量名 = new 接口实现类(); 成员方法:编译看左边 运行看右边(父类有子类没有 调用父类 父类 有 子类有 调子类) f.show();成员变量:编译运行都…
一.main函数详解 1.public:公共的.权限是最大的,在任何情况都可以访问  原因:为了保证jvm在任何情况下都可以访问到main法2.static:静态,静态可以让jvm调用更方便,不需要用对象调用3.void:没有返回值.因为返回的数据是给jvm,而jvm使用这个数据是没有意义的,所有就不要了4.main:函数名, 注意:main方法并不是关键字,只不过是jvm唯一识别的一个特殊函数名5.arguments(args):担心某些程序启动时需要参数. class Demo1 { pub…
一.多态 分类:方法的重载与重写:对象的多态性 对象的多态性:向上转型:将子类实例转为父类实例   格式:父类 父类对象=子类实例;是自动转换 向下转型:将父类实例转为子类实例   格式:子类 子类对象=(子类)父类实例;是强制转换 小结:方法的重载与重写就是方法多态性表现:多个子类就是父类中的多种形态:父类引用可以指向子类对象,自动转换:子类对象指向父类引用需要强制转换:在实际开发中尽量使用父类引用(更利于扩展) 父类设计法则:父类通常情况下都设计为抽象类或接口,其中优先考虑接口,如接口不能满…
instanceof 关键字 instanceof关键字的作用:判断一个对象是否属于指定的类别. instanceof关键字的使用前提:判断的对象与指定的类别必须要存在继承或者实现的关系.关于实现以后我会讲到,这里只需要知道判断的独享与指定的类别必须要存在继承 instanceof关键字的使用格式: 对象(或者对象的引用变量)instanceof 类(或者接口) instanceof关键字的作用: 目前没用.但是我们以后学习 到了多态之后就非常有用. 一般我们做强制类型转换之前都会使用该关键字先…
1. 你通常怎样用多态? 假设我有一个类,里面有一个 PrintStatus 方法,用于打印实例的当前状态,我希望该类的派生类都带有一个 PrintStatus 方法,并且这些方法都用于打印其实例的当前状态.那么我会这样表达我的愿望: // Code #01 class Base{ public virtual void PrintStatus() { Console.WriteLine("public virtual void PrintStatus() in Base"); }}…