一个Person类
public class Person {
public Person() {
	System.out.println("我是构造方法 1@");
}	
public Person(int x) {
	System.out.println("我是构造方法 2#");
}
//以下是普通方法
public int m1() {
	return 3;
	
}
public int m1(String x) {
	return 4;
	
}
public void m2() {
	
}
}一个Test类
public class Test{
	public static void main(String[] args) {
Person a1=new Person();
Person a2=new Person(5);
}
}1-------------------------------------------------------------------------------------------------------------------------------
如代码段上所言 这就是一个构造方法。没有返回类型,方法名字一定和类名保持一致。
这就是一个构造方法。没有返回类型,方法名字一定和类名保持一致。
构造方法可以有很多个,。
重名也可以,只要入参不一样就可以了,所以填了入参 int x。这个也叫重载,普通方法也一样。
2 -------------------------------------------------------------------------------------------------------------------------------
 Test  中 , new一个对象的时候,new后边这个 Person() 就是调用的构造方法。(a1 就是对象)
, new一个对象的时候,new后边这个 Person() 就是调用的构造方法。(a1 就是对象)
 上面的构造方法一个是无参的,一个是有参的。所以Test中 ,我也加了一个,一个调用无参,一个调用有参。这个 5 不用在意只要跟入参的类型一致就可以。
,我也加了一个,一个调用无参,一个调用有参。这个 5 不用在意只要跟入参的类型一致就可以。
运行结果为 ,我如果不填这个5则是
,我如果不填这个5则是 。
。
3 -------------------------------------------------------------------------------------------------------------------------------
赋值:给Person中定义一个age和一个name 。(把普通方法删掉了)
public class Person {
	int age;  //定义age
	String name; //定义name
public Person() {
	System.out.println("我是构造方法 1@");
}	
public Person(int x,String y) {
	age=x;
	name=y;
	System.out.println("我是构造方法 2#");
}
@Override
public String toString() {
	return "Person [age=" + age + ", name=" + name + "]";
}
}Test
public class Test{
	public static void main(String[] args) {
Person a1=new Person();
a1.age=90;
a1.name="小爱";
Person a2=new Person(5,"小花");
System.out.println(a1);
System.out.println(a2);
}
}无参的 这样赋值。
这样赋值。
有参的 这样赋值,5对应的int类型,小花对应String类型。
这样赋值,5对应的int类型,小花对应String类型。
一般用有参的这样的构造方法赋值,更舒服一些。
运行结果为: 。为什么是这个样式
。为什么是这个样式 呢。因为 toString 方法
呢。因为 toString 方法
因为Object基类里包含此方法,所有类都继承自Object类,所以“所有对象都有这个方法”。










