欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    程式设计基础班.ppt

    • 资源ID:6138929       资源大小:285.50KB        全文页数:55页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    程式设计基础班.ppt

    ch02,1,Java 程式設計基礎班(ch02),黃仁暐台大電機所CS組博士班,ch02,2,回顧,Eclipse使用入門,ch02,3,Lesson 2 Java程式語言介紹,ch02,4,Java基本知識介紹,大小寫有差(Case Sensitive)A和a是不同的,String和string不同Strongly Typed所有的變數均須有其定義的type如VB,php就可以不用定義除了基本型別的資料之外,其它均為物件!基本型別資料型態是不用new的,ch02,5,Java基本知識介紹,每一個Java的程式都至少是一個使用者定義的類別(class)檔名一定為 類別.java 格式,應用程式必須有一個main函式,程式是由此開始執行public static void main(String args)System.out可以印出訊息,ch02,6,Java基本知識介紹,Java Package可依不同的分類(e.g.,功能,品牌),將相關的classes group在一起可達到軟體重複使用(reuse)可提供一個unique的class names一般來說,命名順序和internet domain name剛好相反,是由大小排列,ch02,7,Java基本知識介紹,Java有豐富的標準函式庫資料結構網路圖形介面和繪圖資料庫存取XML剖析,ch02,9,一個典型的java檔內容,1/this is our first java program2/Text-printing program.3 package javacourse1;4 public class Welcome1 5/main method begins execution of Java application6 public static void main(String args)7 System.out.println(Welcome to Java Programming!);8/end method main9/end class Welcome1,ch02,10,Java基本知識介紹(註解方式),ch02,11,Java基本知識介紹(statement),單行表示式:以分號結尾“;”x=1;x+;System.out.println(“blah blah”);複合敘述:以一對大括號包起來“”getStart()int x;x-;空敘述:單一分號,作為迴圈主體while(c!=false);,Java基本知識介紹(基本型態),ch02,13,Java基本知識介紹(基本型態的值域),ch02,14,Java基本知識介紹(boolean值),if(a)while(i),if(a!=null)while(i!=0),和C/C+有很大不同,Java不允許入下的寫法:,不允許其他型態的變數值轉換成boolean型態來使用,這在C+/C是很常用的方法,如此才對,ch02,15,Java基本知識介紹(String),在Java中,String不是基本型別,而是一個物件型態“Hello,world”“Hello is a String”String中可存在跳脫字元t n,ch02,16,Java基本知識介紹(保留字),識別字是用來指程式中所用到的符號名稱。類別、方法、參數、變數的名稱都是識別子,必須以字母、底線(_)或 Unicode的貨幣符號(例如:$)開頭,之後可接任意數目的字母、或是數字。the_Current;_myVariable;記住:有一些符號是不能當成變數的開頭的如不能以數字開頭。7_myVar,ch02,17,Java基本知識介紹(保留字),ch02,18,Java基本知識介紹(型態轉換),boolean 不能和任何型態作轉換放大轉換(widening conversion)Java 會自動執行放大轉換int float,doublechar int,float縮小轉換(narrowing conversion)有可能發生資料遺失的情形,所以Java 會在你想要做縮小轉換時,出現抱怨(complain),ch02,19,Java基本知識介紹(型態轉換),並非每一種縮小轉換都是被允許的在縮小轉換中,如需強制轉換,要特別指定轉換後的type,如double d=0;int i=(int)d;使用者必須自己確保資料的正確性見範例程式exercise2_1.java,ch02,20,Java基本知識介紹(reference),除了前述的八種型態,Java 另外定義了 類別 與 陣列兩種參考型態(reference type),可以依照自己的需求來製作類別與陣列資料型態。Java 的程式是由類別與所其定義的類別所組成的。每個類別均會定義新的資料型態來給 Java 程式運算。陣列型態則是由許多某種的資料型態數值所組成的串列。類別:將會在之後做介紹。,ch02,21,Java基本知識介紹(reference),參考:是指該物件或陣列被儲存在記憶體中的位址。Java 的參考並不像指標(pointer):參考並不能轉換成整數,亦不能拿來作遞加或遞減的操作。基本資料型態都具標準且定義精確的大小,在記憶體中有固定大小的位置來儲存(1 8 bytes)。陣列與類別是複合型的參考型態(reference type),並沒有固定的大小。不同於基本資料行態的操作方式-直接把值取出來操作。,ch02,22,Java基本知識介紹(reference),因此 Java 並不會直接操作物件(實作的類別)與陣列,而是以參考(reference)的方式來操作。Java 的物件是根據參考的方式來處理,不同於C/C+中是根據數值方式來處理,所以沒有&運算子,也就沒有指標*。,ch02,23,Java基本知識介紹(重要概念喔),基本資料型態與參考資料型態的不同:變數的指定傳遞的方法複製的方式使用運算子“=”來比較是否相等的方式 也是不同的。基本資料型態 使用“=”時,會比較真正的數值是否相等。物件與陣列使用“=”時,會比較是否是同一個物件或陣列的參考,並不是比較其內容。,ch02,24,Java基本知識介紹(重要概念喔),要比較物件與陣列的內容,我們必須使用 equals()的方式。所有的物件與陣列都會繼承 Object.equals()這方法,因為所有的參考型態的物件都根源於Object類別。見exercise2_2.java,ch02,25,Java基本知識介紹(陣列array),Java的陣列是以物件型態存在使用陣列時先宣告為某種型態的變數,然後以 new 來建立一實體。宣告方式型態 變數名稱 or 型態 變數名稱E.g.,int myArray;初始化int myArray=new int10;陣列的index由0開始,ch02,26,Java基本知識介紹(陣列array),ch02,27,Java基本知識介紹(陣列array),ch02,28,Java基本知識介紹(重要概念喔),所有的陣列型態都不相同,因此不同陣列型態之間一定不能轉換(縱使,陣列內元素的基本資料型態是可以轉換的)。例如:byte 不能與 int 做轉換陣列在型態上不具有階級性,但所有的陣列都可以與 Object 作轉換(放大)因為所有的陣列都源於Object。Object o=new int 1,2,3;/放大int a=(int)o;/縮小,ch02,29,Java 表示式 與 運算子,表示式(expression)是Java 程式中的基本結構。Java 直譯器可以算出表示式的值。利用運算子(operator)可以將許多基本的表示式結合成更複雜的表示式。,ch02,30,Java 表示式 與 運算子,基本(primary)表示式:為單一實字與變數。1.7 float 實字true boolean 實字varPar 變數表示式與運算子結合varPar=1.7/=是運算子varPar=1+2+3*4+(5+6)/7,ch02,31,Java 表示式與運算子(續),ch02,32,Java 表示式與運算子(續),ch02,33,Java 表示式與運算子(續),ch02,34,Java 表示式與運算子(續),ch02,35,Java 的Statement,標籤敘述:用法:label:statementouterloop:while(a 10)innerloop:while(b 20)break outerloop;變數宣告:final type name=value,name=value-;例如:final String s1=“hello”,s2=readLine();/s1,s2 以後永遠不能改變了,變數的宣告與有效範圍(Scope),Member variableLocal variablemethod parameter exception-handler parameter,ch02,37,變數的宣告與有效範圍(Scope),Consider the following code sample:if(.)int i=17;.System.out.println(The value of i=+i);/error,ch02,38,Java 基本語法,簡介,ch02,39,if else 條件敘述,if(condition)statements else statements 用來執行決策動作if(username=null)username=“Mary”;if(addr=null)|(addr.equals(“”)addr=“undefined”;System.out.println(“please write your addr.”);,ch02,40,if else-if 條件子句,if(name.equals(“王建民”)System.out.println(“台灣之光”);else if(name.equals(“麥可喬登”)System.out.println(“籃球之神”);else if(name.equals(“黃仁暐”)System.out.println(“Java班講師”);else System.out.println(“最後一種情況:或者以上皆非的情況”);,ch02,41,Switch 條件敘述,有時候用if-else的分支條件的方式來寫程式,會很冗長。這時候,可以考慮用switch的方式來選擇對應執行的程式區段。switch 用來選擇的條件值必須是 byte,char,short,int型態,long,double,float,boolean不能在此使用。case 標籤後的值必須為常數值、可以在編譯時算出的常數值表示式,不可為變數或方法的呼叫。不能有兩個以上的 case 標籤具有相同的值。,ch02,42,Switch 條件敘述(續),switch(value)case 1:程式區塊 1 break;case 2:程式區塊 2 break;default:/以上皆非的處理情況 程式區塊 break;,ch02,43,while 迴圈敘述,while 敘述執行時會先求出表示式的值,若是false,直譯器會跳過迴圈主體而到程式中的下一個敘述;若是為true,則迴圈主體內的敘述會執行一次,然後又會再回到表示式去,重新去判斷現在的狀態(state)是否為true。int n=0;while(n 10)n+;,ch02,44,do 迴圈敘述,do statement程式區塊while(條件測試式);int n=0;do n+;while(n 10);不建議使用,因為會破會結構性,do-while可以由其他迴圈來去取代,ch02,45,for(初始值;條件測試式;運算方式-如遞增)程式區塊;,int n;for(n=10;n0;n-)System.out.println(“value:”+n);,for 迴圈敘述,ch02,46,for(初始值;條件測試式;運算方式 如遞增)程式區塊;,初始值;while(條件測試式)運算方式 如遞增;,for 和 while 的比較,ch02,47,break 跳離(迴圈)程式區塊,break 敘述會讓Java直譯器馬上終止目前正在執行中的程式區塊(例如switch敘述中的break)。int n=0;while(n10000)n+;if(n=100)break;,ch02,48,break 跳離(迴圈)程式區塊,break也可以配合標籤(label)使用,意思是讓直譯器跳離目前該標籤所指定的敘述的區塊。label_forTest:for(int i=0;i 100;i+)for(int j=0;j 50;j+)break label_forTest;,ch02,49,continue 重新啟始迴圈,continue會中斷此次迴圈的執行,並開始執行下一個次的迴圈。當然也可以和標籤(label)一起配合運作。continue只適用在迴圈類的敘述如for,while,do-while。要從哪裡重新開始?條件測試式那一行開始。,ch02,50,continue 重新啟始迴圈,int n=0;while(n10)n+;if(n=5)continue;System.out.print(n);,ch02,51,return 結束方法 回傳值,通常放在會被呼叫的方法(method)的最後一行,告訴直譯器要停止執行目前所在的方法,並根據該方法在宣告時所指定的回傳值型態,return回去給呼叫它的程式命令。float sum(float a,float b)return a+b;void killTop(int x)myArray.deleteFirst(x);/不必回傳值,ch02,52,throw 丟出例外(Exception)catch 攫取信號以及狀況的處理,Java 程式語言中的例外,是一個信號:用來指示出某種意外狀況的發生以及其對應的錯誤訊息。一旦你在程式裡加進了throw 敘述,則直譯器一執行到它時,會馬上停止正常的程式執行,然後去尋找對應的例外處理器(Exception Handler),沒找到的話,直譯器會列出錯誤訊息。throw 的查核很嚴謹,用了一次就一定要有對應的handler。寫程式時很容易就疏忽,造成很多的error。個人建議:要做就要做到最好!不要做就不會出錯:p,ch02,53,try catchfinally 敘述例外的處理,try/try 會建立一個程式區塊來處理例外/*可以有多個處理不同例外型態的catch*/catch(SomeException err1)/此敘述型態為SomeException的物件catch(AnotherException err2)finally/一定會在離開try子句之後執行,除非你在 try裡頭寫了 System.exit();,ch02,54,Exception 例外的處理很繁複,使用時要很留意對應的 handler免得出現一大堆不易看懂的error messages基本上程式要寫得好要懂得活用Exception才行!,ch02,55,

    注意事项

    本文(程式设计基础班.ppt)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开