1. 程式人生 > 實用技巧 >Java:面向物件(上)

Java:面向物件(上)

目錄

學習資料

b站狂神說:https://www.bilibili.com/video/BV12J41137hu

面向物件思想

物以類聚,分類的思維模式,思考問題首先會解決問題需要那些分類,對分類進行單獨思考

面向物件本質

以類的方式組織程式碼,以物件的組織(封裝)資料。

面向物件三大特性

  • 封裝
  • 繼承
  • 多型

類是物件的模版,物件是類的例項(一類事物的具體描述)

類定義

package com.zy7y.oop;

/**
 * @ProjectName: JavaSE
 * @PackageName: com.zy7y.oop
 * @Author: zy7y
 * @Date: 2020/8/14 下午11:57
 * @Description: 學生類
 */
public class Student {

    // 屬性
    String name;
    int age;

    //方法
    public void study(){
        // this, 指當前例項
        System.out.println(this.name + "學習JavaSE");
    }
}

例項化類

package com.zy7y.oop;

/**
 * @ProjectName: JavaSE
 * @PackageName: com.zy7y.oop
 * @Author: zy7y
 * @Date: 2020/8/14 下午11:58
 * @Description: 啟動方法
 */
public class Application {
    public static void main(String[] args) {
        // 例項化:一個Student物件
        Student student = new Student();
        student.name = "小明";
        student.study();
    }
}

構造方法

package com.zy7y.oop;

import com.sun.tools.javac.comp.Resolve;

/**
 * @ProjectName: JavaSE
 * @PackageName: com.zy7y.oop
 * @Author: zy7y
 * @Date: 2020/8/15 上午12:04
 * @Description: 構造方法: public 類名(), 無返回值
 */
public class Person {
    String name;
    // 類中預設有一個無參構造方法

    // 定義有參構造方法;構造方法的作用,初始化屬性, 如果定義了有參構造方法,還需要無參構造方法,需要顯示定義無參構造方法
    public Person(String name){
        this.name = name;
    }
    // alt + insert 快速生成構造方法


    // 顯示定義無參構造方法
    public Person() {
        this.name = "zy7y";
    }
}

// 啟動檔案
public class Application {
    public static void main(String[] args) {

        // 使用有參構造方法來初始化name屬性
        Person person = new Person("小軍");
        System.out.println(person.name);

        // 使用無引數構造方法
        Person zy7y = new Person();
        System.out.println(zy7y.name);
    }
}

建立物件記憶體分析