java基础之equal()方法、static关键字、单例设计模式
来源:互联网 发布:留学低龄化的数据 编辑:程序博客网 时间:2024/06/05 20:18
一、 Object 的equals()方法
1、==
(1)基本数据类型:根据基本数据类型的值判断是否相等。相等就返回true,反之返回false。
注:两端的数据类型可以不同,在不同的情况下,也可以返回true。
(2)引用数据类型:比较引用变量的地址值是否相等。
2、equals()
(1)只能处理引用类型变量。
(2)在object中,equals()仍然比较的是两个引用变量的地址值是否相等。
注:String、包装类、File类重写了equals()方法,比较的两个实体的内容是否相等。
二、 包装类、基本数据库类型、String类之间的转换
三、static(静态的)可以用来修饰属性、方法、代码块、内部类
(1)static修饰属性(类变量):由类创建的所有对象都共用这一属性,当其中一个对象对此属性进行修改,其他对象在调用这一属性时,其值是某一对象修改后的值。
类变量随类加载时加载,而且独一份。静态的变量,可以直接通(类.类变量)这种形式来调用。类变量的加载是早于对象的,所以当有了对象以后,可以“对象.类变量”,可行。但是“类.实例变量”不可行。
类变量存在于静态域中。
(2)static修饰方法(类方法):由类创建的所有对象都共用这一方法。随着类的加载而加载,可以直接通过“类.类方法”的方式调用。内部可以调用静态的方法或者属性,而不能调用非静态的方法或者属性。但是,非静态的方法中可以调用静态的方法或者属性。
注:静态结构(static的属性、方法、代码块、内部类)的声明周期要早于非静态的结构,同时被回收要晚于非静态的结构。
静态方法内,是不可以有this或者super的。
四、单例设计模式:解决问题,使得一个类只能创建一个对象。
//单例模式(饿汉式)
class SingleTon{
//1、私有化构造器,使得在类的外边已经不能调用此构造器
private SingleTon() {
}
//2、自己在类的内部创建类的对象
private static SingleTon singleTon =new SingleTon();
//3、私有化此对象,通过公共的方法来调用
//此公共的方法只能通过类来调用,因此设置成static,同时类的实例也必须设置成static的
public static SingleTon getinstance(){
returnsingleTon;
}
}
//懒汉式单例模式:可能存在线程安全问题
class SingleTon1{
//1、私有化的构造器
private SingleTon1(){}
//
private static SingleTon1 singleTon1 =null;
//
public static SingleTon1 getinstance(){
if(singleTon1 ==null){
singleTon1 =new SingleTon1();
}
returnsingleTon1;
}
}
根据我自己理解饿汉模式和懒汉模式各有优缺点:
饿汉模式一般不会出现多线程同步的问题,但是如果类对象占用的内存很大时,不论使用或者不使用,对象一定会被分配内存,这样会内存的很大浪费。
懒汉模式一般在使用创建对象方法时才会为对象分配内存,这点比饿汉模式要好,但是,懒汉模式在多线程时,会存在同步问题,这点以后在多线程中在跟大家分享解决办法。
- java基础之equal()方法、static关键字、单例设计模式
- 黑马程序员 Java基础 面向对象:static关键字 main函数 单例设计模式
- 黑马程序员——Java基础:static关键字、单例设计模式
- Java基础(面向对象二——static关键字、主函数定义和单例设计模式)
- 黑马程序员笔记——Java面向对象之static关键字和单例设计模式
- 方法的重载与重写的关系(区别);static关键字;单例设计模式;继承;
- 【幻化万千戏红尘】qianfengDay07-java基础学习:static、设计模式之单例模式
- Java知识碎片整理(5)——static关键字与单例设计模式
- JAVA基础之static关键字方法总结
- java学习之路 之 高级类特性2-关键字static、类变量、类方法、单例模式
- 课时42|封装--static关键字、设计模式之单例模式
- java基础之----设计模式单例设计模式
- JAVA基础知识点(三)--this,static,main函数,单例设计模式
- java之单例设计模式,继承,final关键字总结
- java基础之设计模式之单例模式
- 关键字static ,单例模式
- static关键字----->单例模式
- Java笔记2 面向对象<2>static关键字、main函数、静态运用、单例设计模式
- Java金融信息交换引擎 QuickFIX/J
- Bean和Map的互转+Demo
- 狡猾的商人_bzoj1202_差分约束
- Hadoop安装说明
- c#中单元测试
- java基础之equal()方法、static关键字、单例设计模式
- bridge和数码相片处理方式
- R语言快餐教程(1) - 我们开始做统计吧
- http请求方法(GET、POST)
- 使用IDEA进行Spark开发(一)-IDEA的配置
- 十个Linux的网络监控命令
- 蓝牙连接以及协议数据解析
- 跨时代的分布式数据库 – 阿里云DRDS详解
- 函数局部变量的返回