1.构造器(或构造方法):
构造器的作用:

  • 1.创建对象
  • 2.初始化对象的信息
    只要造对象就得用构造器,这句话恒成立 高级要将反射。大家从形式上1看不到那个new了,有另外的方法去创造对象,不能误认为不再调用构造器,而是采用别的办法进行造对象,java提供的构造器就是用来造对象,所以一个类永远都有构造器,以此防止用户随时造对象的可能性
    2.使用说明:
  • 1.如果没有显式的定义类的构造器的话,则系统默认提供一个空参的构造器 构造器也有权限修饰符,提供默认的空参的构造器 权限修饰符就得看所在类是什么权限修饰符了
  • 2.定义构造器的格式:权限修饰符 类名(与new出来的那个同名)(形参列表){}
  • 3.一个类中定义的多个构造器,彼此构成重载
  • 4.一旦我们显式的定义了类的构造器之后,系统就不再提供默认的空参构造器
  • 5.一个类中,至少会有一个构造器。
•  */
 public class PersonTest {
 public static void main(String[] args) {
 //创建类的对象:new + 构造器
 Person p = new Person();// p.eat();
// Person p1 = new Person(“Tom”);
 // 
 // System.out.println();


//如果没有构造器。。只能通过set方法或自己写一个方法进行调用

}
class Person{
 //属性
 String name;
 int age;
//构造器
public Person(){
	System.out.println("Person().....");
}

public Person(String n){
	name = n;//造对象的同时把name值给赋上
	
}
// 
 public Person(String n,int a){
 name = n;
 age = a;
 }
//方法
public void eat(){
	System.out.println("人吃饭");
}

public void study(){
	System.out.println("人可以学习");
}


3.举例:
一、没有参数的构造方法:当new出来一个对象进行传参时,直接传给构造器中的参数,因为构造器的目的就是为了对属性的初始化操作,之前没有写比如person s=new person();是因为系统默认提供了一个class person(){},实际上也是进行了初始化操作,只是我们不知道而已,现在若果要在构造器的基础上实现构造器的重载操作,那么要将这个也默认的构造器显示的表现出来比如下初始化操作,当测试类中要是没有用到person s=new person()可以不写它,,此时也只能通过get和set方法进行传递参数和接收参数修改私有属性的值,在测试类中get获取的只是修稿过后的属性值
二、有参数的构造方法:person s=new person(String name)直接传给相应的参数,修改私有属性的值通过get方法进行接收,可以没有set方法,但是要是在不同的类中进行调用那么就得有set方法,在测试类中get获取的只是修稿过后的属性值

1.没有参数的构造方法调用

JAVA利用空构造方法创建对象 java空参构造有什么用_开发语言

2.有参数的构造方法调用

JAVA利用空构造方法创建对象 java空参构造有什么用_开发语言_02

3.有参数的构造方法通过set方法修改属性值

在这里插入图片描述

JAVA利用空构造方法创建对象 java空参构造有什么用_java_03