第十二周周总结 多态

java面向对象的四大特性
         继承  封装  多态 (抽象)
多态
一、四种表现形式  1.方法重载   2.方法重写   3.抽象类   4.接口

二、同一个对象 体现出来的多种不同形态(身份) 将一种行为表现出不同的效果
    要想实现多态的效果 需要现有继承方法

三、体现
             1.父类类型的引用 指向 子类的对象
                Person p = new Teacher();
             2.该引用只能调用父类中定义的属性或方法
             3.如果子类中将父类的方法重写,那么调取方法后执行的结果是子类重写之后的那个结果
                           如果父类与子类有同名的属性             执行父类的属性
                           如果父类与子类有同名的方法(重载)      执行子类重写之后的方法
             4.若想要调用子类中独有的成员
                           (强制类型转化) 造型 铸型 (向上/向下转型)
             5.造型时(强制向下转型时) 可能会出现一个运行异常
                            ClassCastException 造型 铸型 异常
                            如果想要避免造型的异常  可以用instance关键字来进行判断
                            对象  instanceof  类

 四、                       InputMismatchException               输入不匹配
                            NumberFormateException               数字格式化异常
                            ArrayIndexOutOfBoundsException       数组索引越界
                            NegativeArraySizeException           数组长度负数
                            NullPointerException                 空指针异常
                            ArithmeticException                  算数异常
                            ClassCastException                   造型异常 将对象的类型还原时 与真实类型不匹配
                            StackOverflowError                   栈内存溢出错误

 五、                                Object
                                     hashCode equals toString getClass ...
                                     Animal
                                     name属性  eat sleep
             Person                                        Pig
             name属性  重eat  重sleep  独talk               name属性   重sleep
   Teacher                     Student
   name  重eat 独有teach        name属性 重talk  独study

                           Object o =new Teacher();
                           o.hasCode  o.toString
                           Animal a = (Animal)o;
                           a.hashCode();   a.toString();   a.name   a.eat()   a.sleep()
                           Person p = (Person)o;
                           p.hasCode();    p.toString();   p.name   p.eat()   p.sleep()
                           Teacher t = (Theacher)o;
                           t.hasCode();    t.toString();   t.name   t.eat()   t.sleep()

                           Student s = (Student)o;  //不可以哦,会出现ClassCastException 造型异常

原文地址:https://www.cnblogs.com/shsy/p/12026344.html

时间: 2024-11-07 16:25:29

第十二周周总结 多态的相关文章

[问题2014S12] 复旦高等代数II(13级)每周一题(第十二教学周)

[问题2014S12]  设 \(A,B\) 都是 \(n\) 阶半正定实对称阵, 证明: \(AB\) 的所有特征值都是非负实数. 进一步, 若 \(A,B\) 都是正定实对称阵, 证明: \(AB\) 的所有特征值都是正实数. [公告]  关于本学期复旦高等代数II(13级)每周一题,新题的公布到第十五教学周为止(即本学期一共公布 15 道思考题), 解答的公布到第十七教学周为止(通常滞后两周). [推荐]  请 13 级的同学到以下网址下载<数学之美,吴军著>一书,希望即将学完一年大学数

[问题2015S11] 复旦高等代数 II(14级)每周一题(第十二教学周)

[问题2015S11]  证明: 任一复方阵都相似于一个复对称阵. 举例说明: 存在实方阵, 它不相似于实对称阵. 问题解答请在以下网址下载:http://pan.baidu.com/share/home?uk=103502710#category/type=0

[问题2014A10] 复旦高等代数 I(14级)每周一题(第十二教学周)

[问题2014A10]  设 \(A\) 为 \(n\) 阶实方阵满足 \(AA'=I_n\) (即 \(A\) 为 \(n\) 阶正交阵), 证明: \[\mathrm{rank}(I_n-A)=\mathrm{rank}\Big((I_n-A)^2\Big).\] 注  请不要用高代 II 中正交阵的正交相似标准形或酉相似标准形来证明.

十二、面向对象之多态

1.多态的概念 一种事物的多种体现形式 方法重载,方法的重写都是多态的体现 2.多态的体现形式 a.父类的引用指向子类的对象 b.接口的引用指向实现类的对象 总结: a.如果使用了多态,将不能访问子类或者实现类中特有的属性和方法 b.在多态中访问成员变量时,如果子类中出现了和父类重名的成员变量,都访问的是父类中成员变量 c.在多态中调用了方法,只有子类重写了父类中的方法,会调用子类中重写之后的方法,如果没有重写,调用的是父类中的方法 3.使用多态的好处 a.提高了代码的可维护性 b.提高代码的扩

第十二周进度条

第十二周          日期  星期一   星期二   星期三   星期四   星期五   星期六   星期日  了解到的知识点 js获取当前时间 var d = new Date() var nowYear = +d.getFullYear() EF框架填充下拉菜单 var model = db.GYSAllFoods.Select(m => new{GYS = m.GYS}).Distinct();//去重很关键            foreach (var item in model

学习进度第十二周

  第十二周 所花时间(包括上课) 11h(4h上课,7课下) 代码量(行) 220 博客量(篇) 1 了解到的知识点 这个星期主要进行了安卓实验和大作业的编写,从中学到了利用安卓SQLite 数据库 进行表的存储以及应用,按照教程成功编写了一个特别小的视频播放器,学会了进度 条等控件的使用.

学习进度-第十二周

  第十二周 所花时间(包括上课) 10小时 代码量(行) 48行 博客量(篇) 3篇 了解到的知识点

第十二周(补)

这几周有点心不在焉的,学习状态不好,作业都忘记写了,有的是存在记事本里忘记上传 周次 学习时间 新编写代码行数 博客量(数) 学到知识点 第十二周 6 80 1 html                               <html><head> <title> HTML</title></head><body > <h1>会员注册界面</h1><form action="proces

第十二、十三周新总结

第十二.十三周总结 ——————————————王林 学科 WEB 数据结构 计算机网络基础 课外读物 进度 第十章.第十一章 第六章后半部分,第七章前半部分 项目6.项目7 <黑客攻防从新手到高手> <Flash MX> 主要内容 第十二周.第十三周主要学习了CSS3的知识.包括CSS3字体与文本的相关属性.设计立体文本.美化背景与边框.设置背景.边框设置.以及综合实例. 两周内.,重点学习了二叉树等. 十二周内,学习了无线局域网的基础知识.无线网络的硬件设备ji组网模式及认证I

信息安全系统设计基础第十二周学习总结

第十二周代码学习 一.environ.c #include <stdio.h> #include <stdlib.h> int main(void) { printf("PATH=%s\n", getenv("PATH")); setenv("PATH", "hello", 1); printf("PATH=%s\n", getenv("PATH")); #if