Super相关知识点

 1 package OOP;
 2 //子类:老师继承学校
 3 //子类继承了父类,就会拥有父类的全部方法;
 4 public class Teacher extends School {
 5     public Teacher() {
 6         //此区域隐藏了一个代码super();去调用了父类中的School的无参构造
 7         //注意:super();调用父类的构造器,必须在子类构造器的第一行
 8         System.out.println("Teacher无参构造");
 9     }
10 
11     private String name="nong";
12     public void print(){
13         System.out.println("Teacher");
14     }
15     public void test1(){
16         print();
17         this.print();//调用本类中的print
18         super.print();//调用父类中的print
19     }
20     public void test(String name){
21         System.out.println(name);//此时输出的name是String的
22         System.out.println(this.name);//此时输出的name是上面定义的name
23         System.out.println(super.name);
24     }
25 }
 1 package OOP;
 2 //继承 herit
 3 //父类
 4 //ctrl+h:在java中,所有的类,都默认直接或间接继承了Object
 5 /*
 6 super注意点:
 7 1.super调用父类的构造方法,必须在构造方法的第一个
 8 2.super必须只能出现在了类的方法或者构造方法中
 9 3.super和this不能同时调用构造方法
10 对比this;
11   代表的对象不同:
12        this:本身调用者这个对象
13        super:代表父类对象的应用
14   前提
15         this:没有继承也可以使用
16         super:只能在继承条件才可以使用
17   构造方法:
18         this():本类的构造
19         super():父类的构造
20  */
21 public class School {
22     public School() {
23         System.out.println("School无参构造");
24     }
25 
26     protected String name="ZhongCheng";
27     public  void print(){
28         System.out.println("School");
29     }
30 }

 

posted @ 2022-01-18 10:38  捞月亮的渔夫  阅读(33)  评论(0)    收藏  举报