java物件導向之類與封裝

2021-07-22 19:34:38 字數 1446 閱讀 8045

一 物件導向

1.1 面向過程:我該怎麼做,然後一步步完成

物件導向:我該讓誰來做。

1.2 物件導向的好處:

更符合人的思維方式

指揮者思想

將複雜的問題簡單化

1.3 把方法封裝到物件裡,呼叫物件的方法

二 類與物件

2.1 類是組織**的基本單位

類把物件導向體現到了**中;

2.2 屬性-變數  行為-方法 

成員變數和區域性變數是可以重名的 例如:this.name=name;

this用來區分成員變數與區域性變數

2.3 private:訪問許可權修飾符 私有化的 阻止外界直接訪問

修飾的是成員變數和成員方法; 修飾的東西本類可以隨便使用;

2.4 成員方法:(一般都不定義成static)

功能性方法;

屬性賦值取值方法;

用static修飾的方法只能呼叫其他用static修飾的方法

直接呼叫

static修飾的方法直接呼叫其他方法,其他方法必須用static修飾

eat();(static修飾)

間接呼叫

如果使用物件名.方法名來呼叫其他方法,其他方法一般都不用static修飾

p.eat();(不用static修飾)

2.5 類是對某一類事物的抽象描述;

物件用於表示現實中該類事物的個體;

2.6 變數

成員變數與區域性變數區別

1.定義位置不同

成員變數類中方法外 整個類生效

區域性變數方法或語句內 方法或語句內生效

2.記憶體儲存位置不同

成員變數跟隨物件儲存到堆記憶體中,有預設值

區域性變數跟隨方法存在棧中 ,無預設值

3.**

成員變數 :跟隨物件的**而**。

成員變數 :作用域範圍結束就被**。

變數的就進原則:

成員變數不能與成員變數重名 區域性變數不能與區域性變數重名

成員變數可以和區域性變數重名

在區域性範圍內使用了乙個變數 如果區域性範圍內定義了這個變數,可以直接使用。如果沒有定義,就去成員位置去找

三 引數的傳遞

3.1 基本資料資料型別傳值;

引用資料型別傳址;

四 封裝

4.1 隱藏實現細節,提供公共訪問方式

4.2 封裝 繼承 多型 物件導向三個特徵

4.3 封裝的好處:

提高**復用性

隱藏了實現細節,提供了對外訪問方式。便於呼叫者使用

提高了安全性

4.4 this關鍵字

this一般定義在方法中;

this代表當前物件的引用;

定義好乙個類,沒有建立物件,this沒有任何意義

每乙個類都可以建立多個物件,每個物件都有各自的屬性值,但是呼叫的方法都是類中定義的那個方法

哪個物件呼叫方法,this就代表哪個物件

Java之類與物件 學生類封裝

定義乙個學生類,屬性 姓名,年齡,性別,住址,班級,1.方法 入學方法 引數為年齡 判斷學生的年齡是否大於18歲,如果大於18歲則可以入學,並列印該學生的所有資訊。2.方法 查詢方法 引數為姓名,學生陣列 如果有該同學的姓名則顯示查詢成功,否則查詢失敗。3.方法 修改方法 原姓名,學生陣列 如果有該...

JAVA物件導向封裝

一 屬性和方法封裝private 1 封裝的目的保護某些屬性和方法不被外部看到 2 封裝的實現,為屬性和方法進行封裝使用private方法,為外部訪問。舉例如下 package com.guo.ci class person public void setage int age public voi...

Java物件導向之類載入過程

類是抽象的 物件是類的具體化 多個物件共享乙個class物件 native本地方法,由作業系統的語言寫的方法 類名.getclass 物件.class public static void main string args throws exception classloader.getsystem...