Codegym Üniversitesi kursunun bir parçası olarak bir akıl hocası ile bir ders parçası. Tüm kurs için kaydolun.


"Artık size yapılandırıcılardan bahsetmenin zamanı geldi. Bu gerçekten basit bir kavram. Programcılar, nesneleri yaratmanın ve başlatmanın kestirme bir yolunu icat ettiler. "

Yapıcı olmadan Bir kurucu ile
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();

"Başlatma yöntemini öğrenmeyi yeni bitirdim..."

"Daha dikkatli bakın. Yapıcılar ile kod daha kullanışlı ve derli toplu."

"Öyleyse öyle. İşte bir soru. Bir sınıf içinde bir başlatma yöntemini nasıl yazacağımı biliyorum ama bir kurucuyu nasıl yazarım?"

"Önce şu örneğe bakın:"

Yapıcı olmadan Bir kurucu ile
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
Görev
Java Syntax,  seviyeders
Kilitli
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).

"Bir sınıfın içinde bir oluşturucu bildirmek kolaydır. Bir oluşturucu , yalnızca iki farkla, başlatma yöntemine benzer :

1. Yapıcının adı, sınıf adıyla aynıdır (başlatmak yerine).

2. Yapıcının türü yoktur (tür belirtilmez)."

"Tamam, yani ilklendirme gibi , ama birkaç farkla. Sanırım anladım."