面向對象的思想主要包括什么,面向對象思想

 2023-11-30 阅读 27 评论 0

摘要:面向對象思想 面向對象思想概述 Java語言是一門面向對象的程序設計語言。面向對象思想是一種程序的設計思想。我們在面向對象思想的指引下,使用Java語言去設計程序、開發計算機程序,這里的【對象】泛指現實中的一切事物,每種事物都有自己的【屬性】和【行

面向對象思想

面向對象思想概述
Java語言是一門面向對象的程序設計語言。面向對象思想是一種程序的設計思想。我們在面向對象思想的指引下,使用Java語言去設計程序、開發計算機程序,這里的【對象】泛指現實中的一切事物,每種事物都有自己的【屬性】和【行為】。面向對象思想就是在程序設計過程中,參照現實中的事物,將事物的【屬性特征】、【行為特征】抽離出來,描述成計算機事件的的設計思想。它是區別于面向過程,強調是事物的行為去一步步執行的功能。
【 物以類聚人以群分】
舉例:
吃飯: 黃燜雞
面向過程:到菜市場買菜—>返回家洗菜---->切菜----->炒菜----->吃菜---->洗碗刷鍋
面向對象: 網上點菜[app]---->吃菜
區別:
面向過程:強電步驟
面向對象:強調對象,這里的對象就是【app】特點:
面向對象思想更符合人類的思考的習慣,站在領導者的角色上。它可以將復雜的事情簡單化,
并將我們從事情的執行者轉變成指揮者。面向對象語言中,包含了三大基本特征:封裝、繼承、多態。

類與對象

什么是類:
類:是一組相關【屬性】和【行為】的集合。可以把類看成一類事物的模板,使用事物的屬性特征和行為特征來描述該類事物。
現實中,描述一類事物:
屬性:描述該類事物的一種【狀態】信息。
行為:描述該類事物具備的功能,能夠做什么。

什么是對象:
對象:就是一類事物的具體的體現。對象是類的一個【實例】,必然具備該類事物的屬性特征和行為特征。
類與對象的關系:
類是對一類事物的描述,是【抽象的】。
對象是一類事物的實例,是【具體的】。
類是對象的模板,對象是類的實體。

面向對象的思想主要包括什么?類的定義
事物與類的對比
現實中的一類事物:
屬性:事物的狀態信息
行為:事物能夠做什么,具備的功能
Java中的類描述事物也是如此:
成員變量:對應事物的屬性
成員方法:對應事物的行為
類的定義格式:
public class ClassName {
// 成員變量
// 成員方法
}
定義類:定義類的成員,包括成員變量和成員方法
成員變量:和之前定義變量的格式一模一樣,只不過【位置】不同,成員變量定義在類中,方法外
成員方法:和之前定義的方法幾乎是一樣的,只不過去掉【static】。

對象的使用:

對象的使用格式:
對象創建的格式:

類名 對象名 = new 類名();

面向對象的基本概念包括、使用對象訪問類的成員信息:

     對象名.成員變量名;對象名.成員方法();

成員變量的默認值

數據類型默認值
整數(byte short int long)0
基本類型浮點類型(float double)0.0
字符型 (char)‘\u0000’
布爾類型(boolean)flase
引用類型數組、類、接口null

備注:方法內定義的變量沒有初始化,不能被使用。
如果成員變量沒有進行賦值,系統會自動給一個默認值,規則和數組一樣的。

成員變量和局部變量的區別
變量根據定義的【位置不同】,我們給變量起了不同的名字

public class People {String name = "小明";// 成員變量  public void eat() {String food = "熱干面";// 局部變量 System.out.println(name + "中午吃的是:" + food);}}

面向對象的開發方法。在類中定義的位置不同 【重點】
成員變量:類中、方法外
局部變量:方法中或者方法聲明上(形式參數)
作用范圍不同 【重點】
成員變量:類中
局部變量:方法中
初始值不同 【重點】
成員變量:有默認值
局部變量:沒有默認值,必須先定義賦值,才能使用
在內存當中存儲的位置不同 【了解】
成員變量:堆內存當中
局部變量:棧內存當中
生命周期不同 【了解】
成員變量:隨著對象的創建而存在,隨著對象的消失而消失
局部變量:隨著方法的調用而存在,隨著方法調用結束而消失。
修飾符不同 【了解】
成員變量:可以使用修飾符
局部變量:不可以使用修飾符

封裝

封裝概述
面向對象編程語言模擬客觀世界,客觀世界里的成員變量都是隱藏在對象內部的,外界無法直接操作和修改。封裝可以認為是一個保護屏障,防止該類的代碼和數據被其他類隨意訪問和修改。要訪問該類的數據,必須要通過指定的方式才可以。適當的封裝,可以讓我們的代碼更容易維護和理解,也加強了代碼的安全性。
原則
將【屬性隱藏】起來,如果想要訪問類中的某個屬性,提供【公共的方法】對其訪問。
封裝步驟

  1. 使用【private】關鍵字來修飾成員變量
  2. 對需要訪問的成員變量,提供對應的一對 getXxx方法和setXxx方法。
    封裝的操作----private關鍵字
    private是一個權限修飾符,代表最小權限
    可以修飾成員變量,也可以修飾成員方法
    被private修飾后的成員變量和成員方法,只能在本類中訪問。
    private使用格式:

private 數據類型 變量名;

public class Man {// 1.使用private關鍵字修飾成員變量 private String name;private int age;// 2.提供對應的getXxx方法和setXxx方法,可以訪問類中的成員變量// getXxx 獲取類中的成員變量值 public  String getName() {return name;}// setXxx 設置類中的成員變量值public void setName(String name) {name = name;} // 提供age的getXxx方法和setXxx方法public int getAge() {return age;} public void setAge(int age) {age = age;}      
}

封裝優化1 ---- this關鍵字

我們發現setXxx()方法當中形參名字不符合我們標識符的命名規范–見名知意,如果修改成和成員變量名字相同,會觸發Java程序當中的就近原則,會把方法內的變量統統設定為形參變量,會導致賦值失敗。我們可以采用【this】關鍵字 來解決變量重名問題。

面向對象抽象的定義,this的含義

this代表所在類的當前對象的引用(地址值),即對象對自己的引用。 備注:意思方法被哪個對象調用,方法中的this就代表那個對象。即誰調用,this就是誰。
this的使用格式
使用this關鍵字修飾方法當中的成員變量,解決成員變量被隱藏的問題:

public class Man {// 1.使用private關鍵字修飾成員變量 private String name;private int age;// 2.提供對應的getXxx方法和setXxx方法,可以訪問類中的成員變量// getXxx 獲取類中的成員變量值 public  String getName() {return name;}// setXxx 設置類中的成員變量值public void setName(String name) {this.name = name;} // 提供age的getXxx方法和setXxx方法public int getAge() {return age;} public void setAge(int age) {this.age = age;}      
}

備注:方法當中只有一個變量名,默認也是使用this修飾,可以省略不寫。封裝優化2-----構造方法 當一個對象被創建出來的時候,構造方法用來初始化對象,給對象的成員變量賦初始值。備注:無論你是否在類中定義構造方法,當類被定義出來的時候,系統會自動給該類分配一個構造方法—無參的構造方法,一旦在類中顯式的定義構造方法,Java自動提供的默認無參構造方法就會失效(被收回)。
構造方法的定義格式:

 修飾符  構造方法名(參數列表) {// 方法體內容   }  // 構造方法沒有返回值,構造方法名和類名完全一致,不需要void。

練習構造方法的使用

public class Dog {private String name;private int age;private String brand;private String color;// 優化封裝 使用構造方法public Dog(String name,String brand,int age,String color) {// 方法體內容this.name = name;this.brand = brand;this.age = age;this.color = color;}// Java提供的默認的無參構造方法//public Dog() {//}}

面向對象編程理解?注意事項

	構造方法名稱必須和所在的類名完全一樣,就連大小寫一樣        構造方法不用聲明返回值類型,連void也不需要        構造方法不能用return一個具體的返回值。        如果定義類時沒有顯式定義構造方法,系統會提供一個默認的無參構造方法       一旦自定義了一個構造方法,那么編譯器將會收回默認提供的構造方法       構造方法可以重載:方法名稱相同,參數列表不同

標準類-------JavaBean

JavaBean是Java語言編寫類的一種標準規范。符合JavaBean的類,包含四部分:		
所有的成員變量都要使用private關鍵字修飾        
要為每一個成員變量提供一對公共的getXxx和setXxx方法        
編寫一個無參的構造方法        
最好再提供一個全參的構造方法。這樣標準的類就叫做Java Bean

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://808629.com/188162.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 86后生记录生活 Inc. 保留所有权利。

底部版权信息