日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

java面向对象(1)

發布時間:2025/6/15 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java面向对象(1) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
面向對象特點:封裝,繼承,多態 封裝
將某一類對象作為一個類,將它的所有共性封裝在一起,有自己私有的屬性和方法,但只對外提供一些公共方法,這個過程就是一個封裝的過程。 構造函數 初始化對象,如果沒有構造函數,對象將無法創建,一般我們沒有顯示創建構造函數時,java有自帶的隱含構造函數,如果我們想在初始話對象時給對象添加一些初始值,那么可以自定義構造函數,在創建對象時,顯示調用。 構造代碼塊 在構造函數運行前運行。 this關鍵字 看上去是用于區分局部變量和成員變量情況 實際this代表它所在函數所屬對象的引用
this關鍵字在構造函數間調用,并且this語句只能定義在構造函數的第一行,因為初始化要先執行 static關鍵字 用法:是一個修飾符,用于修飾成員(成員變量、成員函數)。 當成員被靜態修飾后,就多了一個調用方式,除了可以被對象調用外,還可以直接被類名調用。 類名.靜態成員。 static 特點 隨著類的加載而加載,隨著類的消失而消失。說明它的生命周期最長 優先于對象存在 被所有對象所共享 注意事項:靜態方法只能訪問靜態成員,非靜態方法既可以訪問非靜態成員,也可以訪問靜態成員
靜態方法中不可以定義this,super關鍵字。因為靜態優先于對象存在,所以靜態方法中不可以用this
靜態有利有弊:
利處:對對象的共享數據進行單獨空間存儲,節省空間。沒有必要每一個對象中都存儲一份。
弊端:生命周期過長,訪問出現局限性。(靜態雖好,只能訪問靜態)
? 主函數
是一個特殊的函數。作為程序的入口,可以被jvm調用。
主函數的定義: public:代表著該函數訪問權限是最大的。
static:代表主函數隨著類的加載就已經存在了
void:主函數沒有具體的返回值
main:不是關鍵字,但是是一個特殊的單詞,可以被jvm識別
(string[] arr):函數的參數,參數類型是一個數組,該數組中的元素是字符串。字符串類型的數據
主函數是固定格式的:jvm 識別
? javadoc:幫助文檔的制作 ? 靜態代碼塊 隨著類的加載而執行,只執行一次 用于給類初始化,并優先于主函數 對象的初始化過程 class Person {private Person(){}private String name = "hah";private int age;private static String country = "cn";Person(String name,int age){this.name = name;this.age = age;}//構造函數代碼塊 {System.out.println(name+".."+age);}public void setName(String name){this.name = name;}public void speak(){System.out.println(this.name+"..."+this.age);}public static void showCountry(){System.out.println("country="+Person.country);Person.method();}public static void method(){System.out.println("method run");}}class PersonDemo {public static void main(String[] args){Person p = new Person("zhangsan",20);p.setName("lisi");new Person();} } /* Person p = new Person("zhangsan",20);

該句話都做了什么事情?
1,因為new用到了Person.class.所以會先找到Person.class文件并加載到內存中。
2,執行該類中的static代碼塊,如果有的話,給Person.class類進行初始化。
3,在堆內存中開辟空間,分配內存地址。
4,在堆內存中建立對象的特有屬性。并進行默認初始化。
5,對屬性進行顯示初始化。
6,對對象進行構造代碼塊初始化。
7,對對象進行對應的構造函數初始化。
8,將內存地址付給棧內存中的p變量。
*/

對象調用成員過程

轉載于:https://www.cnblogs.com/shihuai355/p/3806268.html

《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀

總結

以上是生活随笔為你收集整理的java面向对象(1)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。