什么是继承?
以一个类为基础(父类),新设计一个类(子类),可以被称为类的继承
什么事方法的重写(override / overwrite)?
子类继承父类中的方法,而不需要重新编写相同的方法。但有时子类并不想原封不动地继承父类的方法,而是想作一定的修改,这就需要采用方法的重写。方法重写又称方法覆盖。
重写方法要满足的条件:
1.必须要有继承
2.方法名相同
3.参数列表(参数类型,参数个数)相同
4.返回值类型相同
5.子类重写父类的方法不能使用比父类更高级的访问权限
eg:
toString的重写
equals的重写
final 关键字代表什么意思?怎么使用?
最终的(常亮----不可更改的值)
用于修饰:
变量(变为常量-----让这个变量只能赋值一次)
方法(被final修饰的方法不能被重写)
类(被final修饰的类不能被继承)
多态的定义是什么:
多态性是允许你将父类设置成为一个或更多的子类相等的技术,赋值之后,父类就可以根据当前赋值给它的子对象的特性以不同的方式运作。简单的说,就是一句话:允许将子类类型的指针赋值给父类类型的指针(父类的引用指向子类的对象)。
在同一个方法中,参数类型相同,但运行环境不同而表现出来形式也不同。
对象转型:
向上转型:隐式
向下转型:显式,需要手动的强转。
eg:animals a1 = new Dog();
Dog d1 = (Dog) a1;
instanceof关键字:
用来判断某个变量是否是一种类型
左边写变量,右边写类型,最后结果是boolean型。
boolean f = a1 instanceof animals;
什么是抽象类?的点是什么?
1.在一个类中,某一个方法不需要被实现,完全交由子类去实现,这个方法需要被声明为抽象类
2.用abstract修饰
3.含有抽象方法的类必须声明为抽象类 抽象类可以没有抽象方法
4.抽象方法不能被实例化;
5.抽象类的子类没有能力去实现父类的方法的时候,自己也需要被声明为抽象类,没有实现的方法声明为抽象方法,等待下一个子类去实现。
什么是接口?如何使用?
类由class实现,借口是interface;
接口是一种特殊的抽象类,需要有实现类去实现;
类继承用extends, 接口用implements;
接口可以多个同时实现,
接口中的方法默认都是public;
接口中可以定义成员变量(全局,整个实现类都可以访问)
实现类实现 继承了父类的接口 的时候,需要实现所有接口中的方法;
接口可以多继承;
package(包)
用来声明这个类的位置;
import(导入)
*.jar(java第三方类库)
权限修饰符
public(公开的,谁都可以用,权限最高) protected(只能用于子父类) (默认,不用写) 只能用于同一个包中 private 私有的, 只能同于当前类