执行顺序:

本文详细介绍了Java中的代码块类型,包括局部、构造和静态代码块,以及它们的执行顺序。强调了静态代码块在类加载时仅执行一次的特点。此外,文章还深入探讨了多态的概念,指出多态的三个前提条件,并阐述了多态在访问成员变量和方法时的行为。最后,讨论了多态的优点和如何通过向下转型访问子类特有的方法。
摘要由CSDN通过智能技术生成

代码块:就是被一对大括号,所扩起起来的代码。
代码块,根据定义的位置不同,分为:局部代码块,构造代码块,静态代码块。同步代码块(后面讲)
局部代码块,定义在方法中的代码块。
构造代码块:定义在类中方法外,跟构造方法平级
静态代码代码块:定义在类中方法外,用static所修饰的代码块、

创建对象时,会调用构造代码块,而且还是优先于构造方法执行。每次创建对象,都会调用构造代码块。
静态代码块,随着类的加载而加载,优先于构造代码块执行。且只会执行一次。在静态代码块里面,只能访问静态成员。

静态代码快先执行(只能访问静态成员)--->构造代码块--->构造方法;

//多态:指的是一种事物,在不同时刻所表现出的不同状态。
//所以,猫既可以表现为猫这种形态,也可以表现为动物的这种形态。
// Cat cat = new Cat();  Animal cat = new Cat();
//1.多态的前提,必须要有继承,如果没有继承,那么多态就无从谈起。
//2.多态需要有,方法重写,当然你可以不重写,但是就失去了多态的意义。
//3.多态: 父类引用 执行子类对象    Animal an = new Cat();
               左边       右边
    Animal an = new Cat();
   //多态的方式,来访问(成员变量)的特点:编译看左边,运行也看左边,
  //多态的方式,来访问(成员方法)的特点:编译左边,运行看右边, 以子类重写的为准,当然你没有重写,那就调用父类,当然多态我们都会去重写父类的方法。
//多态的构造方法特点:先调用父类的构造方法,再调用子类的构造方法

多态优点:可以提供代码的扩展性;多态的弊端,不能调用子类特有的成员。
向下转型:
     如果要调用子类特有的方法,可以向下转型;格式:子类名 +方法名(随便起)=(子类名)+父类方法名;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值