Maison >Java >javaDidacticiel >'Différences de syntaxe clés dans la programmation orientée objet : Python vs Java »
Programmation orientée objet : Explication détaillée des classes et des objets (Comparaison de Python et Java)
Cet article utilisera des exemples de code Python et Java pour comparer et expliquer les concepts de classes et d'objets, ainsi que l'utilisation des constructeurs.
1. Classes et objets
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>
Dans le code ci-dessus, Student
est la classe et s1
est l'objet instancié de la classe. Python et Java définissent tous deux des classes via le mot-clé class
et créent des objets de manière légèrement différente : Python utilise l'affectation directe =
et Java utilise le mot-clé new
.
2. Constructeur
Le constructeur permet d'initialiser les propriétés d'un objet lors de sa création.
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>
Le constructeur de Python est la méthode __init__
et le constructeur de Java a le même nom que la classe. La fonction des deux est d'initialiser les valeurs de propriété des objets. En Java, les variables d'instance doivent être explicitement déclarées name
, tandis qu'en Python, les valeurs sont attribuées directement dans __init__
.
Grâce à la comparaison ci-dessus, nous pouvons voir qu'il existe des différences de syntaxe subtiles entre Python et Java dans l'implémentation des classes, des objets et des constructeurs, mais les concepts de base sont les mêmes et ce sont tous deux des composants de base de l'orientation objet. programmation.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!