【java基础资料整理】

酝酿了几个月,终于是想写自己的博客了。之前听说写博客能更好的学习,所以我就滚进来了!

在渐渐认识到自己的缺陷和不足之后,开始加深自己对java基础的学习,通过视频、博客收集了一些资料。下面分享给大家!

整理之中的意外收获:

1、java虚拟机监控命令:打开cmd窗口-->输入jvisualvm。第一次打开的话可能会稍微久一点,以后就好了。

2、两个变量切换的3种方式:

a、采取第三方变量

int a=8,b=9;
int temp;
temp = b;
b=a;
a=temp;

b、不通过第三方变量

int a=8,b=9;
a=a+b;
b=a-b;
a=a-b;
c、采取^的方式

int a=8,b=9;
a = a^b;
b = a^b; //(a^b)^b = a = 8
a = a^b; //(a^b)^a = b = 9

3、java的垃圾回收机制:在堆内存当中, 不再被使用的实体将会在垃圾回收机制中进行不定时的清除

4、二维数组和一维数组的定义方式:int[] x,int x[] ; int [] [] y,int y[][], int[] y[];

下面进入正题

单例模式

单例模式的用意如下:1、确保一个类只有一个实例被创建

2、提供一个对对象的全局访问指针

3、在不影响单例类的客户端的情况下允许有多个实例

饿汉式:

饿汉式存在的问题:由于实例不用做创建,是直接返回创建好的实例,所以饿汉式节省了时间上的消耗,但是由于实例本身是静态的,所以会一直占用内存空间

	public class Single{
	   private static Single s = new Single();
	   private Single(){}
	   public static getInstance(){
		return s;
	   }
	}
懒汉式:

一、

	/**
	*这种懒汉式不适合多用户同时调用
	*/
	public class Single{
	    private static Single s = null;
	    private Single(){}
	    public static  Single getInstance(){
		if(s==null)
		   s = new Single();
		return s; 
	    }
	}
二、getInstance加锁

	/**
	*这种加锁方式在多用户调用时,容易使内存损耗过多
	*/
	public class Single{
	    private static Single s = null;
	    private Single(){}
	    public static Single synchronized getInstance(){
		if(s==null)
		   s = new Single();
		return s; 
	    }
	}
三、内部双重判断和同步锁

	/**
	*懒汉式最优方法,这种方式可以防止锁的多次创建,内存损耗较第一种方式更低
	*/
	public class Single{
	    private static Single s = null;
	    private Single(){}
	    public static Single  getInstance(){
		if(s==null){
		   synchronized(Single.class){
			if(s==null)
			   s = new Single();
		   }
		}
		return s; 
	    }
	}

java类与类之间不能多继承而可以多实现的原因
多继承继承的是另外一个类,而继承的方法有方法体。实现的接口中的方法是没有方法体的, 所以即使实现的多个接口间有相同的方法但是由于没有方法体,所以在实现类中实现该方法 之后会将所有接口中与该方法一致的方法进行覆盖。所以可以实现多实现而不可以实现多继承。  接口之间可以进行多继承,如果继承的接口间存在相同方法时,需要超类之间的方法返回值一致。  否则接口之间的多继承无法实现。

面向对象编程的三大特性:多态、继承、封装


判断引用对象数据类型关键字:A instanceof Object。instanceof一般用于子类类型有限的情况下。 




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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值