java学习初探5之构造方法

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内存的主要划分
这里写图片描述

这里写图片描述

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是局部变量,
    }
}

这里写图片描述

(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;
    }
}

这里写图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值