java构造方法

Posted mojiangzz

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java构造方法相关的知识,希望对你有一定的参考价值。

构造方法

1.构造方法的名字必须和类名一致。

2.构造方法没有返回值。

3.当我们没有显示的定义一个构造方法时,系统会添加一个公共的不带参的方法。

4.在我们使用new创建对象是会调用构造方法。

5.构造方法的作用是为了初始化对象中的属性。

 

代码理解:

public class Student
int id;
String name;
int age;
String sex;
//创建构造方法
public Student(int _id, String _name, int _age, String _sex)
System.out.println("Student构造方法!!");
id = _id;
name = _name;
age = _age;
sex = _sex;


void eat()
System.out.println(name + "吃炸鸡!!!");

测试类:

public class Test

public static void main(String[] args)
/*
* 1.在栈空间分配了一个空间s1
* 2.在堆空间分配了一个空间
* 2.1 在我们使用new分配空间时,就会调用构造方法
* 3.使用栈空间的变量(对象)指向堆空间分配的内存地址
* 4.同过对象给堆空间进行赋值
* */

Student stu = new Student(1, "黄蓉", 18, "女");

System.out.println(stu.id);
System.out.println(stu.name);

Student stu1 = new Student(2, "郭靖", 22, "男");
System.out.println(stu1.id);
System.out.println(stu1.name);

 

this

this : 当前类对象
* this.属性 : 当前类属性
* this.行为 : 调用当前类行为
* this():调用当前类的构造方法
* -使用this()调用当前类构造方法时,必须放到第一行

//创建一个教师类

public class Teacher

private String name; //教师名称

private double salary; //工资

private int age; //年龄

//创建构造方法,为上面的3个属性赋初始值
public Teacher(String name,double salary,int age)

    this.name=name;    //设置教师名称
    this.salary=salary;    //设置教师工资
    this.age=age;    //设置教师年龄

创建一个测试类
public class Test
public static void main(String[] args)
    Teacher teacher=new Teacher("王刚",5000.0,45);
    System.out.println("教师信息如下:");
    System.out.println("教师名称:"+teacher.name+"\n教师工资:"+teacher.salary+"\n教师年龄:"+teacher.age);


最后结果为:
教师信息如下:
教师名称:王刚
教师工资:5000.0
教师年龄:45

以上是关于java构造方法的主要内容,如果未能解决你的问题,请参考以下文章

Java thread类构造方法问题

Java语言中,构造方法和一般方法有何不同

Java中,什么是构造方法?什么是构造方法重载?什么是复制构造方法?

java中构造方法和方法有啥区别

java中构造方法和拷贝构造方法是啥意思

Java中,构造方法和实例化对象之间的关系