/ Forside / Teknologi / Udvikling / Java / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java
#NavnPoint
molokyle 3688
Klaudi 855
strarup 740
Forvirret 660
gøgeungen 500
Teil 373
Stouenberg 360
vnc 360
pmbruun 341
10  mccracken 320
fejl: non-static method get(java.lang.Stri~
Fra : none


Dato : 26-10-05 17:25

Jeg får en fejl som er som følgende:
irc/gui/pixx/PixxColorModel.java:120: non-static method
getS(java.lang.String) cannot be referenced from a static context
if( irc.IRCConfiguration.get("guicolormodel").equals("default") )


Det skulle jo være lige til at ændre:
public synchronized Object get(String key)
til en static, men dette kan jeg ikke, da ellers virker alt andet ikke!
Jeg har roddet rundt med diverse work-arounds i flere dage, men intet
vil!... Nogen der kan give en hurtig løsning, før jeg smider det hele
væk

/******************************************************/
I: irc/gui/pixx/pixxcolormodel.java

package irc.gui.pixx;

import irc.*;
import java.awt.*;
import java.awt.event.*;
import java.lang.*;

public class PixxColorModel
{
/**
* Black.
*/
public static final int COLOR_BLACK=0;
/**
* White.
*/
public static final int COLOR_WHITE=1;
private Color[] _colors;

public PixxColorModel()
{
if( irc.IRCConfiguration.get("guicolormodel").equals("default") )
{

/* blah blah blah */

}
}


/*********************************************/
I /irc/IRCConfiguration.java:
package irc;

import java.awt.*;
import java.util.*;

import irc.security.*;
public class IRCConfiguration
{

/* blah blah blah */
public synchronized Object get(String key)
{
Object v=_htable.get(key.toLowerCase(java.util.Locale.ENGLISH));
if(v==null) throw new RuntimeException("Unknown configuration
property "+key);
if(v==NULL_ITEM) v=null;
return v;
}

}

 
 
Thorbjoern Ravn Ande~ (26-10-2005)
Kommentar
Fra : Thorbjoern Ravn Ande~


Dato : 26-10-05 18:02

none <""jesper\"@(none)"> writes:

> getS(java.lang.String) cannot be referenced from a static context
> if( irc.IRCConfiguration.get("guicolormodel").equals("default") )

"non-static" betyder at du er inde i et objekt. static betyder at der
ikke er noget krav om at der er oprettet nogen objekter endnu.

For at komme i luften er du nødt til at oprette et
IRCConfiguration-object med new, som indeholder de ting du ønsker at
slå op på.

--
Thorbjørn Ravn Andersen


none (26-10-2005)
Kommentar
Fra : none


Dato : 26-10-05 18:51

Thorbjoern Ravn Andersen wrote:
> none <""jesper\"@(none)"> writes:
>
>
>>getS(java.lang.String) cannot be referenced from a static context
>> if( irc.IRCConfiguration.get("guicolormodel").equals("default") )
>
>
> "non-static" betyder at du er inde i et objekt. static betyder at der
> ikke er noget krav om at der er oprettet nogen objekter endnu.
>
> For at komme i luften er du nødt til at oprette et
> IRCConfiguration-object med new, som indeholder de ting du ønsker at
> slå op på.
>

Kan vist ikke tænke mere i dag... Nogen hint lige til dette?

Johnnie Hougaard Nie~ (27-10-2005)
Kommentar
Fra : Johnnie Hougaard Nie~


Dato : 27-10-05 01:11

none wrote:
> Thorbjoern Ravn Andersen wrote:
>> For at komme i luften er du nødt til at oprette et
>> IRCConfiguration-object med new, som indeholder de ting du ønsker at
>> slå op på.
>
> Kan vist ikke tænke mere i dag... Nogen hint lige til dette?

IRCConfiguration cfg = new IRCConfiguration(...) ;
if( cfg.get("guicolormodel").equals("default") )
....

none (28-10-2005)
Kommentar
Fra : none


Dato : 28-10-05 18:37

Johnnie Hougaard Nielsen wrote:
> none wrote:
>
>> Thorbjoern Ravn Andersen wrote:
>>
>>> For at komme i luften er du nødt til at oprette et
>>> IRCConfiguration-object med new, som indeholder de ting du ønsker at
>>> slå op på.
>>
>>
>> Kan vist ikke tænke mere i dag... Nogen hint lige til dette?
>
>
> IRCConfiguration cfg = new IRCConfiguration(...) ;
> if( cfg.get("guicolormodel").equals("default") )
> ...

Tror at jeg gør det her svære for mig selv end det i virkeligheden er...


irc/gui/pixx/PixxColorModel.java:120: cannot find symbol
symbol : constructor IRCConfiguration()
location: class irc.IRCConfiguration
IRCConfiguration cfg = new IRCConfiguration();
^

Janus (28-10-2005)
Kommentar
Fra : Janus


Dato : 28-10-05 19:11

none wrote:
> Johnnie Hougaard Nielsen wrote:
>
>> none wrote:
>>
>>> Thorbjoern Ravn Andersen wrote:
>>>
>>>> For at komme i luften er du nødt til at oprette et
>>>> IRCConfiguration-object med new, som indeholder de ting du ønsker at
>>>> slå op på.
>>>
>>>
>>>
>>> Kan vist ikke tænke mere i dag... Nogen hint lige til dette?
>>
>>
>>
>> IRCConfiguration cfg = new IRCConfiguration(...) ;
>> if( cfg.get("guicolormodel").equals("default") )
>> ...
>
>
> Tror at jeg gør det her svære for mig selv end det i virkeligheden er...
>
>
> irc/gui/pixx/PixxColorModel.java:120: cannot find symbol
> symbol : constructor IRCConfiguration()
> location: class irc.IRCConfiguration
> IRCConfiguration cfg = new IRCConfiguration();
> ^

Jamen, hvordan er konstruktøren så til klassen IRCConfiguration ??

I det du skriver irc.IRCConfiguration.<metodenavn>, er det
eksplicitteret, at det er en statisk funktion du prøver at tilgå, i
samme stil som Integer.parseInt(String s). Metoden du prøver at tilgå i
din IRCConfiguration, er ikke statisk, og derfor fejler det.

Du skal, som tidligere skrevet, lave en instans af din IRCConfiguration
vha new, og så kan du kalde din get()-funktion lige så tosset du vil :)

Men du har åbenbart overridet den implicitte standardkonstruktør:
IRCConfiguration ircc = new IRCConfiguration();
-så fyld de rette parametre ind i parantesen og du er kørende.

Vh Janus



--

Kids, try this at home: http://www.legendsrpg.net/index.php?refid=799

none (28-10-2005)
Kommentar
Fra : none


Dato : 28-10-05 19:42

Janus wrote:
> none wrote:
>
>> Johnnie Hougaard Nielsen wrote:
>>
>>> none wrote:
>>>
>>>> Thorbjoern Ravn Andersen wrote:
>>>>
>>>>> For at komme i luften er du nødt til at oprette et
>>>>> IRCConfiguration-object med new, som indeholder de ting du ønsker at
>>>>> slå op på.
>>>>
>>>>
>>>>
>>>>
>>>> Kan vist ikke tænke mere i dag... Nogen hint lige til dette?
>>>
>>>
>>>
>>>
>>> IRCConfiguration cfg = new IRCConfiguration(...) ;
>>> if( cfg.get("guicolormodel").equals("default") )
>>> ...
>>
>>
>>
>> Tror at jeg gør det her svære for mig selv end det i virkeligheden er...
>>
>>
>> irc/gui/pixx/PixxColorModel.java:120: cannot find symbol
>> symbol : constructor IRCConfiguration()
>> location: class irc.IRCConfiguration
>> IRCConfiguration cfg = new IRCConfiguration();
>> ^
>
>
> Jamen, hvordan er konstruktøren så til klassen IRCConfiguration ??
>
> I det du skriver irc.IRCConfiguration.<metodenavn>, er det
> eksplicitteret, at det er en statisk funktion du prøver at tilgå, i
> samme stil som Integer.parseInt(String s). Metoden du prøver at tilgå i
> din IRCConfiguration, er ikke statisk, og derfor fejler det.
>
> Du skal, som tidligere skrevet, lave en instans af din IRCConfiguration
> vha new, og så kan du kalde din get()-funktion lige så tosset du vil :)
>
> Men du har åbenbart overridet den implicitte standardkonstruktør:
> IRCConfiguration ircc = new IRCConfiguration();
> -så fyld de rette parametre ind i parantesen og du er kørende.
>
> Vh Janus
>
>
>

uuuuh. Lyder skønt

Fandt IRCConfiguration som public i (sjovt nok IRCConfiguration.java


public IRCConfiguration(TextProvider text,URLHandler handler,ImageLoader
loader,SoundHandler sound,FileHandler file,ParameterProvider
paramProvider,ParameterProvider interfaceParamProvider)
{
_provider=new SecurityProvider();

_paramProvider=paramProvider;
_interfaceParamProvider=interfaceParamProvider;

_htable=new Hashtable();

_backgroundImageRules=new RuleList();
_backgroundTilingRules=new RuleList();
_backgroundTilingRules.setDefaultValue(new Integer(0));

_fontRules=new RuleList();
_fontRules.setDefaultValue(new Font("Verdana",Font.PLAIN,14));

_colorsRules=new RuleList();
Color[] def=new Color[16];
loadDefaultColors(def);
_colorsRules.setDefaultValue(def);

      _audioConfig=new AudioConfiguration(sound);
_table=new SmileyTable();

_file=file;
_loader=loader;
_textProvider=text;
_handler=handler;

_guiInfoString="";

_initCommands=new String[0];
}

Skal jeg blot redigere det til:
public IRCConfiguration(TextProvider text,URLHandler handler,ImageLoader
loader,SoundHandler sound,FileHandler file,ParameterProvider
paramProvider,ParameterProvider interfaceParamProvider,get getparam)
og så smide
_getparam=getparam;
?

Janus (28-10-2005)
Kommentar
Fra : Janus


Dato : 28-10-05 23:51

none wrote:

>>
>>
>>
>> Jamen, hvordan er konstruktøren så til klassen IRCConfiguration ??
>>
>> I det du skriver irc.IRCConfiguration.<metodenavn>, er det
>> eksplicitteret, at det er en statisk funktion du prøver at tilgå, i
>> samme stil som Integer.parseInt(String s). Metoden du prøver at tilgå
>> i din IRCConfiguration, er ikke statisk, og derfor fejler det.
>>
>> Du skal, som tidligere skrevet, lave en instans af din
>> IRCConfiguration vha new, og så kan du kalde din get()-funktion lige
>> så tosset du vil :)
>>
>> Men du har åbenbart overridet den implicitte standardkonstruktør:
>> IRCConfiguration ircc = new IRCConfiguration();
>> -så fyld de rette parametre ind i parantesen og du er kørende.
>>
>> Vh Janus
>>
>>
>>
>
> uuuuh. Lyder skønt
>
> Fandt IRCConfiguration som public i (sjovt nok IRCConfiguration.java
>
>
> public IRCConfiguration(TextProvider text,URLHandler handler,ImageLoader
> loader,SoundHandler sound,FileHandler file,ParameterProvider
> paramProvider,ParameterProvider interfaceParamProvider)
> {
> _provider=new SecurityProvider();
>
> _paramProvider=paramProvider;
> _interfaceParamProvider=interfaceParamProvider;
>
> _htable=new Hashtable();
>
> _backgroundImageRules=new RuleList();
> _backgroundTilingRules=new RuleList();
> _backgroundTilingRules.setDefaultValue(new Integer(0));
>
> _fontRules=new RuleList();
> _fontRules.setDefaultValue(new Font("Verdana",Font.PLAIN,14));
>
> _colorsRules=new RuleList();
> Color[] def=new Color[16];
> loadDefaultColors(def);
> _colorsRules.setDefaultValue(def);
>
> _audioConfig=new AudioConfiguration(sound);
> _table=new SmileyTable();
>
> _file=file;
> _loader=loader;
> _textProvider=text;
> _handler=handler;
>
> _guiInfoString="";
>
> _initCommands=new String[0];
> }
>
> Skal jeg blot redigere det til:
> public IRCConfiguration(TextProvider text,URLHandler handler,ImageLoader
> loader,SoundHandler sound,FileHandler file,ParameterProvider
> paramProvider,ParameterProvider interfaceParamProvider,get getparam)
> og så smide
> _getparam=getparam;
> ?

Hmm, jeg kan næsten forstå på dig, at det ikke er dig selv, det har
lavet denne IRCConfiguration :)

Hvis du vil instantiere den, kræver det, at du opretter parametre af
typerne:
TextProvider, URLHandler, ImageLoader, SoundHandler, FileHandler,
ParameterProvider og ParameterProvider.
Jeg kender ikke de fleste af disse klasser, så de hører nok også ind
under irc.* pakken. Alle klasserne er nok nogle der er nødvendige for at
få den rette funktionalitet ud af IRCConfiguration.
Har du ikke nogle eksempler på brugen af IRCConfiguration i noget
dokumentation?


Men ellers virker det måske lidt som om, du har 2 muligheder:

1) Der er en statisk funktion i IRCConfiguration, der giver dig en
instans af IRCConfiguration, eller en anden klasse i irc.* hierarkiet
der kan det for dig.
2) Du lader helt være med at bruge IRCConfiguration, hvis du kan lade være?


/janus

--

Kids, try this at home: http://www.legendsrpg.net/index.php?refid=799

none (03-11-2005)
Kommentar
Fra : none


Dato : 03-11-05 09:36

Janus wrote:
> none wrote:
>
>>>
>>>
>>>
>>> Jamen, hvordan er konstruktøren så til klassen IRCConfiguration ??
>>>
>>> I det du skriver irc.IRCConfiguration.<metodenavn>, er det
>>> eksplicitteret, at det er en statisk funktion du prøver at tilgå, i
>>> samme stil som Integer.parseInt(String s). Metoden du prøver at tilgå
>>> i din IRCConfiguration, er ikke statisk, og derfor fejler det.
>>>
>>> Du skal, som tidligere skrevet, lave en instans af din
>>> IRCConfiguration vha new, og så kan du kalde din get()-funktion lige
>>> så tosset du vil :)
>>>
>>> Men du har åbenbart overridet den implicitte standardkonstruktør:
>>> IRCConfiguration ircc = new IRCConfiguration();
>>> -så fyld de rette parametre ind i parantesen og du er kørende.
>>>
>>> Vh Janus
>>>
>>>
>>>
>>
>> uuuuh. Lyder skønt
>>
>> Fandt IRCConfiguration som public i (sjovt nok IRCConfiguration.java
>>
>>
>> public IRCConfiguration(TextProvider text,URLHandler
>> handler,ImageLoader loader,SoundHandler sound,FileHandler
>> file,ParameterProvider paramProvider,ParameterProvider
>> interfaceParamProvider)
>> {
>> _provider=new SecurityProvider();
>>
>> _paramProvider=paramProvider;
>> _interfaceParamProvider=interfaceParamProvider;
>>
>> _htable=new Hashtable();
>>
>> _backgroundImageRules=new RuleList();
>> _backgroundTilingRules=new RuleList();
>> _backgroundTilingRules.setDefaultValue(new Integer(0));
>>
>> _fontRules=new RuleList();
>> _fontRules.setDefaultValue(new Font("Verdana",Font.PLAIN,14));
>>
>> _colorsRules=new RuleList();
>> Color[] def=new Color[16];
>> loadDefaultColors(def);
>> _colorsRules.setDefaultValue(def);
>>
>> _audioConfig=new AudioConfiguration(sound);
>> _table=new SmileyTable();
>>
>> _file=file;
>> _loader=loader;
>> _textProvider=text;
>> _handler=handler;
>>
>> _guiInfoString="";
>>
>> _initCommands=new String[0];
>> }
>>
>> Skal jeg blot redigere det til:
>> public IRCConfiguration(TextProvider text,URLHandler
>> handler,ImageLoader loader,SoundHandler sound,FileHandler
>> file,ParameterProvider paramProvider,ParameterProvider
>> interfaceParamProvider,get getparam)
>> og så smide
>> _getparam=getparam;
>> ?
>
>
> Hmm, jeg kan næsten forstå på dig, at det ikke er dig selv, det har
> lavet denne IRCConfiguration :)
>
> Hvis du vil instantiere den, kræver det, at du opretter parametre af
> typerne:
> TextProvider, URLHandler, ImageLoader, SoundHandler, FileHandler,
> ParameterProvider og ParameterProvider.
> Jeg kender ikke de fleste af disse klasser, så de hører nok også ind
> under irc.* pakken. Alle klasserne er nok nogle der er nødvendige for at
> få den rette funktionalitet ud af IRCConfiguration.
> Har du ikke nogle eksempler på brugen af IRCConfiguration i noget
> dokumentation?
>
>
> Men ellers virker det måske lidt som om, du har 2 muligheder:
>
> 1) Der er en statisk funktion i IRCConfiguration, der giver dig en
> instans af IRCConfiguration, eller en anden klasse i irc.* hierarkiet
> der kan det for dig.
> 2) Du lader helt være med at bruge IRCConfiguration, hvis du kan lade være?
>
>
> /janus
>


Der er ikke meget support at hente lige på dette punkt fra dens skaber.
Giver næsten op :-/
De 2 filer ligger som givet nedenfor i deres nuværende form.

http://212.242.209.7/programmering/

Johnnie Hougaard Nie~ (03-11-2005)
Kommentar
Fra : Johnnie Hougaard Nie~


Dato : 03-11-05 10:02

none wrote:
> Der er ikke meget support at hente lige på dette punkt fra dens skaber.

Hvis det er PJIRC, er der et forum på webstedet http://www.pjirc.com/
og det ser aktivt ud: http://forum.pjirc.com/
En mulighed var at spørge dér.

Men det kan godt være at det bliver svært at få gode svar hvis du ikke
kan påvise at du selv er "klædt på" til at arbejde med hvordan en Java
applikation er skruet sammen. Tilsvarende tror jeg at det vil øge
chancen for svar hvis du fortæller hvad det egentlig er at du prøver på
at "misbruge" den for dig "ukendte" klasse til.

Søg
Reklame
Statistik
Spørgsmål : 177579
Tips : 31968
Nyheder : 719565
Indlæg : 6409073
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste