对象09:什么是继承
extands 修饰关键字,扩展,继承
继承是类和类之间的关系。子类和父类之间在意义上应该具有“子类 is a 父类”
Java中只有单继承,没有多继承。“一个爸爸有多个儿子,一个儿子只有爸爸”: Object——>Persion
|——>Studnt
|——>Teacher
package oop.demo05;
public class Application {
public static void main(String[] args) {
Student student = new Student();
student.say();
}
}
package oop.demo05;
//Persion是父类,Student和Teacher是派生类
// 子类继承了父类,就拥有了父类的全部方法
//public 公共
//protected 受保护的
//default 常规,默认
//private 私有,子类不能继承
//在java中所有的类 都默认继承Object类
// CTRL+ H 快捷键 查看层次结构
public class Persion {
public void say(){
System.out.println("说了一句话");
}
}
package oop.demo05;
public class Student extends Persion{ //extends 继承了Persion的公共属性和公共方法 Student是Persio
}
package oop.demo05;
public class Teacher extends Persion{ //extends 继承了Persion Teacher是Persion
}
对象10:Super详解(继承)
super 注意点
super调用父类构造方法,必须在构造方法的第一个
super必须只能出现在子类的方法或者构造的方法中
super和this不能同时调用构造方法
VS this
代表的对象不同:
this :本身吊桶的是当前类的对象
super:是指父亲类的对象的应用
前提:
this:没有继承也可以用
super;只能在继承条件才可以使用
构造方法
this(); 调用本类的构造
super();调用父类的构造
package oop.demo05;
public class Application {
public static void main(String[] args) {
Student student = new Student();
student.say();
student.test("李白");
student.test1();
}
}
package oop.demo05;
//Persion是父类,Student和Teacher是派生类
// 子类继承了父类,就拥有了父类的全部方法
//public 公共
//protected 受保护的
//default 常规,默认
//private 私有,子类不能继承
//在java中所有的类 都默认继承Object类
// CTRL+ H 快捷键 查看层次结构
public class Person {
public void say(){
System.out.println("说了一句话");
}
public void Person() {
System.out.println("Person无参执行");
}
protected String name = "zhangsan";
public void print(){
System.out.println("Person");
}
}
package oop.demo05;
public class Student extends Person{ //extends 继承了Persion的属性 Student是Persio
private String name = "libai";
public void print(){
//执行顺序,先父后子
//隐藏代码,调用了父类的无参构造
//父类无参,子类的也无参
System.out.println("Student");
}
public Student() {
System.out.println("Student无参执行");
}
public void test(String name){
System.out.println(name); //李白
System.out.println(this.name); //libai
System.out.println(super.name); //zhangsan
}
public void test1(){
System.out.println("=================");
print(); //student
this.print(); //student
super.print(); //Persion super读取了父类的print方法。如果print方法被声名为private将不回被读出
}
}
原创文章:https://www.qqhhs.com,作者:起航®,如若转载,请注明出处:https://www.qqhhs.com/43.html
版权声明:本站提供的一切软件、教程和内容信息仅限用于学习和研究目的,请于下载的24小时内删除;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络收集整理,如果您喜欢该程序和内容,请支持正版,购买注册,得到更好的正版服务。我们非常重视版权问题,如有侵权请邮件与我们联系处理。敬请谅解!