欢迎来到天天文库
浏览记录
ID:36971333
大小:555.85 KB
页数:28页
时间:2019-05-16
《[零基础学java]java se面向对象部分-16.面向对象高级(04)》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、上季内容回顾:1、final关键字·修饰类不能被继承·修饰方法不能被覆写·修饰的变量就是一个常量,全局常量(publicstaticfinal)2、抽象类和接口·抽象类:只包含一个抽象方法的类,抽象方法只需声明而不需要实现,必须有子类·接口:只包含抽象方法和全局常量的类——接口,也是必须有子类在实际中一个类很少会去继承一个已经完全实现好的类,基本上都是继承抽象类和实现接口。本季主要知识点:1、对象的多态性2、instanceof关键字3、Object类对象的多态性注意点:为了清楚的阐述出概念,现在先使用普通类的继承关系。向上转型:classA {
2、 publicvoidfun1() { System.out.println("A类===>publicvoidfun1()"); } publicvoidfun2() { //fun2方法调用的是fun1方法 this.fun1(); } } classBextendsA { //覆写A类中的fun1
3、()方法 publicvoidfun1() { System.out.println("B类===>publicvoidfun1()"); } publicvoidfun3() { System.out.println("B类===>publicvoidfun3()"); } } publicclassDemo01 { pu
4、blicstaticvoidmain(Stringargs[]) { Bb=newB(); Aa=newA(); b.fun1(); a.fun2(); b.fun3(); } }对象多态性体现在对象相互转型上面哈~classA { publicvoidfun1() {
5、 System.out.println("A类===>publicvoidfun1()"); } publicvoidfun2() { //fun2方法调用的是fun1方法 this.fun1(); } } classBextendsA { //覆写A类中的fun1()方法 publicvoidfun1()
6、 { System.out.println("B类===>publicvoidfun1()"); } publicvoidfun3() { System.out.println("B类===>publicvoidfun3()"); } } publicclassDemo02 { publicstaticvoidmain(Stringargs[])
7、 { //声明一个父类对象 Aa=null; //newB()是子类对象向父类对象转换 a=newB(); a.fun1(); } }现在我们来看下a.fun1()调用的是哪个类的方法哈~classA { publicvoidfun1() {
此文档下载收益归作者所有