【java基础知识点】

Java知识点

学习java时不要背代码,学习新技术或知识点先学习基本原理和基本语法
本篇内容为学习总结,包含了javaSE重要的知识点

JDK

  • java_jdk介绍

请添加图片描述

  • java运行原理示意图

请添加图片描述

基本数据类型转换

请添加图片描述

  • byte,short,char三者计算是首先转化为int类型

  • byte -127~128

请添加图片描述

继承细节

  • 子类构造器中必须用super()调用父类构造器,如果父类中有无参构造器,子类中super()可以省略不写,默认在子类构造器第一句调用。
  • 父类中的private属性和方法在子类中不能直接调用,要用公共方式访问 call 函数名 ();
  • super()和this()都只能存在构造器的第一行,不能同时存在一个构造器内
  • 在子类中调用函数的方法
    • 函数名() 调用本类的函数,若本类无此函数,向上搜索
    • super.函数名() 这种办法可以直接跳过本类,往父类层层搜索

方法重写

  • 子类中重写的函数的类型必须是父类函数类型的子类
  • 子类中不能缩小父类方法的访问权限
    • 访问权限 public > protected > 默认 > private(比如父类是 public,子类只能是 public)
  • 方法重写和方法重载比较
    请添加图片描述

多态

  • 方法的多态

    • 方法重载:类中某个函数有重载,在其它类中调用此函数时,可以传入不同的参数,这是该方法的多种状态的体现

    • 方法重写:子类B 中重写了父类 A 中的 say 方法

      多态的体现:new A().say 和 new B().say 为两种状态

  • **对象的多态 **

    • Animal 和 Dog, Cat 为父子类关系,可以 Animal animal = new Dog(),编译类型为 Animal,运行类型为 Dog。重新赋值 animal = new Cat(),运行类型变为Cat,编译类型不变。

    • 向上转型:父类引用指向子类对象

      语法:Animal animal = new Dog();

      如 Animal 中有 cry 方法,Dog 类中重写了cry,主函数中是这样一段代码

      =======================

      Animal animal = new Dog();

      animal.cry();

      =======================

      开始运行时,先从 Dog 类中查找方法,如果 Dog 类中有 cry 方法,则执行。如果没有 cry,则向父类中查找 cry。

      • 补充一点:animal不能调用 Cat 类中的特有成员 ( 特有成员是父类中没有,子类中新写的成员)
    • 向下转型:把编译类型 Animal 转化为 Dog 后,就可以调用子类中的特有成员。

      语法:Dog dog = (Dog) animal;

      dog 子类引用,指向 Dog 对象,原来的 animal 为父类引用,指向 Dog 对象。

    • 对于属性来说只看左侧的编译类型,base.count输出父类的count
      请添加图片描述

hashCode

  • **全类名:**包名加类名

  • 没有重写 hashCode 的话输出 16 进制

  • 当输出一个对象时自动调用 toString 方法,下面两种方法效果相同
    请添加图片描述

Finalize

​ Car bmw =new Car(“宝马”);

​ bmw = null

  • bmw 指向堆中 new 的对象,然后将 bmw 置空,那么这个 new 的对象没有了引用指向它,这时垃圾回收器就会回收堆中的这个对象,在回收之前,会调用该对象的 finalize 方法(至少有一个引用指向该对象,该对象就不会销毁)
  • 如果一个对象变成垃圾后,不是立刻执行该函数。那样的话垃圾回收器需要实时监测有无垃圾,会浪费不必要的性能。而是会根据垃圾回收算法执行

断点调试

请添加图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值