前言: 封装是面向对象的三大特性之一。(别老盯着这个图呀,往下面看看)
它的作用是把对象的信息隐藏在内部,不让外部直接访问,而是通过类提供的方法去访问内部信息。
三大特性还有: 继承 多态
1)继承:
它是其中一个特性,它就是通过将一个老类(我们称父类)里的所有非私有的行为特性传递给一个新类(我们称子类),让子类拥有父类(非私有)的行为特性 。
换言之 实现继承的类称为子类,被继承的类称为父类。
语法:
[修饰符] class 子类名 [extends 父类名]{
//类定义部分
}
简例:
public class a{
String name;
int age;
}
public class b extends a{
}
注 :Java中的继承为单继承 ,即一个子类只能有一个直接的父类。
2)多态:
它是指作用在不同对象,有不同的理解,产生不同的结果。
多态也可以分为:重载 和 重写
重载是指:一个类中的多个方法名可以一样,但是参数不能相同,执行的时候根据参数的个数或 者类型来判断改用哪一种方法。
简例:
public class a(int q){
}
public class a(String w){
}
public class a(int e){
}
public class a(String r){
}
提醒:构造方法也可以实现方法的重载
判断需要用到instanceof算符,但是使用时要注意,它前面的操作数编译时,类型要么与后面的类相同,要么与后面的类有父子继承关系,否则编译错误
重写是指:在父子继承关系下,子类可以改变父类中的方法,也可以说是覆盖了父类中的方法,注意,覆盖只是隐藏了父类中的方法
简例:
public class Tiger extends Animal{
//重写方法
public void eat(){
System.out.println("---我是老虎我正在吃肉---");
}
//通过super关键字,调用父类被重写的方法
public void action(){
super.eat();
}
}
总结
1.简述java继承的语法
[修饰符] class 子类名 [extends 父类名]{
//类定义部分
}
2.简述重载与重写的区别和联系
重载是指一个类中的多个方法可以同名,但是参数必须不同,执行时根据判断参数的个数和类型
重写是指父子继承关系下,将方法重写覆盖,覆盖只是隐藏了父类的方法
谢谢阅读,祝您有所知!