发表于: 2017-12-02 22:09:32

2 819


今天完成的事情:

1.学完了java的继承 

    a.final关键字的学习

        知识点:使用final关键字做标示有“最终的”含义,不可修改,不可变化;

                final修饰类,则该类不允许被继承;修饰方法,该方法不能被重写;

                final修饰属性,则该类的属性不会进行隐式的初始化或在构造方法中赋值(方法二选一)如下:

                 (1)final public int age = 10;//声明时赋值

                 (2)final public int age;

                        public Alex(){

                         age = 10;//通过构造方法赋值

                        }

    b.super关键字的使用

        知识点:(1)访问父类的对象:super.age;

                (2)访问父类的方法:super.eat();

                 结合代码学习知识点:

        我们可以看到,代码在运行的时候执行了两次“Animal类执行了”这是因为子类的构造的过程中必须调用其父类的构造方法。

     而在代码中没有体现调用父类的构造方法,这是因为系统自动调用了父类的无参构造方法。

    接下来再看一组代码复习另外的知识点:

    在这里我们用到了super关键字直接调用父类的方法以及访问父类的变量。

    c.java中的object类

         知识点:(1)object类是所有类的父类,如果一个类没有使用extends关键字明确标识继承,则默认继承objecct类。

                 (2)toString()方法。如果我们在代码里直接输出一个对象,它会输出这个对象在内存中的地址,叫做哈希码;我们可以通过重写                         toString方法来标识出它的属性。如下代码:


              我们看到,它输出的是内存地址,那么我们重写方法之后呢:

        我们通过重写toString()方法让代码输出了变量的值。

                 (3)equals()方法:此方法比较的是对象的引用是否指向同一块内存地址,但是我们一般使用都是比较对象的值,所以要重写此方                         法。

这是方法重写之前,我们发现结果是不同的;



             这是方法重写之后的,我们实现了用equals()比较对象的值。

2.进行了章节练习

    因为学完了继承,一时膨胀,找了道练习题试了试(说起来就想哭),结果当然是喜闻乐见的惨不忍睹。耗费了大概三个小时,才把那个练习题做完,   感觉已经废了。期间不停地翻笔记,不停地抓耳挠腮,才终于写了出来。感觉有很大的修改完善空间,但是现在头脑乱乱的,打算明日再来修改完善,粘   出代码如下:

这三个图是DADAdrive类的完整代码。

左边这是Car类的完整代码


左边这是Price类的完整代码



这是一次测试。




    目前存在的问题是选择不租车之后还是会继续下面的方法:正在想方法ing...

明天要做的事情:

1.修改完善代码。

2.学习java的多态。

今天的收获:

    今天的收获就是谢了好久好久代码,一直在改啊改啊改啊...感觉以前的知识点用起来有得心应手的趋势。明天也要继续努力!

    最后,麻烦师兄审核~










返回列表 返回列表
评论

    分享到