类的继承总结
1.Java继承的语法格式
Java继承的关键字是:extends
格式:
public class 类名(子类,超类,派生类) extends 类名(父类,基类) {
}
如: public class UNStudent extends Student {...}
Java中类的继承只能是单继承(单根继承),即一个类只能继承一个父类,但是一个类可以由多个类来继承它。
2.子类继承到了父类的那些属性和方法?能调用的属性和方法有哪些?
子类继承到了父类所有的属性和方法。
能调用的属性和方法有哪些?
子类和父类在同包下:
默认的,受保护的,公有的属性和方法能被子类的对象以及在子类中调用。
子类和父类不在同一个包下:
创建的对象不在子类或者父类中时,可调用的属性和方法就只有公有的。
如果在子类的{}中,可调用的属性和方法有公有的和受保护的。
访问修饰符的大小:由小到大:private , 默认的, protected ,public
3.方法重写
1.实现方法重写的条件:
1.必须要存在继承关系。
2.方法的返回值数据类型,方法名,参数个数,参数类型,参数顺序必须要完全一致。
3.子类在重写方法时,访问修饰符的范围可以大于或者等于父类方法的访问修饰符。
4.重写后的方法会被优先调用。
2.实现方法重写后,怎么调用方法呢?
当实现方法重写后,如果你创建的对象是子类的对象,那么会优先调用子类的方法,如果子类没有改方法,才会执行父类中定义的方法。
4.自动转型
自动转型的条件:
必须要存在继承关系。
自动转型的格式:
格式一:
父类 对象名;
对象名 = new 子类名(实参,...);
父类 对象名 = new 子类名(实参,...);
如:Student stu = new UNStudent();
格式二:
第三方类中的方法
public void method(父类 对象名){
//调用的方法必须要在父类中存在
}
创建对象
父类 对象名A = new 子类名(实参,...);
子类 对象名B = new 子类名(实参,...);
调用方法
method(对象名A);
method(对象名B);
实例:公交车司机会开公交车,能开小轿车吗?小货车呢?卡车呢?三轮车呢?
司机类{
开公交车(Bus bus){}
开小轿车(X x){}
开小货车(X x){}
开卡车(k k){}
开三轮车(s s){
}
}
司机类{
开车(Car car){}
}
JFrame add(),setLayout()
自动转型的优点和缺点:
缺点:
Java在编译程序时,只会根据对象名的类型,去查找是否存在该方法,如果存在,则通过编译,如果不存在则报错。
优点:
实现多态,减少重复的代码,提高程序的扩展性。
5.多态
多态就是由方法重载,继承,方法重写,自动转型等技术点的组合。
1.Java继承的语法格式
Java继承的关键字是:extends
格式:
public class 类名(子类,超类,派生类) extends 类名(父类,基类) {
}
如: public class UNStudent extends Student {...}
Java中类的继承只能是单继承(单根继承),即一个类只能继承一个父类,但是一个类可以由多个类来继承它。
2.子类继承到了父类的那些属性和方法?能调用的属性和方法有哪些?
子类继承到了父类所有的属性和方法。
能调用的属性和方法有哪些?
子类和父类在同包下:
默认的,受保护的,公有的属性和方法能被子类的对象以及在子类中调用。
子类和父类不在同一个包下:
创建的对象不在子类或者父类中时,可调用的属性和方法就只有公有的。
如果在子类的{}中,可调用的属性和方法有公有的和受保护的。
访问修饰符的大小:由小到大:private , 默认的, protected ,public
3.方法重写
1.实现方法重写的条件:
1.必须要存在继承关系。
2.方法的返回值数据类型,方法名,参数个数,参数类型,参数顺序必须要完全一致。
3.子类在重写方法时,访问修饰符的范围可以大于或者等于父类方法的访问修饰符。
4.重写后的方法会被优先调用。
2.实现方法重写后,怎么调用方法呢?
当实现方法重写后,如果你创建的对象是子类的对象,那么会优先调用子类的方法,如果子类没有改方法,才会执行父类中定义的方法。
4.自动转型
自动转型的条件:
必须要存在继承关系。
自动转型的格式:
格式一:
父类 对象名;
对象名 = new 子类名(实参,...);
父类 对象名 = new 子类名(实参,...);
如:Student stu = new UNStudent();
格式二:
第三方类中的方法
public void method(父类 对象名){
//调用的方法必须要在父类中存在
}
创建对象
父类 对象名A = new 子类名(实参,...);
子类 对象名B = new 子类名(实参,...);
调用方法
method(对象名A);
method(对象名B);
实例:公交车司机会开公交车,能开小轿车吗?小货车呢?卡车呢?三轮车呢?
司机类{
开公交车(Bus bus){}
开小轿车(X x){}
开小货车(X x){}
开卡车(k k){}
开三轮车(s s){
}
}
司机类{
开车(Car car){}
}
JFrame add(),setLayout()
自动转型的优点和缺点:
缺点:
Java在编译程序时,只会根据对象名的类型,去查找是否存在该方法,如果存在,则通过编译,如果不存在则报错。
优点:
实现多态,减少重复的代码,提高程序的扩展性。
5.多态
多态就是由方法重载,继承,方法重写,自动转型等技术点的组合。