构造方法是一个特殊的方法,这个特殊方法用于创建实例时执行初始化操作;
/** * 定义人类 * @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,假如有构造方法,系统不会自动生成构造方法;