Vraagje Java

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Wat is nou het verschil tussen this() en .this in Java??
Verwijst het ene naar het huidige object en roept de andere dat object aan?

Acties:
  • 0 Henk 'm!

  • Sv3n
  • Registratie: Mei 2002
  • Laatst online: 15:44
this() is de default constructor van het object waar je bezig bent.

Last.fm
Films!


Acties:
  • 0 Henk 'm!

  • Snake
  • Registratie: Juli 2005
  • Laatst online: 07-03-2024

Snake

Los Angeles, CA, USA

this() is de aanroep van de constructor in de huidige klasse:
this.variable/methode is aanroepen van variable/methode in huidige klasse
Bijvoorbeeld
Java:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
public class Hond extends Dier
{
   private String _naam;

   public Hond()
   {
      super("Hond"); //superklasse aanroepen
   }
   public Hond(String naam)
   {
      this(); // aanroep van constructor in deze klasse
      this._naam = naam; //aanroep van variable
   }

}

[ Voor 5% gewijzigd door Snake op 18-09-2009 11:03 ]

Going for adventure, lots of sun and a convertible! | GMT-8


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Sv3n schreef op vrijdag 18 september 2009 @ 10:19:
this() is de default constructor van het object waar je bezig bent.
Wat houd de default constructor dan precies in? En wat is .this dan precies?

Acties:
  • 0 Henk 'm!

  • Snake
  • Registratie: Juli 2005
  • Laatst online: 07-03-2024

Snake

Los Angeles, CA, USA

Verwijderd schreef op vrijdag 18 september 2009 @ 10:20:
[...]

Wat houd de default constructor dan precies in? En wat is .this dan precies?
Default constructor is een parameterless (zonder parameters) constructor.

Going for adventure, lots of sun and a convertible! | GMT-8


Acties:
  • 0 Henk 'm!

  • Standeman
  • Registratie: November 2000
  • Laatst online: 15:28

Standeman

Prutser 1e klasse

Een default constructor is een constructor die in elke class aanwezig is. Maar gezien je vraag denk ik dat je het beste de Java tutorial over classes en objects kan doorlezen. Dat zou wel verhelderend moeten zijn.

this is een verwijzing naar de huidige instantie van de class waar je inzit.

[ Voor 5% gewijzigd door Standeman op 18-09-2009 10:24 ]

The ships hung in the sky in much the same way that bricks don’t.


Acties:
  • 0 Henk 'm!

  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 16-09 09:15

Janoz

Moderator Devschuur®

!litemod

Slechte topic titel en verkeerde forum. Je bent al vaker op laks gedrag gewezen. De volgende keer zijn we minder coulant.

Maar het antwoord is redelijk simpel. De eerste is een constructor terwijl de tweede een property is die naar het object zelf verwijst. Ik kan me niet voorstellen dat je dat niet gevonden hebt op de plekken waar het gebruik van beiden uitgelegd wordt...

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


Acties:
  • 0 Henk 'm!

  • Snake
  • Registratie: Juli 2005
  • Laatst online: 07-03-2024

Snake

Los Angeles, CA, USA

Overigens is het this. en niet .this :)

Going for adventure, lots of sun and a convertible! | GMT-8


Acties:
  • 0 Henk 'm!

  • Creepy
  • Registratie: Juni 2001
  • Laatst online: 21:18

Creepy

Tactical Espionage Splatterer

Even een tikje door naar PRG. Met SEA heeft het niks te maken.

.Dit lijkt me overigens ook eenvoudig op te zoeken. Dus wat had je zelf al gevonden en wat snaptje je niet in die informatie? Puur en alleen de vraag stellen die je nu doet zonder zelf aan te geven wat je zelf al hebt gevonden e.d. is hier niet de bedoeling.

Edit: snelle Janoz

[ Voor 3% gewijzigd door Creepy op 18-09-2009 10:25 ]

"I had a problem, I solved it with regular expressions. Now I have two problems". That's shows a lack of appreciation for regular expressions: "I know have _star_ problems" --Kevlin Henney


Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 17-09 14:05

.oisyn

Moderator Devschuur®

Demotivational Speaker

Snake schreef op vrijdag 18 september 2009 @ 10:25:
Overigens is het this. en niet .this :)
Soms gebruik je anders gewoon .this hoor ;)

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Acties:
  • 0 Henk 'm!

  • Tiemez
  • Registratie: December 2003
  • Laatst online: 24-10-2022
Snake schreef op vrijdag 18 september 2009 @ 10:20:
this() is de aanroep van de constructor in de huidige klasse:
this.variable/methode is aanroepen van variable/methode in huidige klasse
Bijvoorbeeld
Java:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
public class Hond : Dier
{
   private String _naam;

   public Hond()
   {
      super("Hond"); //superklasse aanroepen
   }
   public Hond(String naam)
   {
      this(); // aanroep van constructor in deze klasse
      this._naam = naam; //aanroep van variable
   }

}
Volgens mij ben je in de war met C#, in java is het class x extends y

Acties:
  • 0 Henk 'm!

  • Nick_S
  • Registratie: Juni 2003
  • Laatst online: 21:31

Nick_S

++?????++ Out of Cheese Error

Standeman schreef op vrijdag 18 september 2009 @ 10:23:
Een default constructor is een constructor die in elke class aanwezig is.
Hij is toch alleen aanwezig als je hem zelf definieert of als er geen andere contructors zijn?

'Nae King! Nae quin! Nae Laird! Nae master! We willna' be fooled agin!'


Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 17-09 14:05

.oisyn

Moderator Devschuur®

Demotivational Speaker

De default ctor in Java *is* de automatisch gegenereerde ctor, die dus alleen bestaat als je zelf geen ctor definieert. Hij is dus zeker niet in alle classes aanwezig.

In de definitie zit dus een subtiel verschil met C++ en C#, in de zin dat die definieren dat de default ctor de ctor zonder argumenten is (of eigenlijk: die zonder argumenten kan worden aangeroepen, aangezien C++ default parameters ondersteunt), of je 'm nou zelf definieert of niet.

[ Voor 115% gewijzigd door .oisyn op 18-09-2009 16:17 ]

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.

Pagina: 1