Solar @ Dongen: http://solar.searchy.net/ - Penpal International: http://ppi.searchy.net/
public static String myFunction(String value) {
return value;
}
En dan kan je vervolgens zo de functie bereiken:
SomeClass.myFunction("test");
Let wel op dat je van SomeClass geen instantie hoeft te maken (dus geen new SomeClass().myFunction() ) omdat het een static is.
[ Voor 41% gewijzigd door ronaldmathies op 10-10-2007 14:03 ]
3015 Wp-z 5360 Wp-nno op 2 x SMA-SB3600 TL-21, Warmtepomp: ERSC-VM2CR2 / PUHZ-SHW140 YHA, WTW Q350, EV Kia Ev6 GT-Line
public int integertje?
(zo niet, waarom dan eigenlijk niet
(zelfs VB5 (of eerder) had dit al iig
Uiteraard heeft java dat, dat is wel erg basic.therat10430 schreef op woensdag 10 oktober 2007 @ 14:22:
is er in java niet gewoon
public int integertje?
(zo niet, waarom dan eigenlijk nietC# e.d. heeft het wel, en dat is zelfde generatie / methodologie)
(zelfs VB5 (of eerder) had dit al iig)
Maar je variabelen public maken duidt meestal niet op het beste ontwerp.
Methodes public maken lijkt de meest eenvoudige oplossing voor de TS. Een static methode (wat ronald zegt) kan ook een oplossing zijn.
@Keiichi: Heb je geen Java naslagwerk bij de hand? Altijd handig.
How much can you compute with the "ultimate laptop" with 1 kg of mass and 1 liter of volume? Answer: not more than 10^51 operations per second on not more than 10^32 bits.
1
2
3
4
5
6
7
8
9
| public class Utilities { public void utilityMethod() { // bladibla } } //Nu kun je in een willekeurige andere class dit doen: new Utilities().utilityMethod(); |
Uiteraard kun je dit ook met een static method oplossen, dat voorkomt dat je instanties moet aanmaken.
With the light in our eyes, it's hard to see.
Andere optie is natuurlijk overerving. Neem een goed OO boek en ga eens lezenKeiichi schreef op woensdag 10 oktober 2007 @ 14:00:
maar meerdere classen moeten gebruik kunnen maken van 1 functie.
Do diamonds shine on the dark side of the moon :?
Bobco schreef op woensdag 10 oktober 2007 @ 14:39:
Een public class met een public method zou de truc moeten doen:
1
2
3
4
5
6
7
8
9
10
11
12
13
| public class Utilities { private Utilities() { // geen instanties toegestaan! is toch alleen maar onzin } public static void utilityMethod() { // bladibla } } //Nu kun je in een willekeurige andere class dit doen: Utilities.utilityMethod(); |
Beetje efficienter. Zodra een state nodig is moet je echter wel instances toestaan en gebruiken.
More than meets the eye
There is no I in TEAM... but there is ME
system specs
{signature}
Dit lijkt me een goede oplossingBobco schreef op woensdag 10 oktober 2007 @ 14:39:
Een public class met een public method zou de truc moeten doen:
Java:
1 2 3 4 5 6 7 8 9 public class Utilities { public void utilityMethod() { // bladibla } } //Nu kun je in een willekeurige andere class dit doen: new Utilities().utilityMethod();
Uiteraard kun je dit ook met een static method oplossen, dat voorkomt dat je instanties moet aanmaken.
Als iemand mij weet te vertellen wat het ultieme java boek is?
Van al die webtutorials word je weinig wijzer van als ik nu ben eigenlijk
Solar @ Dongen: http://solar.searchy.net/ - Penpal International: http://ppi.searchy.net/
Verwijderd
Absolute Java, 3rd Edition van Walter Savitch, en verder verwijzen we je naar [Alg] Centraal boekentopic - part II voor vragen over boeken, graag een beetje centraal :-)
Verwijderd
De oplossing van IceManX is het netst overigens, wanneer je gebruik wil maken van een 'utility method'.
[ Voor 12% gewijzigd door BalusC op 10-10-2007 21:05 ]
Als die classe toch alleen maar een container is van dergelijke methodes gebruikt kun hem hem net zo goed abstract maken natuurlijk, ben je meteen van die constructor af.BalusC schreef op woensdag 10 oktober 2007 @ 21:04:
De oplossing van IceManX is het netst overigens, wanneer je gebruik wil maken van een 'utility method'.
Do diamonds shine on the dark side of the moon :?
Verwijderd schreef op woensdag 10 oktober 2007 @ 20:44:
het ultime javaboek: www.google.combeetje flauw maar van google heb ik in de afgelopen jaren veel meer nuttige informatie en ebooks e.d. kunnen vinden over OO en java dan in de boekenwinkel. (plus ik ben geen fan van papieren boeken, leest niet lekker
)
laat ik nou vnet vinden dat niets het haalt bij een papieren versie
Assumptions are the mother of all fuck ups | iRacing Profiel
Sja, zo'n utilityklasse declareer ik technisch gezien eerder als 'final'. Dan is 'abstract' niet mogelijk.Als die classe toch alleen maar een container is van dergelijke methodes gebruikt kun hem hem net zo goed abstract maken natuurlijk, ben je meteen van die constructor af.
[ Voor 46% gewijzigd door BalusC op 10-10-2007 21:20 . Reden: quote added ]
Een site waar veel over java staat en wordt uitgelegd: www.java2s.com
Ook over de keywoorden staat een uitleg en bij sommige voorbeelden.
let the past be the past.
'Political Correctness is fascism pretending to be good manners.' - George Carlin
Alleen als je de class wilt instantieren. En dat is dus juist niet de bedoelingSPee schreef op woensdag 10 oktober 2007 @ 21:25:
Gaat Java dan niet moeilijk doen als je een abstracte classe wilt gebruiken
More than meets the eye
There is no I in TEAM... but there is ME
system specs
Verwijderd
Hoi Keiichi,Keiichi schreef op woensdag 10 oktober 2007 @ 14:00:
Ik ben nog niet zo gek lang bezig met java. Ik probeer in mijn code iets in te brengen dat bepaalde functies globaal bereikbaar zijn. Maar ik heb werkelijk geen idee hoe en wat. Het enige wat me tot zover lukt is functies binnen 1 class, maar meerdere classen moeten gebruik kunnen maken van 1 functie.
Wie kan mij hier verder mee op weg helpen?
Even een reactie op je i5 topic omdat die op slot zit... Neem even contact met me op via e-mail, dan zal ik je haarfijn uitleggen hoe je aan zo'n kit komt
When some people work at a place for ten years they get ten years of experience, other people work at a place for ten years and get one year of experience ten times.
Abstract nodigt uit tot overerving, final juist niet. In het geval van een utilityclass vind ik dat dan ook netter.BalusC schreef op woensdag 10 oktober 2007 @ 21:19:
Sja, zo'n utilityklasse declareer ik technisch gezien eerder als 'final'. Dan is 'abstract' niet mogelijk.
https://niels.nu
Verwijderd
Wat dus vrij vertaald betekent: Vergeet heel hard de bovenstaande opmerkingen over static methods en vergeet daarbij het Singleton pattern nog twee keer zoveel. In plaats daarvan is verstandig om eens te kijken welke instanties je door wilt geven aan andere classes.Keiichi schreef op woensdag 10 oktober 2007 @ 14:00:
Ik ben nog niet zo gek lang bezig met java.
------------------------------------
Dat kan sowieso niet, je kunt ze hooguit schaduwen...BalusC schreef op woensdag 24 oktober 2007 @ 12:11:
Waarom zou je statische utilitymethoden willen overschrijven?
[ Voor 20% gewijzigd door Verwijderd op 24-10-2007 12:18 ]