7.19

今天,看了好多。学了接口,多态,还有构造方法的引入。子类中的构造方法里,第一行有一个隐式的代码 

public  class  Student{

public  Student(){

super();

}

知道了,方法里有就近原则。


}

接口是大的方面。实现类是具体一个人要做什么。

继承中,子类拥有父类中的属性,可以调用。

多态的特点:

做梦都要背出来的三个特点

1,要有继承

2,要有重写

3,父类引用指向子类。

2.现实中,关于多态的例子不胜枚举。比方说按下F1键这个动作,如果当前在Flash界面下弹出的就是AS3的帮助文档;如果当前在Word下弹出的就是Word帮助;在Windows下弹出的就是Windows帮助和支持。同一个事件发生在不同的对象上会产生不同的结果。

多态的定义公式。

父类的类名  对象名=new    子类的类名();

接口的类名    对象名=new    实现类的类名();

instanceof运算符:

java语言的多态机制导致了引用变量的声明类型和其实际引用对象的类型可能不一致,再结合虚方法调用规则可以得出结论:声明为同种类型的两个引用变量调用同一个方法时也可能会有不同的行为。这里就引入了instanceof运算符。

比如。有一个抽象的动物类,里面有一个抽象方法,还有一个猫类,还有一个狗类。

多态出来就是。

DongWu  c=new    Cat();

DongWu  d=new    Dog();

c和d是调用的子类和父类的共有的方法,运行走的是子类的重写方法。

向下转型

Cat  c1  =(Cat)c;

Cat  a1=(Cat)d;//注意,这里是一个狗转换成猫。在现实中是不匹配的。是说不通的。虽然编译的时候不会报错,但是他在运行的时候会报错,出现类型不匹配。

为了防止异常的发生,我们就要用到  instanseof这个运算符来判断了。当当当当,instanseof  闪亮登场。说到判断,就想到if条件语句。二话不说,先把if条件语句打印出来。

if( c  instanseof  Cat){

Cat  c2=(Cat)c;

c2.Cat中的特有方法;

}

if(d  instanseof  Dog){

Dog  d2=(Dog)d;

d2.Dog类中的特有方法;


}

忘了说,instanseof这个关键字,的用法是  引用变量  instanseof  类名判断变量跟类名有没有关系。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1.import static是Java 5增加的功能,就是将Import类中的静态方法,可以作为本类的静态方法来...
    XLsn0w阅读 1,267评论 0 2
  • 一、Java 简介 Java是由Sun Microsystems公司于1995年5月推出的Java面向对象程序设计...
    子非鱼_t_阅读 4,263评论 1 44
  • 作为马上30岁的大龄女青年,耳边总是会被劝诫:“差不多得了”“30岁的女人就像夜场超市卖的青菜,只有降价便宜甩卖了...
    沈yaya阅读 543评论 0 0
  • 今天气温36°C,开车去民族宫,不长的路还开着空调,下车时T恤的后面居然被汗水印湿了。五月的北京就这样热了,真不知...
    董克平日记阅读 1,020评论 2 1
  • 第四次作业:通过追问和反思经验找到解决问题的方法 我非常注重孩子的教育,为此我看了许多关于亲子教育方面的书,也进入...
    简单的苿莱阅读 219评论 0 1