Java入门——构造方法

构造方法

  • 使用new+构造方法 创建一个新的对象
  • 构造方法也是方法,是定义在Java类中的一个用来初始化对象的方法
  • 构造方法与类名相同且没有返回值

构造方法的语句格式

public 构造方法名(){

//初始化代码

}

其中可以指定参数,没有参数的构造方法叫做无参构造方法,把有参数的构造方法叫做有参构造方法

无参构造方法的创建

创建一个Telphone类以及一个InitialTelphone+入口函数(main函数)
开始,类里面没有任何方法就可以使用了

package com.imooc;
public class InitialTelphone {
    public static void main(String[] args) {
        //通过无参的构造方法可以创建对象
        Telphone phone=new Telphone();
    }
}

但是,没有这个方法,我们怎么调用呢?
原因是, 如果我们没有指定构造方法时,那么系统会自动帮我们生成一个无参的构造方法;如果我们对系统的无参的构造方法不满意,可以自己定义一个无参的构造方法。

package com.imooc;
public class Telphone {
    public Telphone(){
        System.out.println("无参的构造方法执行了!");
    }
}

run后,结果为:无参的构造方法执行了!

有参的构造方法的创建

有参的构造方法就是初始化对象的值,有参构造方法和无参的构造方法相同

package com.imooc;

public class Telphone {
    float screen;
    float cpu;
    float mem;
    public Telphone(float newScreen,float newCpu,float newMem){
     screen=newScreen;
     cpu=newCpu;
     mem=newMem;
     System.out.println("有参的构造方法执行了!");
}
}
package com.imooc;

public class InitialTelphone {
    public static void main(String[] args) {
        //通过有参的构造方法创建对象并给对象中的实例变量赋初值
        Telphone phone2=new Telphone (5.0f,1.4f,2.0f);
    }
}

当有指定的构造方法,无论是有参、无参的构造方法都不会自动添加无参的构造方法

有参的构造方法与无参的构造方法都属于方法的重载
当给实际变量赋值是,可能不合理(比如屏幕尺寸不应<3.5f),所以应该加一个判断

package com.imooc;

public class Telphone {
    float screen;
    float cpu;
    float mem;
    public Telphone(float newScreen,float newCpu,float newMem){
      if(newScreen<3.5f){
          System.out.println("您输入的参数有问题,自动赋值3.5f");
          screen=3.5f;
      }else{
          screen=newScreen;
      }
     cpu=newCpu;
     mem=newMem;
     System.out.println("有参的构造方法 ");
}
}

run以后结果为:您输入的参数有问题,自动赋值3.5f
有参的构造方法

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值