欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

java学习初探5之构造方法

程序员文章站 2022-07-15 18:25:54
...

1.java类的构造方法
(1)构造方法语法
构造方法的作用:创建对象、初始化成员变量。
构造方法主要是用来创建类的实例化对象,可以完成创建实例化对象的初始化工作。
声明格式:构造方法修饰词列表 类名(方法参数列表)
构造方法修饰词列表:public proteced private
类的构造方法和普通方法一样可以重载。

public class User{
private int age;
User(){}
User(int _age){ age=_age;}
}

构造方法的特点:
、构造方法名称必须与类名一致
、构造方法不具有任何返回值类型,即没有返回值,关键字void也不能加入,加入后就不是构造方法,而是普通方法。
、任何类都有构造方法,如果没有显示的定义、则系统会为该类定义一个默认的构造器,这个构造器不含任何参数,如果显示的定义了构造器,系统就不会创建默认的不含参数的构造器了。
类{
1.成员变量
2.成员方法
3.构造函数
4.静态方法(类名.方法调用静态)
}
2.对象和引用
(1)java内存的主要划分
java学习初探5之构造方法

java学习初探5之构造方法

public class Test01 {
public static void main(String[] args) {
    User user=new User();
    user=null;//user 赋值为空,不再引用User对象,则User对象变成垃圾 等待回收
    system.out.println(user.name);//使用一个空的引用去访问成员,编译可通过,运行时出错。(空指针异常)   
}
}

3.参数传递问题
(1)传递的数据是基本数据类型

public class Test02 {
    public static void m1(int i) {
        i++;
        System.out.println("m1:"+i);//11        
    }
    public static void main(String[] args) {
        int i=10;
        m1(i);
        System.out.println("main:"+i);//10,因为这里的i是局部变量,
    }
}

java学习初探5之构造方法

(2)传递的数据是引用数据类型

public class Test03 {
    public static void m1(Animal a) {
        a.age++;
        System.out.println("m1:"+a.age);//11        
    }
    public static void main(String[] args) {
        Animal a=new Animal(10);
        m1(a);
        System.out.println("main:"+a.age);//11 两个a指向的同一个对象
    }
}
class Animal{
    int age;
    public Animal(int _age) {
        age=_age;
    }
}

java学习初探5之构造方法

相关标签: java 构造方法