java中构造方法的简介及其实例

2025-10-13 20:54:45

1、java中构造方法主要要来初始化对象,并且只有在new时执行一次;建立一个类可以有多了构造方法,也可以没有(不写),在不写的情况下系统会默认提供一个无参构造方法,如果写了构造方法系统则不会提供。即你没有,系统给你,你自己有,系统则不给你;

java中构造方法的简介及其实例

2、当一个类中有多个构造方法的时候,都是以重载的方式存在的,构造方法不可以继承,,但是每一个构造方法都有默认的super();调用;所以在自己写有参构造方法的时候,最好在写一个无参构造方法,(因为在此类的子类中,会默认调用super();因为super();是无参的而你的此类中是自己写的有参构造方法,调用无参super();时没有这个方法,编译不通过)

java中构造方法的简介及其实例

3、所以:建议自己在写有参构造方法的时候,再写一个无参构造方法,可减少子类中构造方法的错误;

大多时候我们的构造方法都是有参的,在子类有参构造方法中,会经常使用super调用父类的方法;

java中构造方法的简介及其实例

4、public abstract class Animal {/*定义一个抽象类,因为建立的子对象有不同的行为,,有抽象方法的类一定是抽象类,抽象方法是eat()和work()*/    String name;    public Animal(){         }    public Animal (String name){     this.name=name;    }    public abstract void eat();    public  abstract void work();}

java中构造方法的简介及其实例

5、 class Dog extends Animal{  public Dog(){  super();/*默认调用,每个构造方法都默认调用父类的无参构造方法*/  } public Dog(String name) {  super(name);/*调用父类有参构造方法(不写默认的是super())*/ }

//eat和work 是在父类中的抽象方法,抽象方法全部都要重写,漏写则编译不通过; public void eat(){  System.out.println(name+"吃奥尔良恐龙酱排骨!"); } public void work(){  System.out.println(name +"吃饱了,要看门了!"); } }

java中构造方法的简介及其实例

6、 class Cat extends Animal{  public Cat(){}  public Cat(String name){   super(name);  }  public void eat(){   System.out.println(name+"吃海底20000米之下的金昌鱼!");  }  public void work(){   System.out.println(name+"吃饱了,要去抓老鼠了");  } }

java中构造方法的简介及其实例

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢