构造器 + 继承体系

来源:互联网 发布:火车票晚点查询软件 编辑:程序博客网 时间:2024/06/05 19:34

一、构造器(构造方法/构造函数)

定义:用于构造当前类对象的行为。

格式:public 类名(){ },它的作用是什么呢 ?

构造方法的作用有两点:

  1.初始化当前类对象的相关属性

  2.创建当前类的对象。

关于构造器,我们需要注意几点

  1.任何类都有一个默认的构造方法。
  2.构造方法在创造当前类的对象时自动执行。
  3.构造方法没有返回值类型,但是有返回值,返回的是内存地址。
还有什么是引用传递,什么是引用,引用就是变量名,指的是不同变量名存储的地址之间的传递。
类名  对象名  =     new  类名( );
申明变量                  创建对象

关于引用传递我们可以用举个实例来方便理解
Student stu = new Student();  Student stu1 = new Student();  stu.name = "张三";  stu1.name = "李四";  stu = stu1;  stu1.name = "王五";  System.out.println(stu.name);  System.out.println(stu1.name);  

这里输出的是 “王五”“王五”

二、方法重载

我们首先要知道它的定义:同一个类中,多个相同对象名但不同参数列表的方法互为重载方法。
参数列表: 参数的类型,参数个数以及参数的顺序。只要有其一不同就为参数列表不同。
普通方法和构造方法都可以重载,构造方法重载用于初始化当前对象的属性。

public class teacher{      public void teach(){}      public void teach(int a){}      public void study(int a,String b){}      public void sutdy(String a,int b){}  }

三、继承

 定义:子类继承父类非私有类的属性和行为,但是构造方法不继承

格式:public 子类名 extends 父类名( ){ }

我们需要注意的是继承是单继承。但是可以多层继承,意思是类似于父传子,子传孙的模式。

我们的应用场景:在需要定义多个类时,拥有相同的对象的属性和行为时可以考虑用继承来实现。



四、方法重写 
定义:在子类继承父类的前提下,子类定义一个和父类方法名、参数、返回值都相同的方法,此方法为方法重写。
注意:与方法重载的区别
子类的对象会自动转换为父类的类型(父类 类名 子类对象名 =new  子类类名)
自动转型后的对象,调用方法,如果没有重写,则调用父类的方法,如果子类重写了父类的方法,则调用重写后的方法。
自动转型条件:继承

 class A{      public void study(){          System.out.println("A");      }  }   class B extends A{      public void study(){          System.out.println("B");      }  }  public class Test {      public static void main(String[] args){          A a = new B();          a.study();      }    } 

五、多态
多个同一类型的对象,调用同一方法时,执行的过程不一样。
方法重载,方法重写就是两种多态。




原创粉丝点击