java基础学习笔记《三》——对象加载过程、常量、this和super

一、对象的初始化步骤(加载过程)

      a、把类名.class文件加载到内存中(类加载器classloader)

      b、在栈内存中开辟一个变量空间,给类对象的变量使用

      c、new 类名()就会在堆内开辟空间

      d、方法进方法区,用类名做标记,同时,成员变量进堆内存并给出了默认初始化值,如 引用类型为null,整数类型为0;

      e、对成员变量进行显式初始化,如果有构造代码块,可以在构造代码块中对成员变量赋值

      f、执行构造方法中对成员变量的赋值

      g、对象初始化完毕,把堆内存的地址值赋值给栈内存的内变量

二、常量、this、super:字面值常量  如 “123”,final修饰的变量

      final关键字特点:a、修饰的成员方法不能被子类重写   b、修饰的类不能被继承   c、修饰的成员变量就是一个常量

      this关键字:代表本类对象的引用      super关键字:代表父类内存空间的标识

      使用:this.变量:当前类的变量    this(...args):本类的其它构造方法   this.方法名():本类的方法

                super.变量:父类的变量    super(...args):父类的构造方法   super.方法名():父类的方法

      在静态方法中是没有this关键字的,因为静态是随着类的加载而存在,而this是对象创建才存在的。

三、方法重载与方法重写

      方法重载: a、方法名称相同  b、方法的参数类型、个数、顺序至少有一项不同  c、方法返回类型可以不同   d、方法的修饰符可以不同

      方法重写:子类重写父类或者抽象类以及接口中的方法,访问修饰符至少要大于等于要重写的方法的修饰符,并且名称相同,参数、参数类型、参数个数,返回类型要与父类相同

四、访问控制修饰符

       public:对外公开,所有都能访问

       protected:受保护级别,对子类和同一个包中的类公开

       private:私有级别,只有类本身可以访问

       默认:没有修饰符,向同一个包中的类公开(不包含不同包的子类)

       

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值