JAVA面向对象二

1 构造方法: 构造函数 构造器 构建器----给成员变量赋初值代码

= 作用: 给成员变量赋初始值
= 与类同名,没有返回值类型(连voi都没有)

=在创建(new)对象是被自动调用

=若自自己不写构造方法,则编译器默认提供一个无参构造方法,

若自己写了构造方法 则不再默认提供

=构造方法可以重载

2 this:指代当前对象,那个对象调用方法它指的就是那个对象

只能用在方法中,方法中访问成员变量之前默认有个this,

=this.成员变量名-----访问成员变量

==成员变量与局部变量同名时,若想访问成员变量则this不能省略

==

  • this.方法名()-----------------调用方法

  • this()---------------------------调用构造方法

class Student {
    String name; //成员变量(整个类中)
    int age;
    String address;
    //局部变量(当前方法中)
    Student(String name,int age,String address){
        this.name = name;
        this.age = age;
        this.address = address;
    }
 void study(){
        System.out.println(name+"在学习...");
    }
    void sayHi(){                       
        System.out.println("大家好,我叫"+name+",今
                           年"+age+"岁了,家住"+address);
        }
    }

3 null: 表示空 没有指向任何对象,若引用值为null,则该引用不能进行任何点操作了,

     若操作则发生NullPointerException空指针异常

4 引用类型数组

 
1)Bomb[] bs = new Bomb[3];
  bs[0] = new Bomb(100,200); //1)给元素赋值需要去new个对象
  bs[1] = new Bomb(200,300);
  bs[2] = new Bomb(220,330);
  //2)若想访问对象的数据,需要通过数组元素去打点
  bs[0].x = 111; //给第1个炸弹的x修改为111  
  System.out.println(bs[1].width); //输出第2个炸弹的宽
  bs[2].move(); //第3个炸弹移动

补充:

1 成员变量:写在类中,方法外-----有默认值

  局部变量: 方法中--------没有默认值

2 java规定: 成员变量和局部变量是可以同名的

= 使用的时候默认采取的就是就近原则

3 内存管理: 由JVM来管理的

  ===堆: new出来的对象(成员变量)

 ===栈 局部变量(包括方法的参数)

===方法区:------

4 数组也是一个对象,所以数组对象也存储在堆中,

  将数组的元素当作成员变量一并存储在堆中

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值