即日起在codingBlog上分享您的技术经验即可获得积分,积分可兑换现金哦。

Java语言 构造器

编程语言 qq_18505715 11℃ 0评论

一、构造器


1、在Java 中,使用new关键是调用构造器,从而返回该类的实例


也就是说: 构造方法是定义在Java类中的一个用来初始化对象的方法,是创建对象的根本途径


注意: 构造方法与类同名且没有返回值


2、语法


修饰符 构造方法名 (形参列表) { //在这里面初始化代码 }


注意:


1) 修饰符: 可以省略。


2) 构造方法名: 必须与类名字相同


3) 构造器不能定义返回值,不能使用void定义构造器没有返回值。如果为构造器定义了返回值类型,或使用void 定义构造器没有返回值,编译时不会出错,但Java会把这个所谓的构造器当做普通方法来处理


3、分类


把没有参数的构造方法叫无参构造方法,反之称为有参的构造方法


4、关于构造方法的几个注意点


1)如果我们没有指定无参构造方法,系统会为该类提供一个默认的构造器


一旦我们为一个类提供了构造器,系统将不会该类提默认无参的供构造器,如果我把无参的构造方法屏蔽, 则不能调用无参的构造方法,会编译不通过。


2) 有参构造方法: 初始化成员变量的值


3) 有参的构造方法和无参构造方法是可以并存的(方法重载)


4) 构造方法的重载: 方法名相同,单参数不同地方多个方法,调用时会根据不同的参数参数选择相应的方法


5) 构造方法 不但可以给属性赋值,还可以保证给对象的属性赋一个合理的值


二、例子


定义一个类,名字为Telephone

public class Telephone {

    double screenSise;

    double memorySize;


    // 方法重载

    //无参数构造方法
    public Telephone(){

        System.out.println("无参数构造方法run"+" screenSize:"+screenSise+ "   memorySize:"+memorySize);

    }

    // 有参构造方法
    public Telephone(double newScreenSize,double newMemorySize){

        //给对象的实例变量赋值
        if(newScreenSize < 3.5){
            screenSise = 3.5;
            System.out.println("输入参数有问题,自动赋值成3.5");
        }else{
            screenSise = newScreenSize; 
        }

        memorySize = newMemorySize;
        System.out.println("有参的构造方法run!"+" screenSize:"+screenSise+ "   memorySize:"+memorySize);


    }
}

在定义一个类,取名为StructMethod,并勾选main函数

public class StructMethod {

    public static void main(String[] args) {

    //通过无参的构造方法可以创建对象
    Telephone iphone6 = new Telephone();

    //通过有参的构造方法也可创建对象,并给对象的实例变量赋值
    Telephone iphones = new Telephone(1.0,32.0);    
    }

}

输出结果:

无参数构造方法run screenSize:0.0   memorySize:0.0
输入参数有问题,自动赋值成3.5
有参的构造方法run! screenSize:3.5   memorySize:32.0

demo: http://download.csdn.net/download/qq_18505715/9823088

转载请注明:CodingBlog » Java语言 构造器

喜欢 (0)or分享 (0)
发表我的评论
取消评论

*

表情