发表于: 2017-07-24 22:59:22
2 1010
今天完成的事情:今天把多态了解了一下
java面向对象最重要的或者最能表现OO特点的技术特征就是polymorphism.wrap是优点,inheritance是基础,override是特点.这四者缺一不可.
什么是多态:多态是具有变现多种形态的能力的特征.多态是面向对象语言必备特征.
知识点:1.如果不想某个类被初始化,就用abstract关键字把他标记为抽象的.
2.抽象的类里可以有抽象和非抽象方法.但是假如一个方法是抽象的,那么包含他的这个类也一定是抽象的.
3.抽象的方法没有实体,它无法实现出方法的内容,但可以定义出一组子型共用的协议,这样就可以使用父类作为方法的参数,返回类型或数组类型.
4.Java的object相当于始祖类.Java中所有的类都是object的子类.
5.不管实际上引用的对象是什么类型,只有在引用变量的类型就是带有某方法的类型时才能调用此方法.
6,object引用变量在没有进行类型转换的情况下不能赋值给其他类型,若堆上的对象类型与所要转换的类型不兼容,此转换会在执行的时候产生异常.
类型转换的语句是:Dog d=(Dog) x.getObject(aDog);
7.从ArrayList<Object>取出的对象只能被object引用,不然就要用类型转换
8.java不允许多重继承,那样会出现致命方块的问题,这个时候要用到Java接口.Java接口是一个纯抽象的类.所以接口的子类必须实现java接口的方法.
9.以interface这个关键字来取代class声明接口.
public interface pet{}
10.实现Java接口要使用implements关键词.且一个类可以实现多个接口,之间用逗号连接
public class Dog extends Animal implements Pet,Saveable ,Paintable{]
11.如果创建一个具体的子类且必须覆盖某个方法,但又需要执行原来父类的方法时可以使用super的关键字
明天计划完成的事情:因为多态太重要了,而且知识点比较多,明天在复习完善一下.如果有时间学习构造器和垃圾收集器.月底过完.然后8月做点任务转线下.
遇到的问题:暂无
收获:学习了多态,虽然还不是学习很深刻,但是已经感觉到它的强大.学习好了应该会大大提高编程效率和代码质量,果然做任务遇到瓶颈就应该回来看看基础.很多遇到的问题和不理解的地方其实就是基础中简简单单的小知识.不管怎样,先快一点过一遍吧.
tips:师兄最后一天了,给个中啊,明天报名啦
评论