Et foredragsuddrag med en mentor som en del af Codegym University-kurset. Tilmeld dig hele kurset.


"Nu er det på høje tid, at jeg fortæller dig om konstruktører. Dette er virkelig simpelt koncept. Programmører har opfundet en stenografisk måde at skabe og initialisere objekter på. "

Uden konstruktør Med en konstruktør
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();

"Jeg er lige blevet færdig med at lære om initialiseringsmetoden..."

"Se hårdere ud. Med konstruktører er koden mere praktisk og kompakt."

"Så det er det. Her er et spørgsmål. Jeg ved, hvordan man skriver en initialiseringsmetode inde i en klasse, men hvordan skriver jeg en konstruktør?"

"Kig først på dette eksempel:"

Uden konstruktør Med en konstruktør
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
Opgave
Java Syntax,  niveaulektie
Låst
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).

"Det er nemt at erklære en konstruktør inde i en klasse. En konstruktør ligner initialiseringsmetoden med kun to forskelle:

1. Navnet på en konstruktør er det samme som klassenavnet (i stedet for initialisering).

2. En konstruktør har ingen type (ingen type er angivet)."

"OK, så det er ligesom initialisering , men med nogle få forskelle. Jeg tror, ​​jeg forstår det."