java基础巩固-day2

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


static

修饰成员变量

称为静态成员变量(类变量),属于类,只能在类主体中定义。随着类加载只在堆内存中存在一份,可以被共享访问。
可以通过 类名.变量名 访问(推荐)
也可以通过 对象名.变量名 访问 (不推荐)

区别于实例成员变量,属于对象,只能通过 对象名.变量名 访问 。

修饰成员方法

静态成员方法(类方法),属于类,通常用类名访问。只能访问静态成员

使用场景:
静态方法:执行一个通用功能,或需要方便访问。
实例方法:表示对象自己的行为,且方法中需要直接访问实例成员,则必须声明成实例方法。

内存机制

静态代码块

static{}
特点:通过static关键字修饰,随着类加载而加载,自动触发并只执行一次。
使用场景:在类加载的时候做一些静态初始化操作,以便后续使用。

构造代码块 (很少用)
{}
特点:每次创建对象,调用构造器执行时,都会执行该代码块中的代码,并在构造器执行前执行。
使用场景:初始化实例资源

饿汉单例设计模式实现

1.构造器私有化
2.使用静态成员变量存储对象
饿汉式

懒汉单例设计模式实现

在真正需要该对象时,才去创建一个对象

1.构造器私有化
2.使用静态成员变量存储对象
3.提供一个返回单例对象的方法
懒汉式

public static SingleInstance getInstance(){
	if(instance == null){
		instance = new SingleInstance();
	}
	return instance;
}

权限修饰符

用来控制一个成员能够被访问的范围。
可修饰成员变量、方法、构造器、内部类。

在这里插入图片描述

final

修饰类:表示该类为最终类,不能被继承。
修饰方法:最终方法,不能被重写。
修饰变量:变量第一次赋值后不能再次被赋值。如果是基本类型,数据值不能改变,如果是应用类型,地址值不能改变。

常量

使用public static final修饰的成员变量,必须有初始化值,且程序执行过程中其值不能被更改。

枚举

枚举是java中的一种特殊类型。
其作用是 做信息的标志和信息的分类。
格式:
enum 枚举名称{
枚举类实例的名称
}

枚举都继承java.lang.Enum。枚举类都是最终类,不可被继承,构造器私有,不能对外创建对象

多态

同类型的对象,执行同一个行为,会表现出不同的行为特征。
常见形式:
父类类型 对象名称 = new 子类构造器;
接口 对象名称 = new 实现类构造器;

多态类中的成员访问特点:
方法调用:编译看左边,运行看右边。
变量调用:编译看左边,运行也看左边。(多态侧重行为多态)

多态的前提:
有继承/实习关系;有父类引用指向子类对象;有方法重写。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值