Előadásrészlet egy mentorral a Codegym University tanfolyam részeként. Jelentkezzen a teljes tanfolyamra.


"Most itt az ideje, hogy beszéljek a konstruktorokról. Ez nagyon egyszerű koncepció. A programozók feltaláltak egy rövidített módszert az objektumok létrehozására és inicializálására. "

Konstruktor nélkül Konstruktorral
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();

"Épp most fejeztem be az inicializálási módszer megismerését..."

"Nézze meg jobban. A konstruktorokkal a kód kényelmesebb és kompaktabb."

"Így van. Íme egy kérdés. Tudom, hogyan kell inicializálási metódust írni egy osztályon belül, de hogyan írjak konstruktort?"

"Először nézd meg ezt a példát:"

Konstruktor nélkül Konstruktorral
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
Feladat
Java Syntax,  szintlecke
Zárt
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).

"Könnyű deklarálni egy konstruktort egy osztályon belül. A konstruktor hasonló az inicializálási metódushoz, csak két különbséggel:

1. A konstruktor neve megegyezik az osztály nevével (inicializálás helyett).

2. A konstruktornak nincs típusa (nincs típus feltüntetve)."

"Rendben, ez olyan, mint az inicializálás , de néhány eltéréssel. Azt hiszem, értem."