构造方法就是与类同名的那个方法,它的作用是可以用来初始化
class Person //
人类{
public Person(String n,int a) //
构造方法
{
name = n; age = a;
}
private string name;
private int age;
}
static void main(String[] args){
Person p = new Person("
张三",14);//这就是作用
}
new
一个对象的时候要用到构造函数,例如Hello hello = new Hello();这时调用的是Hello的无参数构造方法;
Hello hello = new Hello("hi");这个是调用Hello有参数构造方法,
在JAVA中如果不写构造方法的话,会默认加上一个无参数的构造方法,但是如果已经有了一个有参数的构造方法,那么无参数的构造方法就不会默认被加上.如果Hello类中已经有了一个有参数的构造方法,这时再使用 Hello hello = new Hello();来创建对象的时候就会出错,这就是为什么书上要强调写了有参数的构造方法就最好加一个无参数的构造方法.
1.比如说一个Class类中有很多属性,你在测试类中要用到时,如果你只有一个无参的构造函数,那么你使用这个类的并且输出类的属性值的时候,你就需要new 一个对象 然后用对象.属性 给他赋值,但是如果你有一个带参数的构造函数 那么你在调用他的时候就只需要new一下的同时就给它赋值,
Class class=new Class
(“属性值1”,“属性值2”);这样就可以了!方便了很多,这样就是初始化!
2.
当你的所用来创建对象的类中的有些方法为private(私有方法),在其他类中,你即使创建该类的实例对象,你还是不能调用那些私有的方法和属性,这时,你可以通过构造方法去调用该类中的私有方法和设置属性,或者输出。
当你的类中,你并没有写构造方法时,系统会自动为你添加一个无参的构造方法 public 类名(){}
就是默认在你的类中有这么一个构造方法