Java相关知识

  1. ClassLoader将xx.class文件加载到JVM中的方法区内存区,代码片段在内存中只有一份,但是重复调用时,会在栈内存空间分配内存。 栈内存中分配方法运行时所需要的内存空间。方法调用时,会给该方法分配独立的内存空间,在栈中分配,此时发生压栈动作,当方法调用结束时,给方法分配的内存空间会全部释放,此时发生弹栈动作。
  2. 局部变量运行阶段在栈中分配内存
  3. JVM中内存空间包含但不限于 栈内存,堆内存,方法区内存
  4. 方法重载:不同的方法名字一样,但是参数不同。功能是近似的才有必要进行重载
    方法重载和返回值类型,修饰符列表无关,和方法名和参数列表有关
  5. 实例变量系统赋初始值是在构造函数执行过程中完成的。
  6. 构造方法的作用:一是创建对象,二是创建对象的同时,初始化实例变量的内存空间。(也就是赋值)
  7. 参数传递时:传递的都是变量里存放的东西,基本数据类型变量里保存的是值,引用数据类型里保存的是对象的地址。
  8. this 使用一定要在有实例时,表示的是当前这个对象
  9. static方法执行过程中没有“当前对象”,没有实例,是可以通过类名访问的(当然也可以通过引用访问),此时“上下文”没有“当前对象”,也就没有this
  10. this的使用场景:一是在实例方法中 代表当前对象 二是构造方法中 使用当前的构造方法调用其他的构造方法
  11. 带static的方法既可以采用类名的方式访问,也可以采用引用的方式访问。即使使用引用访问,实际上执行的时候和引用指向的对象无关,会被默认转换成类名访问。所以此时不会出现空指针异常。比如建立一个实例,将它指向null,然后访问带static的方法,不会出现异常。
  12. 静态变量在类加载的时候初始化,内存已经开辟了
  13. 静态代码块 子类加载时执行,并且只执行一次。可以定义多个静态代码块。static{}
  14. 单继承,不能继承私有的和构造方法。其他的都可以继承。隐式继承java.lang.Object
  15. 在这里插入图片描述
  16. super保存的不是地址,不是对父类的引用,super代表的只是当前对象继承的父类型特征。当子类和父类中有相同数据时,想在子类中访问父类中的特征,则使用super
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值