精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

零基礎學Java:對象和類

開發 后端
OOP 的英文全稱是 Object Oriented Programming,要理解它的話,就要先理解面向對象,要想理解面向對象的話,就要先理解面向過程,因為一開始沒有面向對象的編程語言,都是面向過程。

[[353195]]

“二哥,我那天在圖書館復習上一節你講的內容,剛好碰見一個學長,他問我有沒有‘對象’,我說還沒有啊。結果你猜他說什么,‘要不要我給你 new 一個啊?’我當時就懵了,new 是啥意思啊,二哥?”三妹滿是疑惑的問我。

“哈哈,三妹,你學長還挺幽默啊。new 是 Java 中的一個關鍵字,用來把類變成對象。”我笑著對三妹說,“對象和類是 Java 中最基本的兩個概念,可以說撐起了面向對象編程(OOP)的一片天。”

01、面向過程和面向對象

三妹是不是要問,什么是 OOP?

OOP 的英文全稱是 Object Oriented Programming,要理解它的話,就要先理解面向對象,要想理解面向對象的話,就要先理解面向過程,因為一開始沒有面向對象的編程語言,都是面向過程。

舉個簡單點的例子來區分一下面向過程和面向對象。

有一天,你想吃小碗湯了,怎么辦呢?有兩個選擇:

1)自己買食材,豆腐皮啊、肉啊、蒜苔啊等等,自己動手做。

2)到飯店去,只需要對老板喊一聲,“來份小碗湯。”

第一種就是面向過程,第二種就是面向對象。

面向過程有什么劣勢呢?假如你買了小碗湯的食材,臨了又想吃宮保雞丁了,你是不是還得重新買食材?

面向對象有什么優勢呢?假如你不想吃小碗湯了,你只需要對老板說,“我那個小碗湯如果沒做的話,換成宮保雞丁吧!”

面向過程是流程化的,一步一步,上一步做完了,再做下一步。

面向對象是模塊化的,我做我的,你做你的,我需要你做的話,我就告訴你一聲。我不需要知道你到底怎么做,只看功勞不看苦勞。

不過,如果追到底的話,面向對象的底層其實還是面向過程,只不過把面向過程進行了抽象化,封裝成了類,方便我們的調用。

02、類

對象可以是現實中看得見的任何物體,比如說,一只特立獨行的豬;也可以是想象中的任何虛擬物體,比如說能七十二變的孫悟空。

Java 通過類(class)來定義這些物體,這些物體有什么狀態,通過字段來定義,比如說比如說豬的顏色是純色還是花色;這些物體有什么行為,通過方法來定義,比如說豬會吃,會睡覺。

來,定義一個簡單的類給你看看。

  1. /** 
  2.  * 微信搜索「沉默王二」,回復 Java 
  3.  * 
  4.  * @author 沉默王二 
  5.  * @date 2020/11/19 
  6.  */ 
  7. public class Person { 
  8.     private String name
  9.     private int age; 
  10.     private int sex; 
  11.  
  12.     private void eat() { 
  13.     } 
  14.  
  15.     private void sleep() { 
  16.     } 
  17.  
  18.     private void dadoudou() { 
  19.     } 

一個類可以包含:

  • 字段(Filed)
  • 方法(Method)
  • 構造方法(Constructor)

在 Person 類中,字段有 3 個,分別是 name、age 和 sex,它們也稱為成員變量——在類內部但在方法外部,方法內部的叫臨時變量。

成員變量有時候也叫做實例變量,在編譯時不占用內存空間,在運行時獲取內存,也就是說,只有在對象實例化(new Person())后,字段才會獲取到內存,這也正是它被稱作“實例”變量的原因。

方法 3 個,分別是 eat()、sleep() 和 dadoudou(),表示 Person 這個對象可以做什么,也就是吃飯睡覺打豆豆。

那三妹是不是要問,“怎么沒有構造方法呢?”

的確在 Person 類的源碼文件(.java)中沒看到,但在反編譯后的字節碼文件(.class)中是可以看得到的。

  1. // 
  2. // Source code recreated from a .class file by IntelliJ IDEA 
  3. // (powered by Fernflower decompiler) 
  4. // 
  5.  
  6. package com.itwanger.twentythree; 
  7.  
  8. public class Person { 
  9.     private String name
  10.     private int age; 
  11.     private int sex; 
  12.  
  13.     public Person() { 
  14.     } 
  15.  
  16.     private void eat() { 
  17.     } 
  18.  
  19.     private void sleep() { 
  20.     } 
  21.  
  22.     private void dadoudou() { 
  23.     } 

public Person(){} 就是默認的構造方法,因為是空的構造方法(方法體中沒有內容),所以可以缺省。Java 聰明就聰明在這,有些很死板的代碼不需要開發人員添加,它會偷偷地做了。

03、new 一個對象

創建 Java 對象時,需要用到 new 關鍵字。

Person person = new Person();

這行代碼就通過 Person 類創建了一個 Person 對象。所有對象在創建的時候都會在堆內存中分配空間。

創建對象的時候,需要一個 main() 方法作為入口, main() 方法可以在當前類中,也可以在另外一個類中。

第一種:main() 方法直接放在 Person 類中。

  1. public class Person { 
  2.     private String name
  3.     private int age; 
  4.     private int sex; 
  5.  
  6.     private void eat() {} 
  7.     private void sleep() {} 
  8.     private void dadoudou() {} 
  9.  
  10.     public static void main(String[] args) { 
  11.         Person person = new Person(); 
  12.         System.out.println(person.name); 
  13.         System.out.println(person.age); 
  14.         System.out.println(person.sex); 
  15.     } 

輸出結果如下所示:

  1. null 

第二種:main() 方法不在 Person 類中,而在另外一個類中。

實際開發中,我們通常不在當前類中直接創建對象并使用它,而是放在使用對象的類中,比如說上圖中的 PersonTest 類。

可以把 PersonTest 類和 Person 類放在兩個文件中,也可以放在一個文件(命名為 PersonTest.java)中,就像下面這樣。

  1. /** 
  2.  * @author 微信搜「沉默王二」,回復關鍵字 PDF 
  3.  */ 
  4. public class PersonTest { 
  5.     public static void main(String[] args) { 
  6.         Person person = new Person(); 
  7.     } 
  8.  
  9. class Person { 
  10.     private String name
  11.     private int age; 
  12.     private int sex; 
  13.  
  14.     private void eat() {} 
  15.     private void sleep() {} 
  16.     private void dadoudou() {} 

04、初始化對象

在之前的例子中,程序輸出結果為:

  1. null 

為什么會有這樣的輸出結果呢?因為 Person 對象沒有初始化,因此輸出了 String 的默認值 null,int 的默認值 0。

那怎么初始化 Person 對象(對字段賦值)呢?

第一種:通過對象的引用變量。

  1. public class Person { 
  2.     private String name
  3.     private int age; 
  4.     private int sex; 
  5.  
  6.     public static void main(String[] args) { 
  7.         Person person = new Person(); 
  8.         person.name = "沉默王二"
  9.         person.age = 18; 
  10.         person.sex = 1; 
  11.          
  12.         System.out.println(person.name); 
  13.         System.out.println(person.age); 
  14.         System.out.println(person.sex); 
  15.     } 

person 被稱為對象 Person 的引用變量,見下圖:

通過對象的引用變量,可以直接對字段進行初始化(person.name = "沉默王二"),所以以上代碼輸出結果如下所示:

  1. 沉默王二 
  2. 18 

第二種:通過方法初始化。

  1. /** 
  2.  * @author 沉默王二,一枚有趣的程序員 
  3.  */ 
  4. public class Person { 
  5.     private String name
  6.     private int age; 
  7.     private int sex; 
  8.  
  9.     public void initialize(String n, int a, int s) { 
  10.         name = n; 
  11.         age = a; 
  12.         sex = s; 
  13.     } 
  14.  
  15.     public static void main(String[] args) { 
  16.         Person person = new Person(); 
  17.         person.initialize("沉默王二",18,1); 
  18.  
  19.         System.out.println(person.name); 
  20.         System.out.println(person.age); 
  21.         System.out.println(person.sex); 
  22.     } 

在 Person 類中新增方法 initialize(),然后在新建對象后傳參進行初始化(person.initialize("沉默王二", 18, 1))。

第三種:通過構造方法初始化。

  1. /** 
  2.  * @author 沉默王二,一枚有趣的程序員 
  3.  */ 
  4. public class Person { 
  5.     private String name
  6.     private int age; 
  7.     private int sex; 
  8.  
  9.     public Person(String nameint age, int sex) { 
  10.         this.name = name
  11.         this.age = age; 
  12.         this.sex = sex; 
  13.     } 
  14.  
  15.     public static void main(String[] args) { 
  16.         Person person = new Person("沉默王二", 18, 1); 
  17.  
  18.         System.out.println(person.name); 
  19.         System.out.println(person.age); 
  20.         System.out.println(person.sex); 
  21.     } 

這也是最標準的一種做法,直接在 new 的時候把參數傳遞過去。

補充一點知識,匿名對象。匿名對象意味著沒有引用變量,它只能在創建的時候被使用一次。

  1. new Person(); 

可以直接通過匿名對象調用方法:

  1. new Person().initialize("沉默王二", 18, 1); 

“好了,三妹,關于 Java 中的對象和類就先說這么多吧。”轉動了一下僵硬的脖子后,我對三妹說。

“好的,二哥,你辛苦了,我來給你按摩下。”

本文轉載自微信公眾號「沉默王二」,可以通過以下二維碼關注。轉載本文請聯系沉默王二公眾號。

 

責任編輯:武曉燕 來源: 沉默王二
相關推薦

2021-01-13 14:55:54

JavaPython開發

2016-11-25 13:05:18

2020-10-20 14:50:26

Python數字字符串

2020-11-23 09:46:18

Java方法權限

2021-03-23 17:21:48

Java編程開發

2014-10-08 10:42:08

萌碼編程

2018-06-13 10:23:27

編程語言Python數據庫

2022-03-15 09:31:17

ESLint工作原理前端

2017-09-21 15:31:49

2012-02-22 10:33:36

Wi-Fi

2021-03-31 11:21:36

Java語言編程

2020-04-09 14:02:33

NginxHttps前端

2019-11-11 14:09:17

Swift數據科學語言

2024-06-17 10:45:57

C語言編程變量容器

2018-08-24 09:00:00

DevOps持續集成連續部署

2024-12-31 07:00:00

2021-03-11 11:50:07

kafka服務器Java

2021-08-27 07:13:52

UI計算機圖形

2022-02-17 18:11:53

PostCSS流程API

2017-09-18 10:48:06

深度學習零基礎入門
點贊
收藏

51CTO技術棧公眾號

亚洲色图久久久| 亚洲va男人天堂| 国产调教在线观看| 91成人精品观看| 亚洲女子a中天字幕| 国产不卡一区二区三区在线观看| 亚洲黄色小说图片| 99久久综合| 日韩av在线免费| 在线免费观看av网| 欲香欲色天天天综合和网| 国产精品久久久久7777按摩| 国产欧美在线一区二区| 中文字幕777| 亚洲美女黄网| 久久综合久中文字幕青草| 国产国语性生话播放| 9999精品| 在线观看亚洲精品| 亚洲精美视频| 一本久道中文无码字幕av| 999在线视频| 成人午夜在线播放| 成人黄色午夜影院| 国产精品久久久久久人| 狠狠入ady亚洲精品| 最近2019中文字幕一页二页| 亚洲天堂2024| 一区中文字幕电影| 在线成人免费视频| 污污网站免费看| 校园春色亚洲色图| 欧美日韩精品在线视频| 免费看欧美一级片| 中文字幕中文字幕在线十八区 | 欧美亚洲视频在线看网址| 强制高潮抽搐sm调教高h| 国产精品自拍区| 亚洲精品有码在线| 夜夜爽夜夜爽精品视频| 久久久在线免费观看| 日韩精品久久久久久久的张开腿让| 欧美巨大xxxx| 亚洲大胆人体av| 91精品国产高清91久久久久久| 国产95亚洲| 制服丝袜亚洲色图| 日韩欧美亚洲另类| 亚洲三级在线| 91精品婷婷国产综合久久竹菊| 亚洲这里只有精品| 91p九色成人| 欧美亚洲一区二区三区四区| 欧美三级午夜理伦三级| 麻豆蜜桃在线观看| 欧美日韩中文在线| 粉嫩虎白女毛片人体| 在线女人免费视频| 色呦呦日韩精品| 亚洲色图久久久| 日韩一区中文| 欧美一级日韩一级| 最新日本中文字幕| 婷婷精品在线观看| 亚洲视频专区在线| 99re6热在线精品视频| 99热国内精品| 色综合男人天堂| 日韩不卡一二三区| 在线免费看h| 亚洲免费观看| 热99精品里视频精品| 欧美特黄aaaaaa| 久久精品欧洲| 国产精品一区二区三| 国产又粗又猛又爽又黄视频| 国产尤物一区二区在线| 粉嫩av一区二区三区免费观看| 天堂网在线播放| 国产偷国产偷精品高清尤物| 亚洲精品在线免费看| www在线免费观看视频| 亚洲一区二区在线免费看| 黄色一级视频片| 日本一道高清亚洲日美韩| 欧美欧美午夜aⅴ在线观看| 久久发布国产伦子伦精品| 欧美调教在线| 最近的2019中文字幕免费一页 | 茄子视频成人免费观看| 久久亚洲国产精品尤物| 精品美女在线观看| 午夜在线观看一区| 欧美激情四色| 国产成人免费av电影| 国产三区在线播放| 91麻豆蜜桃一区二区三区| 一级日韩一区在线观看| 亚洲午夜久久久影院伊人| 日韩久久不卡| 国产日韩在线观看一区| eeuss鲁片一区二区三区在线观看| 欧美日韩亚洲在线| 超碰免费公开在线| 欧美日韩亚洲一区二区| 亚洲一区二区三区三州| 神马久久一区二区三区| 久久99精品久久久久久噜噜| 凹凸精品一区二区三区| 国产69精品久久久久777| 无遮挡亚洲一区| 精品极品在线| 日韩视频中午一区| 18精品爽国产三级网站| 亚洲日本欧美| 99porn视频在线| 一级毛片视频在线观看| 一道本成人在线| 亚洲视频视频在线| 日本美女bbw| 亚洲视频1区| 99一区二区三区| 精品176二区| 在线观看区一区二| 偷拍女澡堂一区二区三区| 欧美破处大片在线视频| 国产精品一区二区电影| 精品乱码一区二区三四区视频 | 天天综合五月天| 蜜桃视频成人m3u8| 亚洲欧美日韩图片| 波多野结衣国产| 99精品一区二区三区| www.国产在线视频| xxxxxhd亚洲人hd| 欧美高清无遮挡| 精品人妻伦一区二区三区久久| 国产精品拍天天在线| 丁香啪啪综合成人亚洲| 外国成人在线视频| 3344国产精品免费看| 婷婷五月综合久久中文字幕| 午夜伦欧美伦电影理论片| 在线播放av网址| 激情一区二区| 国产美女精品久久久| 精灵使的剑舞无删减版在线观看| 日韩欧美一区二区三区在线| 欧美三级小视频| 国产成+人+日韩+欧美+亚洲| 主播福利视频一区| 午夜激情福利在线| 欧美综合在线视频观看| 国产精品高清免费在线观看| 韩国福利在线| 欧美日韩中文字幕一区| 制服丨自拍丨欧美丨动漫丨| 看片的网站亚洲| 中日韩在线视频| 久久9999免费视频| 久久97久久97精品免视看| 国产内射老熟女aaaa∵| 一个色妞综合视频在线观看| 95视频在线观看| 亚洲永久网站| 亚洲精品一区二区三区蜜桃久| 欧美美女福利视频| 欧美刺激性大交免费视频| 亚洲精品911| 欧美性猛交99久久久久99按摩| 黄免费在线观看| 韩国av一区二区三区| 麻豆映画在线观看| 欧美韩一区二区| 国产精品久久久久久久久免费| 日本免费在线观看| 精品成人a区在线观看| 手机看片久久久| 中文字幕一区二区三区四区不卡| 337p日本欧洲亚洲大胆张筱雨| 国产精品毛片在线| 亚洲一区三区在线观看| 一本色道69色精品综合久久| 欧美在线观看一区二区三区| 91大神在线网站| 精品国产伦理网| 国产精品午夜一区二区| 一区二区三区欧美久久| 美女久久久久久久久久| 激情av综合网| 1024av视频| 天天综合国产| 精品日本一区二区三区在线观看| 成人黄色免费网站| 久久久久久久影院| 一区二区三区视频网站 | 每日更新在线观看av| 欧美人牲a欧美精品| 日本特黄特色aaa大片免费| 色资源在线观看| 亚洲国产精品久久不卡毛片| 日本乱子伦xxxx| 国产91精品一区二区麻豆亚洲| 欧美第一页在线| 五月天综合激情| 最近中文字幕一区二区三区| 亚洲中文字幕一区| 国产精品18久久久| www.日本一区| 三级欧美韩日大片在线看| 久久人人爽人人爽人人av| 99精品全国免费观看视频软件| 久久精品人人做人人爽电影| 久久一级大片| 国产日韩精品在线播放| 日韩伦理三区| 91chinesevideo永久地址| 制服丝袜在线播放| 日韩在线一区二区三区免费视频| 人成免费电影一二三区在线观看| 欧美电影精品一区二区| 夜夜躁很很躁日日躁麻豆| 色激情天天射综合网| 久久露脸国语精品国产91| 亚洲黄色性网站| 国产一区二区精彩视频| 国产精品亲子伦对白| 天堂在线中文视频| 久久久久综合网| 精品人妻少妇嫩草av无码| www.亚洲色图.com| www.17c.com喷水少妇| 国产精品99久久久久久久vr| 超碰人人草人人| 极品少妇xxxx精品少妇偷拍| 美女少妇一区二区| 日韩不卡一区二区| 亚洲欧美另类动漫| 爽好多水快深点欧美视频| 国产免费黄视频| 日韩视频一区| 国产资源在线视频| 一本色道精品久久一区二区三区| 大伊香蕉精品视频在线| 国产精品a久久久久| 日韩精品久久一区二区| 国产一在线精品一区在线观看| 成年丰满熟妇午夜免费视频 | 理论视频在线| 日韩高清人体午夜| 亚洲av成人精品一区二区三区在线播放 | 91av在线免费播放| 日韩精品一二区| 欧美日韩一区二区三区69堂| 另类小说综合欧美亚洲| 日日干日日操日日射| 国产精品66部| 久久久国产精品无码| 久久天天做天天爱综合色| 91久久免费视频| 国产精品高清亚洲| 欧美日韩免费做爰视频| 午夜视频一区在线观看| 五月婷婷激情视频| 欧美三级电影网站| 国产男男gay体育生白袜| 日韩精品一区二区三区swag| 人人妻人人玩人人澡人人爽| 国产丝袜一区视频在线观看| 成人18在线| 超薄丝袜一区二区| 888av在线视频| 国产精品电影网站| а天堂中文最新一区二区三区| 99热99热| 九九热爱视频精品视频| 中文字幕综合在线观看| 在线欧美视频| 999精品视频在线| 国产成人一区在线| 久久精品视频18| 亚洲狠狠丁香婷婷综合久久久| 午夜精品久久久久久久久久久久久蜜桃 | 日本不卡在线观看视频| 免费高清成人在线| 在线观看免费视频国产| 欧美激情一区三区| 久久综合成人网| 精品视频1区2区| 免费国产黄色片| 色噜噜狠狠色综合网图区| 免费在线看污片| 国产精品自拍小视频| 国产主播性色av福利精品一区| 色综合久久88色综合天天提莫| 欧美91视频| 青青在线视频免费| 成人三级伦理片| 成人信息集中地| 色综合久久久久综合体| 亚洲黄色在线免费观看| 日韩有码在线观看| 一个人看的www视频在线免费观看| 亚洲xxxx视频| 日本电影一区二区| 欧美激情在线观看| 特级西西444www高清大视频| 精品少妇一区二区三区视频免付费| 国产精品二线| 97久久精品国产| 6080成人| 天堂av在线中文| 蜜臀91精品一区二区三区| 成人无码www在线看免费| 亚洲综合在线五月| 国产三级第一页| 俺去啦;欧美日韩| 99久久久国产精品免费调教网站 | 日本wwwxxxx| 欧美大片在线免费观看| 国内精品视频| 中文字幕久精品免| 青青草伊人久久| av电影在线不卡| 日韩欧美亚洲成人| 香蕉国产在线视频| 韩国三级电影久久久久久| 综合伊人久久| 日韩精品视频在线观看视频| 国产精品自拍网站| 日韩视频中文字幕在线观看| 欧美美女一区二区在线观看| 国产午夜精品一区理论片| 国产91精品久久久久久| 日韩超碰人人爽人人做人人添| 男女日批视频在线观看| 成人少妇影院yyyy| 国产精品不卡av| 亚洲精品720p| 女人让男人操自己视频在线观看| 国产区一区二区三区| 亚洲精品美女| 女人被狂躁c到高潮| 欧美日韩午夜剧场| 青青草观看免费视频在线 | 精品视频在线观看一区| 成人av网站在线| 久久艹免费视频| 国产午夜精品一区二区三区 | 欧洲一区二区在线观看| 久久久久99| 五月天精品在线| 91精品国产一区二区三区| 欧洲中文在线| 九九久久99| 日本不卡在线视频| 手机av在线看| 亚洲爱爱爱爱爱| 黑人巨大精品| 一区一区视频| 丁香一区二区三区| 中文字幕第15页| 中文字幕国产日韩| 精品国产亚洲一区二区在线观看 | 日韩在线资源网| 精品久久久免费视频| 亚洲一区二区三区激情| 日韩中文字幕免费观看| 日本成人精品在线| 99精品美女| 亚洲精品乱码久久久久久蜜桃图片| 欧美日韩在线视频一区| 中文字幕在线免费| 99久久国产免费免费| 午夜影院日韩| 91高清免费观看| 亚洲激情 国产| 精品女同一区二区三区在线观看| 成人免费看片视频在线观看| 97久久精品人人澡人人爽| 美女黄页在线观看| 欧美激情免费观看| 国产欧美日韩在线观看视频| 午夜不卡福利视频| 欧美日韩亚洲高清| 精品国产白色丝袜高跟鞋| 久久精品magnetxturnbtih| 六月丁香综合在线视频| 日本少妇性高潮| 色阁综合伊人av| 欧美激情15p| 波多野结衣电影免费观看| 色综合天天综合网天天看片| 成人在线观看亚洲| 欧美精品一区二区三区在线看午夜| 狠狠色伊人亚洲综合成人| av大全在线观看| 欧美日产国产成人免费图片| 精品精品99| 自拍视频一区二区|