Java的面向對象
面向對象的概念和應用已超越了程序設計和軟件開發,擴展到很寬的範圍。下面就為大家介紹一下Java的面向對象,一起來看看吧!
一、面向對象
1、概念
面向對象是基於面向過程的編程思想
2、面向對象的思想特點
(1):面向對象思想更符合我們的思考習慣
(2):面向對象思想把複雜的事情簡單化
(3):面向對象思想讓我們從執行者變成了指揮者
理解:世間萬物皆對象
二、類與對象
1:現實世界的事物
屬性 事物的描述信息
行為 事物可以做什麼
舉例: 學生 屬性:姓名、年齡、班級... 行為:吃飯、學習、休息... |
2:Java語言中最基本的單位是類。因此,我們一般用類來體現事物
舉例: classStudent{ } |
3:類 是一組相關的屬性和行為的集合。是一個比較抽象的概念。
4:類與現實事務的對應關係
類 | 現實世界中的.事務 |
成員變量 | 事物的屬性 |
成員方法 | 事物的行為 |
舉例: 學生 屬性:姓名、年齡、班級... 行為:吃飯、學習、休息... 小明: 成員變量:姓名、年齡、班級... 成員方法:吃飯、學習、休息... |
5:對象:是該類事物的具體存在,是一個具體的實例。
舉例: 類:學生類 對象:小明 |
三、類的定義及使用
1:類的定義
成員變量
定義格式和以前一樣,就是位置不同,在類中,方法外。
成員方法
定義格式和以前一樣,就是去掉了static。
舉例: classStudent{ //成員變量 String name; intage; //成員方法 publicvoideat(){ tln("學生要吃飯"); } } |
2:使用類的內容
(1):創建對象 格式
類名 對象名 = new 類名();
(2):如何使用成員變量和成員方法呢
對象名.成員變量
對象名.成員方法()
舉例: classStudent{ //成員變量 String name; intage; //成員方法 publicvoideat(){ tln(name+"學生要吃飯"); } } 測試: publicclassTest{ publicstaticvoidmain(String[] args) { //創建對象 格式:類名 對象名 = new 類名(); Student student= newStudent(); //使用成員變量 = "xiaoming"; //使用成員方法 (); } } |
四、成員變量和局部變量的區別
1、在類中的位置不同
成員變量:類中方法外
局部變量:方法定義中或者方法聲明上
2、在內存中的位置不同
成員變量:在堆中
局部變量:在棧中
3、生命週期不同
成員變量:隨着對象的創建而存在,隨着對象的消失而消失
局部變量:隨着方法的調用而存在,隨着方法的調用完畢而消失
4、初始化值不同
成員變量:有默認值
局部變量:沒有默認值,必須定義,賦值,然後才能使用
注意:局部變量名稱可以和成員變量名稱一樣,在方法中使用的時候,採用的是就近原則。
五、匿名對象(可以參照創建對象的格式進行理解)
1、沒有名字的對象
舉例: 例1:new Student()(); 例2:new StudentTest()od(newStudentDemo()); |
2、應用場景
A:調用方法,僅僅只調用一次的時候,可以使用匿名對象。
b:可以作為實際參數傳遞。
-
java xp環境變量設置
本文實例為大家分享了java的環境變量設置方法,供大家參考,具體內容如下安裝好jdk後找到我的電腦(右鍵)——》屬性——》高級選項卡——》環境變量,裏面有管理員的用户變量,有系統變量。選哪一個都無所謂,我選的是Administrator的用户變量即管理員的.用户變量,點擊“新...
-
在Java裏處理文件的技巧
導讀:看到太多的凌亂的,不安全的處理文件的代碼了。可以説每個項目都會有人喜歡寫自己的一些FileUitl。下面是小編為大家整理的在Java裏處理文件的技巧,歡迎參考~實用的工具類,Path,Paths,Files,FileSystem有一些很靈活的處理方法://得到一個Path對象Pathpath=("/test/...
-
Java開發崗位面試題
為幫助參加Java開發崗位面試的朋友們做好準備,以下是本站小編搜索整理的一份Java集合面試問題40個【附答案】,供參考練習,希望對大家有所幫助!想了解更多相關信息請持續關注我們應屆畢業生考試網!一、Java基礎1、String類為什麼是final的。2、HashMap的源碼,實現原...
-
2017計算機二級考試Java練習題及答案
以下是應屆畢業生考試網小編整理的2017年計算機二級考試Java練習題及答案,供考生參考。更多計算機等級考試相關信息請關注應屆畢業生計算機等級考試網。1[單選題]下列方法被調用後,一定使調用線程改變當前狀態的是()。fy()d()p()ive()參考答案:C參考解析:線程調用s...