ตัวอย่างการบรรยายพร้อมผู้ให้คำปรึกษาซึ่งเป็นส่วนหนึ่งของหลักสูตร Codegym University ลงทะเบียนสำหรับหลักสูตรเต็ม


"ตอนนี้ถึงเวลาแล้วที่ฉันจะบอกคุณเกี่ยวกับตัวสร้างนี่เป็นแนวคิดที่เรียบง่ายจริงๆ โปรแกรมเมอร์ได้คิดค้นวิธีการชวเลขเพื่อสร้างและเริ่มต้นวัตถุ "

โดยไม่มีตัวสร้าง ด้วยตัวสร้าง
MyFile file = new MyFile();
file.initialize("c:\data\a.txt");
String text = file.readText();
MyFile file = new MyFile("c:\data\a.txt");
String text = file.readText();
MyFile file = new MyFile();
file.initialize("c:\data\", "a.txt");
String text = file.readText();
MyFile file = new MyFile("c:\data\", "a.txt");
String text = file.readText();
MyFile file = new MyFile();
file.initialize("c:\data\a.txt");

MyFile file2 = new MyFile();
file2.initialize( MyFile file, "a.txt");
String text = file2.readText();
MyFile file = new MyFile("c:\data\a.txt");


MyFile file2 = new MyFile(file, "a.txt");
String text = file2.readText();

"ฉันเพิ่งเสร็จสิ้นการเรียนรู้เกี่ยวกับวิธีการเริ่มต้น ... "

"ดูให้หนักขึ้น ด้วยตัวสร้าง โค้ดจะสะดวกและกะทัดรัดมากขึ้น"

"ใช่แล้ว นี่คือคำถาม ฉันรู้วิธีเขียนเมธอดinitializeภายในคลาส แต่ฉันจะเขียนคอนสตรัคเตอร์ได้อย่างไร"

"ก่อนอื่น ดูตัวอย่างนี้:"

โดยไม่มีตัวสร้าง ด้วยตัวสร้าง
class MyFile
{
  private String filename = null;

  public void initialize(String name)
  {
    this.filename = name;
  }

  public void initialize(String folder, String name)
  {
    this.filename = folder + name;
  }

  public void initialize(MyFile file, String name)
  {
    this.filename = file.getFolder() + name;
  }}
class MyFile
{
  private String filename = null;

  public MyFile(String name)
  {
    this.filename = name;
  }

  public MyFile(String folder, String name)
  {
    this.filename = folder + name;
  }

  public MyFile(MyFile file, String name)
  {
    this.filename = file.getFolder() + name;
  }}
2
งาน
Java Syntax,  ระดับบทเรียน
ล็อค
Code entry
Your attention, please! Now recruiting code entry personnel for CodeGym. So turn up your focus, let your fingers relax, read the code, and then... type it into the appropriate box. Code entry is far from a useless exercise, though it might seem so at first glance: it allows a beginner to get used to and remember syntax (modern IDEs seldom make this possible).

"เป็นเรื่องง่ายที่จะประกาศตัวสร้างภายในคลาส ตัวสร้างนั้นคล้ายกับเมธอดinitializeโดยมีข้อแตกต่างเพียงสองประการ:

1. ชื่อคอนสตรัคเตอร์เหมือนกับชื่อคลาส (แทนที่จะเป็น initialize)

2. ตัวสร้างไม่มีประเภท (ไม่ระบุประเภท)"

"ตกลง มันเหมือนกับการ initializeแต่มีความแตกต่างเล็กน้อย ฉันคิดว่าฉันเข้าใจแล้ว"