第一篇:java事務(wù)處理總結(jié)
[轉(zhuǎn)載] Java事務(wù)處理總結(jié)
一、什么是Java事務(wù)
通常的觀念認(rèn)為,事務(wù)僅與數(shù)據(jù)庫相關(guān)。
事務(wù)必須服從ISO/IEC所制定的ACID原則。ACID是原子性(atomicity)、一致性(consistency)、隔離性(isolation)和持久性(durability)的縮寫。事務(wù)的原子性表示事務(wù)執(zhí)行過程中的任何失敗都將導(dǎo)致事務(wù)所做的任何修改失效。一致性表示當(dāng)事務(wù)執(zhí)行失敗時(shí),所有被該事務(wù)影響的數(shù)據(jù)都應(yīng)該恢復(fù)到事務(wù)執(zhí)行前的狀態(tài)。隔離性表示在事務(wù)執(zhí)行過程中對數(shù)據(jù)的修改,在事務(wù)提交之前對其他事務(wù)不可見。持久性表示已提交的數(shù)據(jù)在事務(wù)執(zhí)行失敗時(shí),數(shù)據(jù)的狀態(tài)都應(yīng)該正確。
通俗的理解,事務(wù)是一組原子操作單元,從數(shù)據(jù)庫角度說,就是一組SQL指令,要么全部執(zhí)行成功,若因?yàn)槟硞€(gè)原因其中一條指令執(zhí)行有錯(cuò)誤,則撤銷先前執(zhí)行過的所有指令。更簡答的說就是:要么全部執(zhí)行成功,要么撤銷不執(zhí)行。
既然事務(wù)的概念從數(shù)據(jù)庫而來,那Java事務(wù)是什么?之間有什么聯(lián)系?
實(shí)際上,一個(gè)Java應(yīng)用系統(tǒng),如果要操作數(shù)據(jù)庫,則通過JDBC來實(shí)現(xiàn)的。增加、修改、刪除都是通過相應(yīng)方法間接來實(shí)現(xiàn)的,事務(wù)的控制也相應(yīng)轉(zhuǎn)移到Java程序代碼中。因此,數(shù)據(jù)庫操作的事務(wù)習(xí)慣上就稱為Java事務(wù)。
二、為什么需要事務(wù)
事務(wù)是為解決數(shù)據(jù)安全操作提出的,事務(wù)控制實(shí)際上就是控制數(shù)據(jù)的安全訪問。具一個(gè)簡單例子:比如銀行轉(zhuǎn)帳業(yè)務(wù),賬戶A要將自己賬戶上的1000元轉(zhuǎn)到B賬戶下面,A賬戶余額首先要減去1000元,然后B賬戶要增加1000元。假如在中間網(wǎng)絡(luò)出現(xiàn)了問題,A賬戶減去1000元已經(jīng)結(jié)束,B因?yàn)榫W(wǎng)絡(luò)中斷而操作失敗,那么整個(gè)業(yè)務(wù)失敗,必須做出控制,要求A賬戶轉(zhuǎn)帳業(yè)務(wù)撤銷。這才能保證業(yè)務(wù)的正確性,完成這個(gè)操走就需要事務(wù),將A賬戶資金減少和B賬戶資金增加方到一個(gè)事務(wù)里面,要么全部執(zhí)行成功,要么操作全部撤銷,這樣就保持了數(shù)據(jù)的安全性。
三、Java事務(wù)的類型
Java事務(wù)的類型有三種:JDBC事務(wù)、JTA(Java Transaction API)事務(wù)、容器事務(wù)。
1、JDBC事務(wù)
JDBC 事務(wù)是用 Connection 對象控制的。JDBC Connection 接口(java.sql.Connection)提供了兩種事務(wù)模式:自動(dòng)提交和手工提交。java.sql.Connection 提供了以下控制事務(wù)的方法:
public void setAutoCommit(boolean)public boolean getAutoCommit()public void commit()public void rollback()
使用 JDBC 事務(wù)界定時(shí),您可以將多個(gè) SQL 語句結(jié)合到一個(gè)事務(wù)中。JDBC 事務(wù)的一個(gè)缺點(diǎn)是事務(wù)的范圍局限于一個(gè)數(shù)據(jù)庫連接。一個(gè) JDBC 事務(wù)不能跨越多個(gè)數(shù)據(jù)庫。
2、JTA(Java Transaction API)事務(wù)
JTA是一種高層的,與實(shí)現(xiàn)無關(guān)的,與協(xié)議無關(guān)的API,應(yīng)用程序和應(yīng)用服務(wù)器可以使用JTA來訪問事務(wù)。
JTA允許應(yīng)用程序執(zhí)行分布式事務(wù)處理--在兩個(gè)或多個(gè)網(wǎng)絡(luò)計(jì)算機(jī)資源上訪問并且更新數(shù)據(jù),這些數(shù)據(jù)可以分布在多個(gè)數(shù)據(jù)庫上。JDBC驅(qū)動(dòng)程序的JTA支持極大地增強(qiáng)了數(shù)據(jù)訪問能力。
如果計(jì)劃用 JTA 界定事務(wù),那么就需要有一個(gè)實(shí)現(xiàn) javax.sql.XADataSource、javax.sql.XAConnection 和 javax.sql.XAResource 接口的 JDBC 驅(qū)動(dòng)程序。一個(gè)實(shí)現(xiàn)了這些接口的驅(qū)動(dòng)程序?qū)⒖梢詤⑴c JTA 事務(wù)。一個(gè) XADataSource 對象就是一個(gè) XAConnection 對象的工廠。XAConnection s 是參與 JTA 事務(wù)的 JDBC 連接。
您將需要用應(yīng)用服務(wù)器的管理工具設(shè)置 XADataSource。從應(yīng)用服務(wù)器和 JDBC 驅(qū)動(dòng)程序的文檔中可以了解到相關(guān)的指導(dǎo)。
J2EE 應(yīng)用程序用 JNDI 查詢數(shù)據(jù)源。一旦應(yīng)用程序找到了數(shù)據(jù)源對象,它就調(diào)用 javax.sql.DataSource.getConnection()以獲得到數(shù)據(jù)庫的連接。
XA 連接與非 XA 連接不同。一定要記住 XA 連接參與了 JTA 事務(wù)。這意味著 XA 連接不支持 JDBC 的自動(dòng)提交功能。同時(shí),應(yīng)用程序一定不要對 XA 連接調(diào)用 java.sql.Connection.commit()或者 java.sql.Connection.rollback()。相反,應(yīng)用程序應(yīng)該使用 UserTransaction.begin()、UserTransaction.commit()和 serTransaction.rollback()。
3、容器事務(wù)
容器事務(wù)主要是J2EE應(yīng)用服務(wù)器提供的,容器事務(wù)大多是基于JTA完成,這是
一個(gè)基于JNDI的,相當(dāng)復(fù)雜的API實(shí)現(xiàn)。相對編碼實(shí)現(xiàn)JTA事務(wù)管理,我們可以通過EJB容器提供的容器事務(wù)管理機(jī)制(CMT)完成同一個(gè)功能,這項(xiàng)功能由J2EE應(yīng)用服務(wù)器提供。這使得我們可以簡單的指定將哪個(gè)方法加入事務(wù),一旦指定,容器將負(fù)責(zé)事務(wù)管理任務(wù)。這是我們土建的解決方式,因?yàn)橥ㄟ^這種方式我們可以將事務(wù)代碼排除在邏輯編碼之外,同時(shí)將所有困難交給J2EE容器去解決。使用EJB CMT的另外一個(gè)好處就是程序員無需關(guān)心JTA API的編碼,不過,理論上我們必須使用EJB。四、三種事務(wù)差異
1、JDBC事務(wù)控制的局限性在一個(gè)數(shù)據(jù)庫連接內(nèi),但是其使用簡單。
2、JTA事務(wù)的功能強(qiáng)大,事務(wù)可以跨越多個(gè)數(shù)據(jù)庫或多個(gè)DAO,使用也比較復(fù)雜。
3、容器事務(wù),主要指的是J2EE應(yīng)用服務(wù)器提供的事務(wù)管理,局限于EJB應(yīng)用使用。
五、總結(jié)
事務(wù)控制是構(gòu)建J2EE應(yīng)用不可缺少的一部分,合理選擇應(yīng)用何種事務(wù)對整個(gè)應(yīng)用系統(tǒng)來說至關(guān)重要。一般說來,在單個(gè)JDBC 連接連接的情況下可以選擇JDBC事務(wù),在跨多個(gè)連接或者數(shù)據(jù)庫情況下,需要選擇使用JTA事務(wù),如果用到了EJB,則可以考慮使用EJB容器事務(wù)。
第二篇:農(nóng)村事務(wù)處理方法
為妥善處理城中村村民重復(fù)訪、集體訪和非正常上訪問題,我們有以下對策建議:
先與群眾溝通,做好群眾思想工作,盡量杜絕上訪事件發(fā)生,就地解決問題,責(zé)令企業(yè)整改,并且給出相應(yīng)的優(yōu)惠措施,既不破壞環(huán)境也不破壞經(jīng)濟(jì)發(fā)展,第一時(shí)間與上級領(lǐng)導(dǎo)匯報(bào)。
首先,要講究工作方式,變被動(dòng)接訪為主動(dòng)服務(wù)接訪。一是要善待村民,及時(shí)辦結(jié)。如村民反映的問題合情合理合法,應(yīng)盡快抓緊協(xié)調(diào),設(shè)法促成解決。對合情但不合理或政策不允許的問題,要宣傳政策,解釋疏導(dǎo)。對一些政策不明確的問題,應(yīng)積極爭取上級明確政策,及時(shí)解答回復(fù)。對牽涉到諸多部門的問題,要闡釋清楚,主動(dòng)協(xié)辦。二是要領(lǐng)導(dǎo)接訪,上下聯(lián)動(dòng)。制定、完善和堅(jiān)持領(lǐng)導(dǎo)干部公開接訪制度,盡量現(xiàn)場辦公,督促處理落實(shí)。三是要突出重點(diǎn),重心下移。建立定期下訪制度,每月至少1次;主動(dòng)深入到問題多、群眾信訪頻繁的重點(diǎn)城中村、重點(diǎn)上訪對象、特殊群體、弱勢群體中進(jìn)行調(diào)研,把工作做在前面,將問題解決在萌芽狀態(tài)。四是疑難問題要有耐心,應(yīng)該理解并積極尋求解決方法,盡最大努力爭取使上訪者得到滿意答復(fù)。
其次,要堅(jiān)持依法辦事,變無序信訪為有序信訪。一是要強(qiáng)化依法信訪舉報(bào)法規(guī)知識的宣傳教育,增強(qiáng)村民依法信訪意識,教育黨員干部遵守黨紀(jì)黨規(guī),教育信訪工作人員依法高效辦理信訪問題。二是針對黨員參與鼓動(dòng)群訪的情況,依照黨紀(jì)條例,進(jìn)行指正警示,提出要求,強(qiáng)化管理,既尊重和維護(hù)黨員干部的合法權(quán)益,又堅(jiān)決嚴(yán)處違法違紀(jì)現(xiàn)象,不可偏廢。二是堅(jiān)持“依法上訪,違法追究,雙向責(zé)任,注重導(dǎo)向”原則,真正做到暢通渠道、依法依規(guī)、健康有序。三是建立健全信訪制度體系,依法依紀(jì)保護(hù)、規(guī)范黨員群眾信訪舉報(bào)的權(quán)利、義務(wù)、行為。四是采取配套措施,充分發(fā)揮轄區(qū)人大代表、政協(xié)委員的作用,使他們成為群眾的“代言人”,對重點(diǎn)信訪問題進(jìn)行公開聽證,選派律師參與信訪接待,依法調(diào)解復(fù)雜信訪案件,暢通信訪監(jiān)督通道。
再次,以人為本,著力維護(hù)村民利益,堅(jiān)持“群眾利益無小事”的思想不動(dòng)搖。抓住損害村民的重點(diǎn)問題不放松,針對損害村民切身利益的一些重點(diǎn)、熱點(diǎn)、難點(diǎn)問題,及時(shí)研究處理,使群眾滿意。建立查處快速反應(yīng)機(jī)制,采取發(fā)信訪監(jiān)督卡、信訪談話、立案查辦等方式,督促信訪問題解決。對損害群眾利益的典型案件,及時(shí)受理查處,決不姑息遷就。同時(shí),積極協(xié)調(diào)部門關(guān)系,形成信訪監(jiān)督的整體合力。
建立合理分流處理機(jī)制;對于紀(jì)檢監(jiān)察機(jī)關(guān)受理范圍內(nèi)的信訪問題,按“分級負(fù)責(zé)、歸口辦理”,“誰主管、誰負(fù)責(zé)”的原則,層層分解落實(shí)任務(wù);建立協(xié)作配合的工作機(jī)制,對于牽涉多個(gè)部門的交叉、復(fù)雜、疑難信訪問題,紀(jì)委主動(dòng)牽頭協(xié)調(diào)解決;加強(qiáng)督促檢查,紀(jì)委主動(dòng)指導(dǎo)、幫助責(zé)任部門研究制定辦法措施,加強(qiáng)跟蹤調(diào)度和督促檢查,抓好落實(shí)整改。
另外,加強(qiáng)制度建設(shè),構(gòu)筑長效機(jī)制。完善領(lǐng)導(dǎo)接訪日制度,建立協(xié)作接訪制度,如人大代表、政協(xié)委員參與接訪制度等。建立嚴(yán)密高效的處訪制度,依法行政,增強(qiáng)協(xié)調(diào)處理力度。加強(qiáng)骨干培訓(xùn),提高工作能力,確保問題解決。要嚴(yán)格落實(shí)回訪制度,建立處理登記臺賬,做到“事事有著落,件件有回音”。要完善設(shè)施,加快辦公自動(dòng)化建設(shè),提高工作效率。
第三篇:java總結(jié)
調(diào)用父類構(gòu)造方法
? 在子類的構(gòu)造方法中可使用super(argument_list)語句調(diào)用父類的構(gòu)造方法
? 如果子類的構(gòu)造方法中沒有顯示地調(diào)用父類構(gòu)造方法,也沒有使用this關(guān)鍵字調(diào)用重載的其它構(gòu)造方法,則系統(tǒng)默認(rèn)調(diào)用父類無參數(shù)的構(gòu)造方法
? 如果子類構(gòu)造方法中既未顯式調(diào)用父類構(gòu)造方法,而父類中又沒有無參的構(gòu)造方法,則編譯出錯(cuò)
1public class Person {
3private String name;
4private int age;private Date birthDate;
7public Person(String name, int age, Date d){ 8this.name = name;
9this.age = age;
10this.birthDate = d;
11}
12public Person(String name, int age){ 13this(name, age, null);
14}
15public Person(String name, Date d){ 16this(name, 30, d);
17}
18public Person(String name){
19this(name, 30);}
21// ……
22}
1public class Student extends Person {
2private String school;
4public Student(String name, int age, String s){ 5super(name, age);
6school = s;
7}
8public Student(String name, String s){
9super(name);
10school = s;
11}
12public Student(String s){ // 編譯出錯(cuò): no super()13school = s;
14}
15}
對象構(gòu)造和初始化細(xì)節(jié)
? 分配存儲空間并進(jìn)行默認(rèn)的初始化
? 按下述步驟初始化實(shí)例變量
1.綁定構(gòu)造方法參數(shù)
2.如有this()調(diào)用,則調(diào)用相應(yīng)的重載構(gòu)造方法,然后跳轉(zhuǎn)到步驟5
3.顯式或隱式追溯調(diào)用父類的構(gòu)造方法(Object類除外)
4.進(jìn)行實(shí)例變量的顯式初始化操作
5.執(zhí)行當(dāng)前構(gòu)造方法的方法體
==操作符與equals方法
==操作符與equals方法的區(qū)別:
? 引用類型比較引用;基本類型比較值;
? equals()方法只能比較引用類型,“==”可以比較引用類型及基本類型;
? 特例:當(dāng)用equals()方法進(jìn)行比較時(shí),對類File、String、Date及封裝類(Wrapper Class)來說,是比較類型及內(nèi)容而不考慮引用的是否是同一個(gè)實(shí)例;
? 用“==”進(jìn)行比較時(shí),符號兩邊的數(shù)據(jù)類型必須一致(可自動(dòng)轉(zhuǎn)換的基本數(shù)據(jù)類型除外),否則編譯出錯(cuò);
由裝箱引發(fā)的——Integer比較的來龍去脈
前置知識: 眾所周之,java是保留了int,char等基本數(shù)據(jù)類型的,也就是說int類型的并不是對象,然而有些方法卻需要object 類型的變量,所以java使用了裝箱機(jī)制,我們可一自豪的這樣聲明一個(gè)整型變量:Integer a = new Integer(10);那么整型的a也就是對象了,那這句是什么意思呢:Integer a= 10;java中可以這樣聲明一個(gè)對象嗎?當(dāng)然不是,從jdk1.5后,java實(shí)現(xiàn)了自動(dòng)裝箱,也就是自動(dòng)將Integer a =10 中的int類型的10轉(zhuǎn)化為了 Integer類型。好,有了前面的只是我們且先看一個(gè)題目:
Integer a = 127;
Integer b = 127;
Integer c = 128;
Integer d = 128;
System.out.println(a==b);
System.out.println(c==d);
答案是什么呢? 如果您回答true,false,那么很遺憾的告訴你,哈哈,其實(shí)你答對了!!
那我們暈了就相差1的兩個(gè)數(shù)為啥走向了“反目成仇”的地步呢?憑啥127等于127,我128就不等于128呢?且聽我慢慢道來,Integer a =127,Integer a=128。
127,128應(yīng)該不會(huì)造成什么差異吧,難道是自動(dòng)裝箱的過程有貓膩?找下源碼看看:
private static class IntegerCache {
private IntegerCache(){}
static final Integer cache[] = new Integer[-(-128)+ 127 + 1];static {
for(int i = 0;i < cache.length;i++)
cache[i] = new Integer(i128);
}
這是用一個(gè)for循環(huán)對數(shù)組cache賦值,cache[255] = new Integer(255-128),也就是newl一個(gè)Integer(127),并把引用賦值給cache[255],好了,然后是Integer b= 127,流程基本一樣,最后又到了cache[255] = new Integer(255-128),這一句,那我們迷糊了,這不是又new了一個(gè)對象127嗎,然后把引用賦值給cache[255],我們比較這兩個(gè)引用(前面聲明a的時(shí)候也有一個(gè)),由于是不同的地址,所以肯定不會(huì)相等,應(yīng)該返回false啊!呵呵,這么想你就錯(cuò)了,請注意看for語句給cache[i]初始化的時(shí)候外面還一個(gè){}呢,{}前面一個(gè)大大的static關(guān)鍵字大咧咧的杵在哪呢,對靜態(tài)的,那么我們就可以回想下static有什么特性了,只能初始化一次,在對象間共享,也就是不同的對象共享同一個(gè)static數(shù)據(jù),那么當(dāng)我們Integer b = 127的時(shí)候,并沒有new出一個(gè)新對象
來,而是共享了a這個(gè)對象的引用,記住,他們共享了同一個(gè)引用!!,那么我們進(jìn)行比較a==b時(shí),由于是同一個(gè)對象的引用(她們在堆中的地址相同),那當(dāng)然返回true了!!
然后我們在看Integer c = 128;Integer d = 128;這兩句。現(xiàn)在不用我說就應(yīng)該能明白了吧,當(dāng)數(shù)據(jù)不再-128到127之間時(shí),是不執(zhí)行return
IntegerCache.cache[i + offset];這句的,也就是不會(huì)返回一個(gè)static的引用,而是執(zhí)行了return new Integer(i);于是當(dāng) Integer d = 128 時(shí),又會(huì)重新返回一個(gè)引用,兩個(gè)不同的引用
在做c==d 的比較時(shí)當(dāng)然返回false了!
下面附上本程序的字節(jié)碼以供喜歡底層的讀者參考:
Compiled from “CompareInteger.java”
public class CompareInteger extends java.lang.Object{
public CompareInteger();
Code:
0:aload_0
1:invokespecial#1;//Method java/lang/Object.“
public static void main(java.lang.String[]);
Code:
0:bipush 127
2:invokestatic#2;//Method
java/lang/Integer.valueOf:(I)Ljava/lang/Int
eger;
5:astore_1
6:bipush 127
8:invokestatic#2;//Method
java/lang/Integer.valueOf:(I)Ljava/lang/Int
eger;
11: astore_2
12: sipush 128
15: invokestatic#2;//Method
java/lang/Integer.valueOf:(I)Ljava/lang/Int
eger;
18: astore_3
19: sipush 128
22: invokestatic#2;//Method
java/lang/Integer.valueOf:(I)Ljava/lang/Int
eger;
25: astore 4
27: getstatic#3;//Field
java/lang/System.out:Ljava/io/PrintStream;
30: aload_1
31: aload_2
32: if_acmpne39
35: iconst_1
36: goto40
39: iconst_0
40: invokevirtual#4;//Method java/io/PrintStream.println:(Z)V43: getstatic#3;//Field
java/lang/System.out:Ljava/io/PrintStream;
46: aload_3
47: aload4
49: if_acmpne56
52: iconst_1
53: goto57
56: iconst_0
57: invokevirtual#4;//Method java/io/PrintStream.println:(Z)V60: return
}
評論:呵呵,這么想你就錯(cuò)了,請注意看for語句給cache[i]初始化的時(shí)候外面還一個(gè){}呢,{}前面一個(gè)大大的static關(guān)鍵字大咧咧的杵在哪呢,對靜態(tài)的,那么我們就可以回想下static有什么特性了,只能初始化一次,在對象間共享,也就是不同的對象共享同一個(gè)static數(shù)據(jù),那么當(dāng)我們Integer b = 127的時(shí)候,并沒有new出一個(gè)新對象來,而是共享了a這個(gè)對象的引用,記住,他們共享了同一個(gè)引用!!
呵呵,博主我被你這句話小小的誤導(dǎo)了一下,其實(shí)你這里說的原理沒錯(cuò),但是把位置說錯(cuò)了,這段代碼只是初始化cache:
static {
for(int i = 0;i < cache.length;i++)
cache[i] = new Integer(i-128);
}
但真正讓cache[i]為static變量的是這句代碼:
static final Integer cache[] = new Integer[-(-128)+ 127 + 1];
第四篇:Java總結(jié)
Java實(shí)驗(yàn)
1.調(diào)試HelloWorld程序
2.this,super,get ,set,把課本90頁程序4.7中的name改成私有變量
3.繼承,重寫,父類引用指向子類對象
4.驗(yàn)證數(shù)組Arrays類和Collection類
5.編寫一個(gè)自己的異常類并捕獲之。
6.編寫一個(gè)類,將該類的幾個(gè)對象裝入TreeSet容器中,并將該容器的內(nèi)容通過輸出流寫入文件中。
前三章重點(diǎn)
0.java的數(shù)據(jù)類型:四類八種-(1)布爾類型Boolean;(2)字符類型char;(3)整數(shù)byte,short,int,long;(4)浮點(diǎn)類型:float,double;1.面向?qū)ο蟮?個(gè)基本特征:封裝,繼承,多態(tài)。
2.構(gòu)造方法和普通方法的區(qū)別:對構(gòu)造方法而言,它有以下特性---(1)方法名必須與要?jiǎng)?chuàng)建對象的類名相同。(2)不允許聲明返回類型,即使聲明為void也不被允許。
3.this關(guān)鍵字:是一個(gè)引用,this引用指向的是其本身所在方法的當(dāng)前對象。this的使用方法:(1)調(diào)用成員變量;(2)可以用this()調(diào)用其他構(gòu)造函數(shù)。
4.java中只對類成員變量進(jìn)行自動(dòng)初始化,而方法內(nèi)部的局部變量在使用前必須手動(dòng)初始化。
5.static 關(guān)鍵字:可用來修飾類的成員變量和成員方法,需要注意兩點(diǎn)--(1)靜態(tài)方法不能調(diào)用類的非靜態(tài)方法,不能訪問類的非靜態(tài)變量。(2)靜態(tài)方法和靜態(tài)變量(非私有的)可以有兩種調(diào)用方式,一是實(shí)例對象調(diào)用,二是類名直接調(diào)用。
6.類成員訪問控制修飾符public、private、default(可不寫,即缺省狀態(tài))、protected的使用:public-公用的;private-私有的,只在定義它的類內(nèi)部使用;default-可以被同一包中的類訪問;protected-既可以被同一包中的類訪問,也可以被不在同一包中的子類訪問。
7.方法的重載:指方法名相同,而方法的參數(shù)列表不相同。參數(shù)列表不同有三層意思:(1)參數(shù)類型不同。(2)參數(shù)順序不同。(3)參數(shù)個(gè)數(shù)不同。另外需注意,在同一個(gè)類中,當(dāng)方法名和參數(shù)列表都相同時(shí),訪問控制修飾符或方法返回類型不相同并不是方法的重載,而且這種情況在java中是不被允許的。
第四五章重點(diǎn)
1.繼承:需使用關(guān)鍵字extends.在使用繼承時(shí)需注意--(1)每個(gè)子類只能定義一個(gè)超類(父類),即extends后面應(yīng)且僅應(yīng)跟一個(gè)類名作為該類的父類。(2)父類中的私有屬性和私有方法不能被繼承。
2.方法的重寫:即子類對超類中的方法保持方法名、返回類型和參數(shù)列表不變,重寫了方法體,使子類和超類完成不同的工作。重寫需注意下面幾個(gè)關(guān)鍵點(diǎn):(1)超類中的私有方法不能被重寫。(2)訪問限制符強(qiáng)度由低到高依次是:public、protected、default、private,在重寫過程中,如果子類和父類中方法的返回值、方法名及方法的參數(shù)列表都相同,這時(shí),要求子類中該方法的訪問限制符強(qiáng)度不能超過父類的。即如果父類中為public時(shí),子類也只能為public,而不能是余下的三種。
3.重載(overload)和覆蓋(override)的區(qū)別:(1)重載—發(fā)生在一個(gè)類的內(nèi)部或子類與父類之間,要求方法名相同而參數(shù)列表不一樣。(2)覆蓋—只能發(fā)生在繼承過程中,要求子類方法的返回類型,方法名和參數(shù)列表同父類的都相同,而方法體不一樣。
4.構(gòu)造器的調(diào)用順序:先祖先,再客人,最后自己。
5.多態(tài):指在類繼承中子類和父類中可以有同名但意義或?qū)崿F(xiàn)方式不同的屬性和方法。分為:覆蓋和重載。多態(tài)的優(yōu)點(diǎn):因?yàn)槎鄳B(tài),可以在程序中對類進(jìn)行擴(kuò)展,而不需改變那些操作基類接口的方法。
6.動(dòng)態(tài)綁定:指在代碼執(zhí)行期間,判斷所引用對象的實(shí)際類型,根據(jù)其實(shí)際類型調(diào)用相應(yīng)方法。動(dòng)態(tài)綁定存在的三個(gè)必要條件--(1)要有繼承;(2)要有重寫(覆蓋);(3)父類引用指向子類對象(向上轉(zhuǎn)型)。
7.Object中常用的方法總結(jié):toString();wait();equals();notify();notifyAll();hashCode();getClass();clone();finalize();(呵呵,盡可能記幾個(gè),以防老師讓咱們列舉)注:java中Object類是所有類的父類,即java中所有的類都有上述9種方法。
8.對象的比較:注意關(guān)鍵字instanceof的使用。
9.抽象類:
抽象方法—用關(guān)鍵字abstract修飾的方法,該方法只需方法的聲明,而不需方法的實(shí)現(xiàn)(即無方法體)。
抽象類——至少包含一個(gè)抽象方法的類,也用abstract關(guān)鍵字聲明。(注:(1)抽象類中可以有一些具體方法。(2)抽象類不能實(shí)例化。(3)子類繼承抽象類必須實(shí)現(xiàn)其抽象方法。)
10.接口:
(1)可以看成是高度抽象的抽象類,但是接口不是類。
(2)用關(guān)鍵字interface來聲明接口,用關(guān)鍵字imlpements來實(shí)現(xiàn)接口。
(3)接口不能有具體方法,不能有實(shí)例數(shù)據(jù),但可以定義常量。
(4)實(shí)現(xiàn)接口的非抽象類必須實(shí)現(xiàn)接口的所有方法。
(5)每個(gè)類可以實(shí)現(xiàn)多個(gè)接口,這些接口用逗號隔開,同時(shí),一個(gè)接口可以被多個(gè)類實(shí)現(xiàn)。
第六章:重點(diǎn)看一下實(shí)驗(yàn)四
1.容器——Collection(接口)和Map(接口).Collection——Set(接口)和List(接口)。其中,List必須保持元素的特定順序,常見的實(shí)現(xiàn)類有ArrayList和LinkedList;Set不能有重復(fù)元素,常見的實(shí)現(xiàn)類有HashSet和TreeSet。
Map——一組成對的“鍵值對”對象,即其元素是成對的對象,常見的實(shí)現(xiàn)類有HashMap和TreeMap。
第七章 1.異常類的根類是Throwable類,它的兩個(gè)直接子類是Error類和Exception類。
2.異常中常用的5個(gè)關(guān)鍵字為:try,catch,finally,throw,throws.其中,try和catch:用于捕獲異常;finally:無論try塊中的異常是否拋出,finally中的代碼塊總能被執(zhí)行;throw:拋出異常;throws:聲明異常。
3.“未被檢查的異常(Unchecked Exceptions)”和“受檢查的異常(Checked Exceptions)”——
Unchecked Exceptions :編譯器不檢查方法是否處理或拋出的異常,即不做處理,編譯時(shí)不報(bào)錯(cuò)。
Checked Exceptions:受編譯器檢查的異常,即不做處理編譯時(shí)通不過。
4.常見的幾種Checked Exceptions:ClassNotFoundExceptionIOExceptionInterruptedExceptionFileNotFoundException.(盡可能的記幾個(gè)吧,以防不測)第八章
1.流--字節(jié)流和字符流;
流--節(jié)點(diǎn)流和處理流。
2.所有的輸入流都是從抽象類InputStream和Reader繼承而來。所有輸出流都是從抽象類OutputStream和Writer繼承而來。3.字節(jié)流:InputStream和OutputStream;字符流:Reader和Writer;
4.節(jié)點(diǎn)流:直接與文件等底層打交道,如FileInputStreamFileOutputStreamFileReaderFileWriter.處理流:相當(dāng)于包裝流,套在節(jié)點(diǎn)流上,方便數(shù)據(jù)處理。相關(guān)一些用法,具體參考最后一次實(shí)驗(yàn)。
第五篇:工程監(jiān)理日常事務(wù)處理
工程建設(shè)監(jiān)理工作日常事務(wù)處理
現(xiàn)代科學(xué)技術(shù)飛速發(fā)展,日新月異,大量的新技術(shù)、新材料、新工藝、新設(shè)備不斷地應(yīng)用到建設(shè)項(xiàng)目中,當(dāng)今建設(shè)項(xiàng)目的復(fù)雜程度與十多年前是不能相比的,加之參建單位多、項(xiàng)目建設(shè)工期長,以及安全控制中傳統(tǒng)的安全管理模式受到的沖擊等,如果建設(shè)監(jiān)理人員墨守成規(guī),不注意提高知識和技能,憑以往經(jīng)驗(yàn)辦事,也不注意提高組織協(xié)調(diào)能力,就無法適應(yīng)現(xiàn)代工程項(xiàng)目對監(jiān)理工作提出的要求。現(xiàn)階段監(jiān)理人員的工作壓力不可謂不大,這種情況下,討論建設(shè)監(jiān)理工作的技術(shù)和藝術(shù)問題就很有必要了。現(xiàn)分述如下: 所謂建設(shè)監(jiān)理工作的技術(shù)是根據(jù)國家現(xiàn)成的有關(guān)法律、法規(guī)、強(qiáng)制性標(biāo)準(zhǔn)、規(guī)范的規(guī)定、設(shè)計(jì)文件要求、施工合同和委托監(jiān)理合同中有關(guān)技術(shù)服務(wù)內(nèi)容,開展專業(yè)化的監(jiān)理工作。
所謂建設(shè)監(jiān)理工作的藝術(shù)是根據(jù)施工合同和委托監(jiān)理合同中有關(guān)技術(shù)服務(wù)內(nèi)容,以業(yè)主的合同目標(biāo)為中心,靈活運(yùn)用各種技巧、手段和方法。所有監(jiān)理工作的藝術(shù)是一種表現(xiàn)形式,也是建設(shè)監(jiān)理機(jī)構(gòu)人員的整體素質(zhì)、能力、膽略和經(jīng)驗(yàn)的綜合反映,還是監(jiān)理人員良好的職業(yè)道德和敬業(yè)精神的反映,而且監(jiān)理工作的藝術(shù)始終貫穿在項(xiàng)目施工監(jiān)理工作的全過程中。
建設(shè)監(jiān)理工作的技術(shù)和藝術(shù)是相互聯(lián)系,互為影響的兩部分,使建設(shè)監(jiān)理工作技術(shù)和藝術(shù)的完美結(jié)合,對實(shí)現(xiàn)業(yè)主建設(shè)目標(biāo)(投資省、進(jìn)度快和質(zhì)量高,無安全事故和安全隱患)是十分重要的。
一、建設(shè)監(jiān)理工作的技術(shù)和藝術(shù),存在于國家頒發(fā)的法律、法規(guī)、強(qiáng)制性標(biāo)準(zhǔn)和規(guī)范中例如:我國《建筑法》第三十二條規(guī)定“工程監(jiān)理人員認(rèn)為工程施工不符合工程設(shè)計(jì)要求、施工技術(shù)標(biāo)準(zhǔn)和合同約定的,有權(quán)要求建筑施工企業(yè)改正。工程監(jiān)理人員發(fā)現(xiàn)工程設(shè)計(jì)不符合建筑工程質(zhì)量標(biāo)準(zhǔn)或者合同約定的質(zhì)量
要求,應(yīng)當(dāng)報(bào)告建設(shè)單位,要求設(shè)計(jì)單位改正。”上述規(guī)定是對施工不合格和設(shè)計(jì)不合格的處理方法,無疑地也是對監(jiān)理工作的技術(shù)要求和藝術(shù)要求。
又例如,《建設(shè)工程質(zhì)量管理?xiàng)l例》第三十六條“工程監(jiān)理單位應(yīng)當(dāng)依照法律、法規(guī)以及有關(guān)技術(shù)標(biāo)準(zhǔn)、設(shè)計(jì)文件和建設(shè)工程承包合同,代表建設(shè)單位對施工質(zhì)量實(shí)施監(jiān)理,并對施工質(zhì)量承擔(dān)監(jiān)理責(zé)任。”很明顯監(jiān)理單位要不承擔(dān)監(jiān)理責(zé)任,項(xiàng)目監(jiān)理機(jī)構(gòu)就必須采取下列質(zhì)量控制措施(舉例如下):
(一)工程質(zhì)量的預(yù)控措施如審查施工組織設(shè)計(jì)(方案),熟悉施工設(shè)計(jì)圖紙內(nèi)容,并且全面了解施工合同中約定的工程質(zhì)量標(biāo)準(zhǔn),以及對施工中的人、機(jī)、料、法、環(huán)因素的控√√√
(二)施工質(zhì)量過程控制對施工質(zhì)量的過程控制有:督促承包單位的質(zhì)量管理和質(zhì)量保證體系落實(shí)到位并要發(fā)揮作用;對進(jìn)場建筑材料、構(gòu)配件及設(shè)備質(zhì)量合格的控制;對已批準(zhǔn)的施工方案,在實(shí)施過程中進(jìn)行補(bǔ)充、修改、完善;對承包單位的測量放線成果進(jìn)行確認(rèn),考核承包單位實(shí)驗(yàn)室資質(zhì)和試驗(yàn)結(jié)果;檢查承包單位現(xiàn)場計(jì)量和測量設(shè)備要合格;檢查驗(yàn)收隱蔽工程、分項(xiàng)工程和分部工程,組織單位工程預(yù)驗(yàn)收。
(三)要求承包單位的施工質(zhì)量資料與施工進(jìn)度同步,對施工質(zhì)量資料要及時(shí)簽證,并使之真實(shí)、完整,資料管理分類有序。
如果監(jiān)理人員按上述技術(shù)要求努力做到了,監(jiān)理單位就不會(huì)有監(jiān)理責(zé)任而言了,假如能深入思考其中監(jiān)理工作的藝術(shù)內(nèi)涵,無疑地是一件很有意義的工作。
二、建設(shè)監(jiān)理工作的技術(shù)和藝術(shù)還存在于工程施工過程中
施工過程中監(jiān)理工作的技術(shù)和藝術(shù)的主要表現(xiàn)是對《建設(shè)工程監(jiān)理規(guī)范》中規(guī)定內(nèi)容的理解、執(zhí)行和檢查以及為了達(dá)到規(guī)范要求和合同目標(biāo)而采取的方法和措施。
例如工程變更問題,《建設(shè)工程監(jiān)理規(guī)范》中6.2.1條已明確規(guī)定了工程變更處理程序。可是在施工監(jiān)理過程中,偶爾出現(xiàn)因?yàn)楣て诰o,工程變更的內(nèi)容少、簽字人員難找或工程變更在業(yè)主授權(quán)之外,建設(shè)監(jiān)理沒有請示業(yè)主就同意工程變更,由于變更效果不理想,業(yè)主與設(shè)計(jì)單位不認(rèn)可,要驗(yàn)收和計(jì)量就為難了。還有業(yè)主代表和承包單位在室內(nèi)或現(xiàn)場進(jìn)行了工程變更,沒有通知監(jiān)理,事后來做變更手續(xù),造成監(jiān)理工作的被動(dòng)局面。
例如計(jì)量和支付的處理,特別是合同外增加工程的計(jì)量是業(yè)主和承包單位非常敏感的問題,建設(shè)監(jiān)理工作的技術(shù)和藝術(shù)在于,承包單位對增加工程應(yīng)自檢合格,申請驗(yàn)收,經(jīng)建設(shè)方、施工方和監(jiān)理方(簡稱三方)共同現(xiàn)場驗(yàn)收合格后,及時(shí)現(xiàn)場實(shí)測、實(shí)量,現(xiàn)場計(jì)量人員均應(yīng)在計(jì)量結(jié)果上簽認(rèn),計(jì)量結(jié)果應(yīng)符合合同約定的計(jì)量規(guī)則,按規(guī)定表格填寫報(bào)批。這樣的三方現(xiàn)場實(shí)測、實(shí)量結(jié)果的做法不是業(yè)主不相信監(jiān)理,也不是監(jiān)理推卸責(zé)任,而是更為了公開、公正地展示計(jì)量,使計(jì)量結(jié)果具有真實(shí)性和準(zhǔn)確性。因?yàn)槲覀冃枰慕Y(jié)果是各方的滿意,只有用過程來服務(wù)結(jié)果。這就是建設(shè)監(jiān)理工作的技術(shù)和藝術(shù)。
再例如施工工期的問題,這是業(yè)主非常關(guān)心的問題,因?yàn)閷?shí)際完成工期與施工合同工期出入較大時(shí)會(huì)給業(yè)主造成一定的損失,工程開工前,承包單位根據(jù)施工圖紙和施工合同工期編制總進(jìn)度計(jì)劃和按業(yè)主要求編制的進(jìn)度計(jì)劃,監(jiān)理單位審查總進(jìn)度計(jì)劃時(shí),要求進(jìn)度計(jì)劃內(nèi)容全面,符合施工合同工期、施工工序與順序合理、施工方法可行、質(zhì)量保證措施可靠,資源需要量及供應(yīng)量能保證均衡施工進(jìn)度等。要求承包單位的質(zhì)量保證體系健全、安全施工、消防、場區(qū)衛(wèi)生、環(huán)保以及文明施工的保證措施齊備。
監(jiān)理單位在對現(xiàn)場施工條件調(diào)查研究的基礎(chǔ)上,對業(yè)主和承包單位的風(fēng)險(xiǎn)進(jìn)行分析,同時(shí)結(jié)合施工總進(jìn)度計(jì)劃、編制施工監(jiān)理總進(jìn)度控制計(jì)劃,將總進(jìn)度目標(biāo)分解,預(yù)測進(jìn)度偏差,提出預(yù)控偏差的措施,作為階段性進(jìn)度目標(biāo)考核的依據(jù),還作為審查承包單位編制的總進(jìn)度計(jì)劃的依據(jù)。
在施工過程中,監(jiān)理單位應(yīng)在確保工程質(zhì)量和施工安全的原則下控制施工進(jìn)度。在認(rèn)真監(jiān)督、跟蹤掌握施工現(xiàn)場的實(shí)際進(jìn)度:當(dāng)實(shí)際進(jìn)度符合計(jì)劃進(jìn)度時(shí),應(yīng)要求承包單位進(jìn)行下一道工序安排;當(dāng)實(shí)際進(jìn)度滯后于計(jì)劃進(jìn)度時(shí),監(jiān)理單位應(yīng)要求承包單位采取糾偏措施;必要時(shí)編制調(diào)整進(jìn)度計(jì)劃報(bào)批后實(shí)施。為了有效的進(jìn)行“四控兩管一協(xié)調(diào)”的工作內(nèi)容,發(fā)揮第一次工地例會(huì)和每周工地例會(huì)以及專題會(huì)議的作用是很重要的。例如:在每周工地例會(huì)上,逐項(xiàng)檢查上周完成情況,對完成的項(xiàng)目驗(yàn)收合格后,才進(jìn)行下一道工序,對不能按時(shí)完成的工序,找出偏差、分析原因要求采取措施完成。監(jiān)理人員對工程進(jìn)度檢查情況要在工地例會(huì)和監(jiān)理月報(bào)中向業(yè)主報(bào)告,特別是進(jìn)度控制措施的執(zhí)行情況。
三、建設(shè)監(jiān)理工作技術(shù)和藝術(shù)體現(xiàn)在處理業(yè)主、承包單位和設(shè)計(jì)單位的關(guān)系中
(一)在處理與業(yè)主關(guān)系中的監(jiān)理工作技術(shù)和藝術(shù)
大家知道,業(yè)主和監(jiān)理單位的關(guān)系是委托與被委托。授權(quán)與被授權(quán)的委托合同關(guān)系,所以業(yè)主對監(jiān)理單位的信任的認(rèn)識、對自身職責(zé)的認(rèn)識,對設(shè)計(jì)施工圖紙的認(rèn)識,對施工程序的認(rèn)識,對施工問題處理的認(rèn)識,以及個(gè)別情況下,業(yè)主代表以個(gè)人行為代替業(yè)主的合同行為等,與監(jiān)理人員的認(rèn)識不一樣,為了解決這些問題,監(jiān)理人員的工作藝術(shù)就表現(xiàn)在:是寫出書面材料開會(huì)解決還是個(gè)別交流溝通;是馬上解決還是經(jīng)調(diào)查研究冷靜一段時(shí)間解決;是基層解決還是找上級解決。不過無論怎樣,監(jiān)理人員始終要保護(hù)業(yè)主利益,以誠相待,用業(yè)主的思路
去理解分析,權(quán)衡利弊,支持業(yè)主正確的思考,對葉子股不規(guī)范行為耐心解釋,協(xié)助業(yè)主做出正確的決策。
(二)在處理與承包單位關(guān)系中的監(jiān)理工作技術(shù)和藝術(shù)
就工程建設(shè)項(xiàng)目而言,業(yè)主、承包單位和監(jiān)理單位都是建筑市場獨(dú)立平等的主體,在三個(gè)建設(shè)主體之間的人與人之間的是平等的相互尊重的關(guān)系,并應(yīng)貫穿在建設(shè)施工的全過程中。
監(jiān)理單位對施工承包單位是按照規(guī)范規(guī)定和施工圖紙,以及施工合同進(jìn)行監(jiān)理,同時(shí)對承包單位要尊重和幫助,這里的尊重就是尊重他們的豐富的施工經(jīng)驗(yàn),尊重他們的管理方法,在保持公正立場的基礎(chǔ)上,維護(hù)建設(shè)監(jiān)理單位利益的同時(shí),幫助施工承包單位解決工程施工中的實(shí)際問題,預(yù)防索賠事件的發(fā)生。監(jiān)理人員不要干預(yù)承包單位采取的正常的施工方法,也不要干預(yù)承包單位在施工組織管理問題上的分析與處理,但可以根據(jù)規(guī)范規(guī)定、合同約定以及施工組織設(shè)計(jì)(方案)內(nèi)容提出建議,由承包單位自行決策,以避免由于安全、質(zhì)量和進(jìn)度方面的問題引來監(jiān)理責(zé)任。
在施工監(jiān)理工程中,監(jiān)理單位和承包單位之間經(jīng)常為預(yù)控質(zhì)量檢查、隱蔽工程檢驗(yàn)、工程計(jì)量簽證、搶工期不顧質(zhì)量,工程暫停與復(fù)工、施工中安全隱患的處理以及施工質(zhì)量資料和簽證等,發(fā)生矛盾。監(jiān)理人員要明白,為了解決好這些問題,應(yīng)該仔細(xì)傾聽承包單位陳述的理由,根據(jù)圖紙現(xiàn)場核實(shí),對承包單位所報(bào)資料進(jìn)行審查,堅(jiān)持用事實(shí)說話,用數(shù)據(jù)說話,用書面材料說話,使承包單位口服、心服地去糾正問題。值得注意的是,建設(shè)監(jiān)理人員絕對不能對承包單位的施工問題、安全問題或施工資料問題姑息遷就,甚至自覺或不自覺地成為承包單位的施工員,質(zhì)檢員、安全員、資料員,忘掉了建設(shè)監(jiān)理人員應(yīng)起到的監(jiān)督、控
制和協(xié)調(diào)作用,如姑息可能會(huì)安全發(fā)生安全質(zhì)量事故,造成損失,這是應(yīng)該引起重視的事情。
(三)在處理與設(shè)計(jì)單位之間的監(jiān)理工作技術(shù)和藝術(shù)
施工階段監(jiān)理單位與設(shè)計(jì)單位之間雖無合同關(guān)系,但有著工作上的聯(lián)系。如:施工單位照圖施工;監(jiān)理單位照圖監(jiān)理照合同監(jiān)理,盡管施工前有過設(shè)計(jì)交底和圖紙會(huì)審,但仍有可能由于設(shè)計(jì)施工圖的細(xì)度和深度不夠,不能滿足施工需要,或者因?yàn)楣こ痰刭|(zhì)變化引起結(jié)構(gòu)形式變化,或者因使用功能變化,或者計(jì)劃調(diào)整,或者由于人、機(jī)、料、法、環(huán)的變化等使原設(shè)計(jì)施工圖發(fā)生變更。監(jiān)理單位要尊重設(shè)計(jì)施工圖,尊重設(shè)計(jì)人員,并應(yīng)給予必要的工作支持,但出現(xiàn)設(shè)計(jì)變更時(shí),仍要按規(guī)范要求的工程變更程序進(jìn)行。使最后竣工驗(yàn)收的工程實(shí)體成為業(yè)主滿意的投資省、進(jìn)度快、質(zhì)量高的建筑產(chǎn)品,成為建設(shè)監(jiān)理工作技術(shù)和藝術(shù)的結(jié)合體。
四、結(jié)束語
建設(shè)監(jiān)理人員應(yīng)該有豐富的專業(yè)理論知識和相關(guān)的基本知識;應(yīng)該有良好的職業(yè)道德,并把建設(shè)監(jiān)理工作作為一生奮斗的職業(yè),而不是一種謀生的手段。建設(shè)監(jiān)理人員要努力使自己成為懂設(shè)計(jì)、會(huì)施工、能管理、善協(xié)調(diào)的復(fù)合型人才。這就是建設(shè)監(jiān)理工作技術(shù)要求的總體,在這個(gè)技術(shù)要求的總體中,努力探討其藝術(shù)要求并去實(shí)踐,無疑會(huì)促進(jìn)建設(shè)監(jiān)理工作的飛躍。