学习不要眼高手低,学习是一点点积累的。即使你现在很菜,坚持学一个学期不会差的!只要花时间学习,每天都是进步的,这些进步可能你现在看不到,但是不要小瞧了积累效应,30天,60天,90天后,你每次都会发生质的变化。
每一个人都要有危机感,就好像你被水刑,有人把你的扔进大缸里面,按着你的头,你不听的挣扎,想要呼吸。每当濒死,他每次都会让你呼一会气,这样就是危机感。生于忧患,死于安乐。
大学四年就像温水泡脚,在舒适区快乐玩耍,等毕业了,就是你把洗脚水喝掉的时候了。
-------------------------------------------------------------------------------------------------------------------博哥语录
目录
1.抽象类和抽象方法
abstract修饰 ,
抽象方法不用具体的去写方法的内容,常常用来父类的方法
而只有抽象类才能容纳抽象方法
抽象类不可以被实例化,但是它可以向上转型(可以实例化子类)
由于不能被实例化,这个抽象类只能被继承
在抽象类中,也可以包含普通类中的成员变量和成员方法
一个普通类继承了一个抽象类,那么这个普通类一定要重写父类的所有的抽象方法
一个抽象类A如果继承了抽象类B,那么父类的抽象方法不必要重写
结合上一点,如果普通类继承了抽象类A,那么这个普通类要重写A和B的所有抽象方法
抽象abstract和final不可同时出现,抽象是为了被继承,为了被重写。
而final是为了不被修改,不被重写的只读
2.接口
接口是使用interface来修饰的 interface IA {
接口中全是默认的public抽象方法,不能有普通方法,但有两个例外。
1.如果非要实现在普通方法前面加个default,可以在子类重写。
2..如果非要实现在普通方法前面加个static方法 ,静态方法不能被重写
}
接口类不能直接new实例化,因为可以说它是更进一步的abstract类,所以不能被直接实例化,但是可以由它的子类向上实例化
类和接口之间的关系是通过implement来实现的
当一个类实现了一个接口,就必须重写接口中的所有抽象方法
和
是一样的,接口中默认是public abstract的
接口中定义的属性是public static final 的,由于有final所以是一个常量,要被初始化
可以同时继承和implements 但是extends要在前面,还有implements可以实现多个接口 ,但是继承只能继承一个类。
接口通常省略方法和属性前面的东西,更简洁
java只支持单继承,接口的出现可以弥补java的多继承