黑马程序员技术交流社区

标题: 初学的小问题! [打印本页]

作者: 十甫寸    时间: 2013-7-29 21:56
标题: 初学的小问题!
本帖最后由 杨兴庭 于 2013-7-30 22:45 编辑

什么是多态,怎么用啊?
implement是什么指令啊?
作者: 王银龙    时间: 2013-7-29 22:06
java允许把一个子类对象直接赋给一个父类引用变量,无需任何类型转换,或者被称为向上转型,向上转型由系统自动完成,当把一个子类对象直接赋给父类引用变量,当运行时调用该引用变量的方法时,其方法行为总是像子类方法的行为,而不是像父类方法行为,这将出现相同类型的变量,执行同一个方法时呈现出不同的行为特征,这就是多态。
作者: 张亚军    时间: 2013-7-29 22:07
对象的多态性
  |-- 我,在生活中,具备多种形态
    |-- 传智,我是员工
    |-- 家庭,户主
    |-- 朋友,小弟
  |-- 宠物猫
    |-- 咪咪猫
    |-- 小宠物真漂亮
    |-- 老鼠面前,舞伴
  |-- 现实生活中的多态:一个事物具备的多种形态

  |-- 面向对象中的对象的多态
    |-- 父类或者是接口的引用,指向自己的子类对象
      父类 f = new 子类();

多态的好处和弊端-- 好处:代码的复用性提高,扩展性增强,后期维护性增强,代码量也减少
-- 弊端:多态中,只能调用子父类中的公共方法,不能调换子类的特有方法

多态中的细节问题:-- 非静态成员变量的特点:-- 编译时期,参考引用型变量中,是否有这个变量-- 运行时期,参考引用型变量中的变量的值

静态成员患变量特点-- 编译时期,参考引用型变量中,是否有这个变量-- 运行时期,参考引用型变量中的变量的值

- 静态成员方法的特点-- 编译时期,参考引用型变量中,是否有这个方法-- 运行时期,参考引用型变量中的方法

- 非静态成员方法的特点-- 编译时期,参考引用型变量中,是否有这个方法- 运行时期,参考子类对象中的方法

在编译时期,JVM静态的绑定在父类的引用变量中
只要在非静态成员方法运行的时候,JVM动态的绑定到子类对象中

-- 简单的说:   除了非静态成员方法以外,编译看左边,运行看左边   只有在非静态方法中,编译看左边,运行看右边

作者: jialihong    时间: 2013-7-29 22:21
对态性是指一个程序中同名、不同方法共存的情况。多态性语言具有灵活、抽象、行为共享和代码共享等很多优势 。
方法重写与方法重载是Java支持多态性的两个重要语言语言组织。若子类中定义的某的方法与其父类的某个方法具有相同的名称与参数,则该子类重写了父类的方法。若在同一个类中定义了多个方法具有相同的名称而具有不同的参数,则这种情况称为方法重载。
implements是实现接口的关键词
作者: 手心里的温柔    时间: 2013-7-29 22:27
建议楼主看看毕老师的视频,讲的很详细  另implements 是实现接口的关键字

作者: 黑马李昂    时间: 2013-7-29 22:54

对象的多态性。

class Animal
{
}
class cat
{
}
class dog
{
}

Animal a = new Cat();//一个对象对应多种形态。
猫这类事物具备猫的形态,同时有具备动物的形态。这就是多态性。

简单的说:就是一个对象对应的不同的类型。
——————————————————————————————————————————————————————————————
interface Animal
{
        public abstract void eat();
}

class Dog implements Animal //implements 是实现接口的关键字.
{
        void eat()//覆盖接口抽象方法实现子类的方法,体现其拓展性,避免了单继承的局限性。
        {
                System.out.println("goutou");
        }
        void lookHome()
        {
                System.out.println("kanjia");
        }
}
class  DuoTaiDemo
{
        public static void main(String[] args)
        {
                Dog d =new Dog();
                d.eat();
        }
}
希望有所帮助{:soso_e100:}

作者: 陈春    时间: 2013-7-29 23:42
多态------简单的说 就是一个事物在不同的环境下存在的不同形态。   implements是实现接口的关键字。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2