java 面向对象-- 构造方法

构造方法是一个特殊的方法,这个特殊方法用于创建实例时执行初始化操作;

/**
 * 定义人类
 * @author user
 *
 */
public class People {
 
    // 定义属性 
    private String name; // 实例化对象时,默认值是null
    private int age; // 实例化对象时,默认值是0
     
    /**
     * 默认构造方法
     */
    People(){
        System.out.println("默认构造方法!");
    }
     
 
     
    public void say(){
        System.out.println("我叫:"+name+",我今年:"+age);
    }
     
    public static void main(String[] args) {
        People people=new People();
        people.say();
    }
}

注意:实例化对象的时候,String类型的默认值是null,int基本类型的默认值是0 ;

People(){} 构造方法 

特点 1,没有返回值类型,区别于其他一般方法;

   2,方法名和类名一样;

 

package com.java1234.chap03.sec04;
 
/**
 * 定义人类
 * @author user
 *
 */
public class People {
 
    // 定义属性 
    private String name; // 实例化对象时,默认值是null
    private int age; // 实例化对象时,默认值是0
     
    /**
     * 默认构造方法
     */
    People(){
        System.out.println("默认构造方法!");
    }
     
    /**
     * 有参数的构造方法
     * @param name2
     * @param age2
     */
    People(String name2,int age2){
        System.out.println("调用的是有参数的构造方法");
        name=name2;
        age=age2;
    }
     
    public void say(){
        System.out.println("我叫:"+name+",我今年:"+age);
    }
     
    public static void main(String[] args) {
        // People people=new People();
        People people=new People("张三",20);
        people.say();
    }
}

 

 

这里我们定义了一个有参数的构造方法,参数有name2 age2,当调用构造方法的时候,用于赋值给name和age属性。

注意点:

1,假如没有构造方法,系统会自动生成一个默认的无参构造方法;

2,假如有构造方法,系统不会自动生成构造方法;

 

猜你喜欢

转载自www.cnblogs.com/xyg-zyx/p/9817787.html