java中的一些小知识

本文介绍了Java编程中的一些核心概念,包括执行顺序(静态代码块、匿名代码块、构造方法)、继承与初始化、final关键字的作用、构造方法的使用、多态与重写、方法的重载以及访问权限修饰符。此外,还探讨了抽象类与接口的区别,以及类的继承与实现规则。
摘要由CSDN通过智能技术生成

java中的一些小知识

  • java在执行的时候先执行静态代码块>匿名代码块>构造方法,静态的代码块是随着类的加载而加载的
  • 子类实例化的时候如果父类没有初始化会先对父类进行初始化,在初始化子类,也就是先执行父类的构造方法,在执行子类的构造方法
  • 定义了有参构造的时候,无参构造必须被显式定义
  • 通过finnal定义的类不能被继承
  • super()与this()为初始化父类与当前类的操作,两者必须被定义在第一行,故两者不能被同时显式使用,两者会产生冲突
  • 父类的引用可以指向子类的实例,即向上转型
  • 子类可以直接进行向上转型,此时声明的对象可以直接调用父类的方法,但不能调用子类独有的方法,但可以调用被子类重写的父类方法,此时使用的是子类的方法,不会调用父类的同名方法
  • 重写与多态只针对方法,不针对属性
  • 重载针对方法,必须满足参数不一样,返回值也可以不一样
  • public>protected>default>private
  • 抽象类只定义方法的约束,原则上不定义方法的具体实现,但也可以对方法进行实现,接口完全只能定义方法的约束
  • 继承了抽象类的子类必须实现抽象类的所有方法
  • 抽象类不能被实例化
  • 存在抽象方法的类必须为抽象类,抽象类中可以定义普通方法
  • 抽象类只能单继承
  • 接口中所有方法的定义都是抽象的,即public abstract void test(){}
  • 一个类可以实现多个接口,实现了接口的类必须实现其中的所有方法
  • 向下转型可能导致精度损失
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值