<span style="font-size:18px;"> 一、关于Java类的构造函数
1、语法
[修饰符列表] 构造方法名(形式参数列表){
方法体;
}
2、构造方法的方法名必须和类名一致
3、构造方法的作用是什么?
①创建对象
②给成员变量赋值(初始化成员变量)
4、各个构造方法之间的关系就是函数的重载</span>
5、关于Java类中构造函数的知识
当我们不写构造方法时,系统会默认给出一个无参数的构造方法,但是如果一旦手动创建了一个构造方法时,此时系统将不会提供无参数的构造方法,此时如需要调用无参数的构造方法,必须是自己手动创建的
6、 成员变量到底什么时候赋值?
构造方法被调用的时候
7、构造方法没有任何返回值。
对应的代码片段
<div>{CSDN:CODE:User</div><div>package hx.bao.java;
//创建一个名为UserNO1的类
public class UserNO1 {
//成员变量的定义
int age;
String name;
public UserNO1() {//无参数的构造方法
//System.out.println("我是无参数的构造方法");
/*
* age=0;
* name=null;这是系统自动给的,只不过没有明确的写出来
* */
}
public UserNO1(int _age) {//无参数的构造方法
age=_age;
/*
* name=null; 理由如上
* */
//System.out.println("我是一个参数的构造方法"+age);
}
public UserNO1(String _name){
/*
* age=0; 理由如上
* */
name=_name;
}
public UserNO1(int _age ,String _name){
age=_age;
name=_name;
}
}</div><div>//创建主函数</div><div><p>package hx.bao.java;</p><p>public class UserMain {</p><p> public static void main(String[] args) {
// TODO Auto-generated method stub
/*构造方法的调用*/
UserNO1 u1=new UserNO1();
UserNO1 u2=new UserNO1(34);
UserNO1 u3=new UserNO1("张三");
UserNO1 u4=new UserNO1(26,"李四");
System.out.print(u1.age+"、");
System.out.println(u1.name);
System.out.print(u2.age+"、");
System.out.println(u2.name);
System.out.print(u3.age+"、");
System.out.println(u3.name);
System.out.print(u4.age+"、");
System.out.println(u4.name);
}</p><p>}</p></div><div>}</div>
8、Java内存的主要划分
①接下来解释一下方法区,因为堆区和栈区是我们经常接触的,关于方法区可能接触的比较少,
②所谓的方法区其实就是存储class文件的原代码,还有存储一些静态的变量、常量。