Java面向对象进阶

文章介绍了Java中的static关键字,包括静态成员变量和方法的访问方式,以及注意事项,如静态方法不能直接访问实例成员。同时,提到了工具类的使用场景和构造器的限制。文章还讨论了两种单例模式——饿汉式和懒汉式,并概述了Java的继承机制,强调了子类构造器默认先调用父类无参构造器的事实。最后,@Override注解的作用也被提及,用于方法重写时的校验。
摘要由CSDN通过智能技术生成

static静态关键字:

  • 可以被共享访问、修改

  • 静态成员变量,静态成员方法

访问方式:

  • 类名.静态成员变量(推荐)

  • 对象.静态成员变量

注意事项:

  • 静态方法只能访问静态成员,不能直接访问实例成员

  • 实例方法可以访问实例成员静态成员

  • 静态方法中不可以出现this关键字

工具类:

  • 无需创建对象,直接使用static方法

  • 无需使用构造器,因此把构造器设为private

代码块:

静态代码块:

  • 格式:static {}

  • 随着类的加载而加载,并自动触发,只执行一次

构造代码块(实例代码块):较少见

  • 格式:{}

  • 每次创建对象时都会执行,并且在构造器之前执行

设计模式

单例模式

指一个类只能创建一个对象

饿汉单例设计模式:

  • 定义一个类,把构造器私有(防止别人创建对象)

  • 定义一个静态变量存储一个对象(new一个对象,提供对象)

懒汉单例模式:

真正需要对象的时候,才会创建一个对象(延迟加载对象)

  • 定义一个类,把构造器私有(防止别人创建对象)

  • 定义一个静态变量存储一个对象(此处不new,值为null,且为private)

  • 提供public static方法返回一个单例对象

继承:

关键字:

extends

  • 子类可以继承父类的属性和行为,但是子类不能继承父类的构造器

  • Java是单继承模式:一个类只能继承一个直接父类

  • Java不支持多继承,但是支持多层继承

  • Java中所有的类都是Object类的子类

继承后子类的构造器的特点:

子类的全部构造器默认先访问父类的无参构造器再执行自己

即默认加上了:super(),不写也存在

调用父类的有参构造器:

super(x, y);

this同理:

this(), this(x, y);

@Override

  • 重写校验注解,加上之后,确保该方法必须正确重写

  • 提高程序可读性

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值