面向对象的构造方法

Java构造方法详解:初始化与重载实例

构造方法:
 *     在创建对象的时候默认会调用构造方法,在堆中进行存储,主要目的是为了对成员变量进行初始化操作
 *     语法:
 *         修饰符:4个,后面再讲(public、protected、[default]、private)
 *         返回值:构造方法没有返回值
 *         方法名:构造方法的名称必须和类名保持一致
 *         参数列表:和普通方法一样
 *         方法体:主要是为成员变量进行初始化操作
 *      注意:
 *          1、当程序中没有显示的声明一个构造方法的时候,系统会给你一个默认的不带任何参数的空构造方法来供你创建对象使用
 *          2、当你在程序中显示的声明了一个非空的构造方法,那么java编译器就不会再给你那个空参的构造方法了,
 *              但是这时候你又想用空参的构造方法,那么只有再定义一个构造方法了
 *          3、一个类中可以有多个构造方法
 *
 *   重载(overload):在一个类中可以有多个同名的方法,但是要求方法的参数列表不同
 *         三方面的不同:
 *           1、参数个数不同
 *           2、参数类型不同
 *           3、参数顺序不同
 *
 *           注意:
 *              一般都需要使用构造方法的重载,因为成员变量可能会有很多个,但是我们只需要对部分成员变量进行初始化操作
 
public class Teacher {
 
    //属性(成员变量,全局变量)
    String name;
    int age;
 
    public Teacher(){
        System.out.println("空构造方法被执行了... ...");
    }
 
    //定义一个构造方法
    public Teacher(String tname,int tage){
        System.out.println("Teacher(String name,int age)被执行了... ...");
        name = tname;
        age = tage;
    }
 
    public Teacher(int tage,String tname){
 
    }
 
    public Teacher(int tage){
 
    }
 
    public void test(String name,int age){
 
    }
 
    public void test(int age,String name){
 
    }
 
    public static void main(String[] args) {
        //创建对象
        Teacher teacher1 = new Teacher();
        teacher1.name = "娃哈哈";
        teacher1.age = 18;
        System.out.println(teacher1.name);
        System.out.println(teacher1.age);
        Teacher teacher2 = new Teacher("你好",20);
        System.out.println(teacher2.name);
        System.out.println(teacher2.age);
    }
}
 

Java中的构造方法是一种特殊的方法,用于创建对象并初始化对象的属性。构造方法的名称必须与类名相同,没有返回类型(甚至没有void),并且在使用new关键字创建新对象时自动调用构造方法有以下特点: 1. 构造方法必须与类名相同,且没有返回类型。 2. 构造方法可以有参数,也可以没有参数。 3. 如果没有定义任何构造方法,Java会自动提供一个默认构造方法,即没有参数的构造方法。 4. 如果定义了有参数的构造方法,Java将不再提供默认构造方法。 5. 构造方法可以重载,即同一个类中可以定义多个构造方法,只要它们的参数类型、个数或者顺序不同即可。 构造方法的作用是创建对象并初始化对象的属性,如下面的例子: ``` public class Person { private String name; private int age; public Person(String name, int age) { this.name = name; this.age = age; } public String getName() { return name; } public int getAge() { return age; } } ``` 在上面的例子中,Person类有一个有参数的构造方法,可以用来创建一个Person对象并初始化对象的属性。例如: ``` Person p = new Person("Tom", 20); System.out.println(p.getName() + " " + p.getAge()); ``` 输出结果为: ``` Tom 20 ``` 这里使用了有参数的构造方法来创建Person对象,并设置了对象的属性值。注意,在构造方法中使用了关键字this来引用当前对象,以便在构造方法中访问对象的属性和方法。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值