Java学习Day4

Java学习Day04

包装类的使用

| 基本数据类型 |包装类|

基本数据类型、包装类和String类的转化

在这里插入图片描述

自动装箱
int num1 = 10;
Interger num2 = num1;
自动拆箱
int num3 = num2;
String转基本数据类型
String num = "123.456",
int num123456 = int.parsrInt(num);

int对应包装类Integer

有IntegerCache类(提升性能),创建了static final Integer cache []数组,范围**-128~127** 使用自动装箱时,会直接使用数组中的元素
因此,Integer m = 1;与Integer n = 1; m = n 为True

关键字 static

1.修饰属性、方法、代码块、内部类
2.静态变量随着类的加载而加载,早于实例变量
3.可以通过类.静态变量的方法进行调用
4.静态变量在内存中仅存在一份
5.静态方法中,仅能调用静态方法或属性
6.在静态的方法内,不能使用this关键字、super关键字(没有实例对象),从生命周期理解

单例模式

1.饿汉式

class Bank{    
     //1.私有化构造器 
	private Bank(){}
	//2.内部创建类的对象
	private static Bank instance = new Bank();
	//3.提供公共的方法,返回类的对象
	public  static Bank getInstance(){
	return instance;
	//4.对象也应为静态的
	}
}

2.饱汉式

class Bank{    
     //1.私有化构造器 
	private Bank(){}
	//2.声明当前对象,没有初始化
	private static Bank instance = null;
	//3.提供公共的方法,返回类的对象
	public  static Bank getInstance(){
		if(instance == null) {
			instance = new Bank();
		}
	return instance;
	}
}

区别:
1.饿汉式:
坏处:对象加载时间较长;
好处:线程安全;
2.懒汉式:
好处:延迟对象的创建

代码块

1.作用:用于初始化类、对象
2.仅能使用static进行修饰
3.static代码块,随着类的加载而执行,只执行一次
4.普通代码块,随对象创建而执行
5.一个类之间按声明顺序执行代码块
6.无修饰代码块在对象构造函数之前执行

赋值顺序

1.默认,(2.显示/3.代码块)按顺序执行,4.构造,5.对象属性方法

final关键字

1.可用于修饰:类、方法、变量
2.用于修饰一个类:此类不能被继承
3.用于修饰方法:表明该方法不能被重写
4.修饰变量,为常量
final修饰属性:可以赋值的位置:显示、代码块中初始化、构造器中初始化
final修饰形参:表明该形参是一个常量

static final

用于修饰属性:全局常量

抽象类、抽象方法

1.不能用来修饰属性、属性和构造器
2.不能用于修饰私有方法,静态方法,final的方法和类
3.抽象类的匿名子类

Person p = new Person() {
	@Override
	public void eat() {}
}
调用:method1(p);

接口interface

达到多重继承的效果
1.接口使用interface定义
2.Java中,接口和类是两个并列的结构
3.如何定义接口,接口的成员:

3.1. JDK7及以前:只能定义全局常量和抽象方法
>全局常量:public static final的,但可省略不写
>抽象方法:pubic abstract的
3.2. JDK8:除能定义全局常量和抽象方法,可以定义静态方法、默认方法
4.接口中不能定义构造器
5.Java开发中,通过让类去使用(implements)的方法使用接口
如果实例类覆盖了接口中的所有抽象方法,则此实现类就可以实例化
6.Java类可实现多个接口
7.接口和接口之间可以继承,可以多继承
8.接口可以作为形参,体现了多态

代理模式

在这里插入图片描述

工厂模式

	简单工厂,工厂模式,抽象工厂

内部类

成员内部类,局部内部类

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值