在第三周的学习之中,我也学习了很多新的有关java的基础知识,我发现这些知识越来越难了,有些概念十分抽象让我痛苦万分。
首先就是Java的主要基础知识面向对象中的父类和子类。
父类和子类之间的关系主要就是继承,子类可以继承父类中的变量或方法
1.继承(父类与子类)
概述:1.由继承得到的类称为子类,而被继承的类则是被称为父类
2一个子类只能继承一个父类,当然除了object类,object类是顶级父类,是在所有类之上。
3.一个子类只能继承一个父类,但是一个父类可以被多个子类继承。
4.如果一个类继承时没有使用extends关键字声明父类是什么,那么系统就会默认这个类是object类的子类。.
5.父类引用可以调用子类和父类公用的方法,但子类特有的方法无法调用。
2. super关键字
1. super常常出现在子类想要访问父类的东西时使用,也就是说super关键字访问代表的是父类的特征
2.当子类中出现和父类一样的属性或者方法时,就需要用super关键字去调用否则无法调用。
在这一周还学习了一个叫抽象类的概念。
1.抽象类之所以叫做抽象类正是因为它不能是实例化对象,因为它是属于抽象的,这是我自己的理解
2.虽然抽象类不能实例化对象,但是继承抽象类的子类可以通过继承抽象类来实现实例化对象
3.在继承抽象类的子类中,如果想要使用抽象类中的方法,就必须重写方法才可以使用。
4.抽象类也是实现多态的一种很常用的类型,通过子类继承抽象类,再重写抽象类中的方法,可以实现一个方法打印出不同的结果。
还学习了接口,接口和抽象类我感觉有些一样,有点分不清区别
接口是因为java不支持多继承,所以通过接口就可以实现多继承。
1.不能直接去实例化一个接口,这点和抽象类是一样的,因为接口中的方法都是抽象方法没有方法体2.我们可以使用接口指向一个实例化该接口的对象,然后先调用接口中的方法。