物件導向程式設計:類別與物件詳解(Python與Java對比)
本文將透過Python和Java程式碼範例,比較講解類別和物件的概念,以及建構函數的用法。
一、 類別與物件
Python:
<code class="language-python"># Student 类定义 class Student: name = "Momo" # 创建 Student 类的对象 s1 s1 = Student() print(s1.name) </code>
Java:
<code class="language-java">// Student 类定义 class Student { String name = "Momo"; } // 主类,用于测试 Student 类 public class Main { public static void main(String[] args) { // 创建 Student 类的对象 s1 Student s1 = new Student(); System.out.println(s1.name); } }</code>
在上述程式碼中,Student
是類,s1
是類別的實例化物件。 Python 和 Java 都透過 class
關鍵字定義類,建立物件的方式略有不同:Python 使用 =
直接賦值,Java 使用 new
關鍵字。
二、 建構子
建構函式用於在建立物件時初始化物件的屬性。
Python:
<code class="language-python">class Student: def __init__(self, fullname): # 构造函数 self.name = fullname s1 = Student("Momo") print(s1.name)</code>
Java:
<code class="language-java">// Student 类定义 class Student { String name; // 实例变量 // 构造函数 public Student(String fullname) { this.name = fullname; } } // 主类,用于测试 Student 类 public class Main1 { public static void main(String[] args) { // 创建 Student 类的对象 s1 Student s1 = new Student("Momo"); // 打印名字 System.out.println(s1.name); } }</code>
Python 的建構子是 __init__
方法,Java 的建構子與類別名稱相同。兩者的作用都是為物件初始化屬性值。 Java中需要明確宣告實例變數name
,而Python則在__init__
中直接賦值。
透過上述對比,我們可以看到Python和Java在類別與物件以及建構函數的實作上存在細微的語法差異,但核心概念是一致的,都是物件導向程式設計中的基礎組成部分。
以上是'物件導向程式設計中的關鍵語法差異:Python 與 Java”的詳細內容。更多資訊請關注PHP中文網其他相關文章!