欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

淺談Java中的克隆close()和賦值引用的區(qū)別

 更新時間:2016年09月30日 11:33:22   投稿:jingxian  
下面小編就為大家?guī)硪黄獪\談Java中的克隆close()和賦值引用的區(qū)別。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

學(xué)生類Student:

package 克隆clone;

/*要克隆必須實現(xiàn)這個借口:Cloneable,以標(biāo)記這個對象可以克隆
 Cloneable:此類實現(xiàn)了 Cloneable 接口,以指示 Object.clone() 方法可以合法地對該類實例進(jìn)行按字段復(fù)制。 
 這個接口是標(biāo)記接口,告訴我們實現(xiàn)該接口的類就可以實現(xiàn)對象的復(fù)制了。
 */
public class Student implements Cloneable {
	private String name;
	private int age;

	public Student() {
	}

	public Student(String name, int age) {
		super();
		this.name = name;
		this.age = age;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public int getAge() {
		return age;
	}

	public void setAge(int age) {
		this.age = age;
	}

	// 重寫克隆方法子列才可以調(diào)用
	@Override
	protected Object clone() throws CloneNotSupportedException {
		return super.clone();
	}

}

測試克隆學(xué)生類:

package 克隆clone;

/*
 *	protected void finalize():當(dāng)垃圾回收器確定不存在對該對象的更多引用時,由對象的垃圾回收器調(diào)用此方法。用于垃圾回收,但是什么時候回收不確定。
 *	protected Object clone():創(chuàng)建并返回此對象的一個副本。
 *		A:重寫該方法
 *
 * Cloneable:此類實現(xiàn)了 Cloneable 接口,以指示 Object.clone() 方法可以合法地對該類實例進(jìn)行按字段復(fù)制。 
 * 	這個接口是標(biāo)記接口,告訴我們實現(xiàn)該接口的類就可以實現(xiàn)對象的復(fù)制了。
 */
public class StudentClone {
	public static void main(String[] args) throws CloneNotSupportedException {
		//創(chuàng)建學(xué)生對象
		Student s = new Student();
		s.setName("林青霞");
		s.setAge(27);
		
		//克隆學(xué)生對象
		Object obj = s.clone();
		Student s2 = (Student)obj;
		System.out.println("---------");
		
		System.out.println(s.getName()+"---"+s.getAge());
		System.out.println(s2.getName()+"---"+s2.getAge());
		
		//以前的做法
		Student s3 = s;
		System.out.println(s3.getName()+"---"+s3.getAge());
		System.out.println("---------");
		
		//其實是有區(qū)別的
		s3.setName("劉意");
		s3.setAge(30);
		System.out.println(s.getName()+"---"+s.getAge());
		System.out.println(s2.getName()+"---"+s2.getAge());
		System.out.println(s3.getName()+"---"+s3.getAge());
		System.out.println("---------");
		
		//把克隆的改一下呢?
		s2.setName("克隆改的名稱");
		s2.setAge(66);
		System.out.println(s.getName()+"---"+s.getAge());
		System.out.println(s2.getName()+"---"+s2.getAge());
		System.out.println(s3.getName()+"---"+s3.getAge());
		
		//也就是說把一個對象的引用賦值給一個引用,當(dāng)這個引用發(fā)什么該改變的時候,同一個引用指向的對象會發(fā)生改變,但是克隆的不會變化,
		//把克隆的對象改變他的一些屬性,那么也不會影響到其他的對象的值的改變
		
	}
}

以上就是小編為大家?guī)淼臏\談Java中的克隆close()和賦值引用的區(qū)別的全部內(nèi)容了,希望對大家有所幫助,多多支持腳本之家~

相關(guān)文章

  • 關(guān)于idea中ssm框架的編碼問題分析

    關(guān)于idea中ssm框架的編碼問題分析

    在實際開發(fā)中需要將操作系統(tǒng)編碼、文件編碼、頁面編碼以及tomcat服務(wù)器編碼保持一致,而tomcat在默認(rèn)情況下是使用UTF-8,這就使得其打印的日志文件出現(xiàn)中文亂碼,因此在一般情況下,只需要將tomcat服務(wù)器的編碼改為GBK即可
    2021-06-06
  • SpringMVC 中文亂碼的解決方案

    SpringMVC 中文亂碼的解決方案

    這篇文章主要介紹了SpringMVC 中文亂碼的解決方案,幫助大家更好的理解和學(xué)習(xí)使用SpringMVC,感興趣的朋友可以了解下
    2021-04-04
  • JavaWeb實體類轉(zhuǎn)為json對象的實現(xiàn)方法

    JavaWeb實體類轉(zhuǎn)為json對象的實現(xiàn)方法

    這篇文章主要介紹了JavaWeb實體類轉(zhuǎn)為json對象的實現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • Java零基礎(chǔ)精通方法篇

    Java零基礎(chǔ)精通方法篇

    方法,也稱函數(shù),如果想要重復(fù)一段或者多段代碼塊的使用,可以將這些代碼封裝成一個方法,方法具體表現(xiàn)為某種行為,使用方法可以提高代碼的復(fù)用性
    2022-05-05
  • Java并發(fā)之Semaphore工具類r的全面解析

    Java并發(fā)之Semaphore工具類r的全面解析

    Semaphore 是 java.util.concurrent中非常有用的并發(fā)編程工具類,它通常被用于限制對某個資源或資源池的并發(fā)訪問數(shù)量,下面我們就來深入了解一下Semaphore的具體使用吧
    2024-02-02
  • Spring Boot打開URL出現(xiàn)signin問題的解決

    Spring Boot打開URL出現(xiàn)signin問題的解決

    這篇文章主要介紹了Spring Boot打開URL出現(xiàn)signin問題的解決,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-12-12
  • Spring boot + mybatis + Vue.js + ElementUI 實現(xiàn)數(shù)據(jù)的增刪改查實例代碼(二)

    Spring boot + mybatis + Vue.js 

    這篇文章主要介紹了Spring boot + mybatis + Vue.js + ElementUI 實現(xiàn)數(shù)據(jù)的增刪改查實例代碼(二),非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2017-05-05
  • 詳解springboot+aop+Lua分布式限流的最佳實踐

    詳解springboot+aop+Lua分布式限流的最佳實踐

    這篇文章主要介紹了詳解springboot+aop+Lua分布式限流的最佳實踐,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-06-06
  • Java日常練習(xí)題,每天進(jìn)步一點點(5)

    Java日常練習(xí)題,每天進(jìn)步一點點(5)

    下面小編就為大家?guī)硪黄狫ava基礎(chǔ)的幾道練習(xí)題(分享)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧,希望可以幫到你
    2021-07-07
  • IDEA2020 1.1中Plugins加載不出來的問題及解決方法

    IDEA2020 1.1中Plugins加載不出來的問題及解決方法

    這篇文章主要介紹了IDEA2020 1.1中Plugins加載不出來的問題,本文還給大家提到了IDEA 2020.1.1 找不到程序包和符號的問題,感興趣的朋友跟隨小編一起看看吧
    2020-06-06

最新評論