🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: be.comp.programming
Article #2040

Re: [Java] forum of iets dergelijks?

#2040
From: Djatha
Date: Wed, 27 Oct 2004 13:11
71 lines
3004 bytes
P wrote:
> * Binnen een /static/ methode kan je enkel andere /static/ methoden e.d.
> oproepen.  Maar als je een progje wilt executen, dan moet je toch de
> /static/ methode /main/ gebruiken?  Hetgeen uiteindelijk toch betekent
> dat ALLE methoden die je schrijft /static/ moeten zijn?  Wat klopt er
> niet in mijn redenering?

Dat Java een (bijna volledige) objectgeori�nteerde programmeertaal is. Het
idee is dat U (zelf geschreven) klassen instanti�erd, waarvan de methoden
natuurlijk niet static hoeven te zijn.

Voor een erg klein programma waarbij U enkel een enkele (hoofd) klasse
definieert, volstaat het aanmaken van een object van die hoofdklasse, de
niet static methoden kunt U dan aanroepen.

Voorbeeld:

public class Test {
  private int fieldOne;
  ...
  private String fieldN;

  public void Test() {
    construeer hier iets.
  }
 
  public int methode() {
    doe iets.
  }

  public static void main( String[] args ) {
    Test t = new Test();
    t.methode();
    ... 
  }
}

 
> * Ik snap het gebruik van /this/ niet helemaal.

Dat is een verwijzing naar de klasse waarin dat `this' staat, leuk voor
variabelen scheiding (this.field vs field).

> public class Person
> {
>      private String name ;
>      private int age ;
> 
>      public Person(String naam, int lftd)
>      {
>          name = naam;
>          age = lftd;
>      }
> 
>      public Person(String naam)
>      {
>          this(naam,0); // ****
>      }
> }
> 
> 
> Op die regel met **** erachter: waarom kan ik hier niet " Person(naam,
> 0) " gebruiken?

Omdat de compiler van Java anders niet kan bepalen welke Person U bedoelt,
in de lokale context is de naam van de methode Person, daarnaast is er nog
in de context van de klasse een methode Person ( twee zelfs). Kortom, een
conflict dat U voor de compiler op moet lossen. In dit geval met this.

-- 
Djatha
Technical Details
Message-ID: <clo6uj$34n$1@news.tue.nl>
Path: arc1-ca.pugleaf.net!g2news1.google.com!news2.google.com!proxad.net!proxad.net!216.196.110.149.MISMATCH!border2.nntp.ams.giganews.com!border1.nntp.ams.giganews.com!nntp.giganews.com!newsfeeder.wxs.nl!surfnet.nl!news.tue.nl!not-for-mail
References: <1098879313.545561@seven.kulnet.kuleuven.ac.be>

Show Full Headers
Complete Article Headers
X-Google-Thread: fcea4,5d8e30860e7dff67
X-Google-Attributes: gidfcea4,public
X-Google-Language: DUTCH,ASCII
Path: arc1-ca.pugleaf.net!g2news1.google.com!news2.google.com!proxad.net!proxad.net!216.196.110.149.MISMATCH!border2.nntp.ams.giganews.com!border1.nntp.ams.giganews.com!nntp.giganews.com!newsfeeder.wxs.nl!surfnet.nl!news.tue.nl!not-for-mail
From: Djatha <Djatha@[maakt_geen_misbruik]hotmail.com>
Newsgroups: be.comp.programming
Subject: Re: [Java] forum of iets dergelijks?
Date: Wed, 27 Oct 2004 15:11:27 +0200
Organization: Eindhoven University of Technology, The Netherlands
Lines: 71
Message-ID: <clo6uj$34n$1@news.tue.nl>
References: <1098879313.545561@seven.kulnet.kuleuven.ac.be>
Reply-To: Djatha@[maakt_geen_misbruik]hotmail.com
NNTP-Posting-Host: dyn122121.nbw.tue.nl
Mime-Version: 1.0
Content-Type: text/plain; charset=iso-8859-15
Content-Transfer-Encoding: 8Bit
X-Trace: news.tue.nl 1098882835 3223 131.155.122.121 (27 Oct 2004 13:13:55 GMT)
X-Complaints-To: abuse@tue.nl
NNTP-Posting-Date: Wed, 27 Oct 2004 13:13:55 +0000 (UTC)
User-Agent: KNode/0.8.0