----- Original Message -----
Sent: March 30, 2001 7:33 AM
Subject: Re: [java-list] pra que ser
simples se pode complicar??????
Alguém sabe em que ponto da execução de um programa uma classe é carregada
pela JVM? Todas as classes são carregadas num mesmo momento, ou somente quando
há necessidade de uso da mesma dentro do programa?
Arivaldo
@
28/03/2001 14:07
NST
Favor responder a java-list
Para:[EMAIL PROTECTED]
cc:
cco:
Assunto:Re: [java-list] pra que
ser simples se pode complicar??????
> Então que dizer que o método da classe
abaixo só o próprio módulo pode ter
> accesso?
Nao , esta havendo uma confusão aqui. O
modificador Public permite
que TODOS acessem o metodo getNumber (que por
sinal esta errado, pois
nao se pode acessar uma variavel nao estatica de
dentro de um metodo
estatico).
Veja a classe Toolkit por exemplo.
Dentro da classe ha um metodo
chamado getDefaultToolkit() estatico e
publico que pode ser chamado de
qualquer modulo.
Para que
getNumber nao possa ser executado de fora do modulo, retire
o modificador
public.
Quanto a carga da classe na memoria: Tomar cuidado com o
deadLock. Se
na declaracao das classes voce tiver variaveis estaticas que
se
referenciam, as vezes ocorrerao erros no "classLoading", pois a JVM
nao
vai conseguir determinar qual classe sera carregada primeiro.
exemplo
class Um {
public
static Tres tres = Dois.tres;
}
class Dois {
public static Tres tres =
Um.tres;
}
uma dessas duas
variaveis tres contera nulo, ou uma exceção vai ser
"jogada".
Um abraço, Alexandre
Torres
>
> public class
MyClass {
> public int any = 10;
>
>
public static int getNumber(){
>
return any;
> }
> }
>
> Outra quando eu
chamo o método com uma keyword static a classes já está em
>
memória???,???
>
> Abraços!!!
>
> ----- Original
Message -----
> From: Carlos Alberto Viana Correia - SAO
<[EMAIL PROTECTED]>
> To:
<[EMAIL PROTECTED]>
> Sent: Wednesday, March 28, 2001 9:14
AM
> Subject: RES: [java-list] pra que ser simples se pode
complicar??????
>
>
> O BOL é Top3 no iBest! Vote já para
torná-lo Top1!
> http://www.bol.com.br/ibest.html
>
>
>
static é mais que isso. É um modificador de tipo que torna a variavel
>
visivel apenas no modulo no é declarado e permanece com seu estado
durante
> todo o seu ciclo de vida.
>
> -----Mensagem
original-----
> De: Roger [mailto:[EMAIL PROTECTED]]
>
Enviada em: terça-feira, 27 de março de 2001 19:30
> Para:
[EMAIL PROTECTED]
> Assunto: Re: [java-list] pra que ser simples
se pode complicar??????
>
>
> a analise correta da palavra
static eh:
>
> qdo o atributo ou metodo for da CLASSE e nao da
INSTANCIA, ele eh estatico.
> ThatsAll...
>
>
>
-----Mensagem Original-----
> De: Jorge Martins
<[EMAIL PROTECTED]>
> Para:
<[EMAIL PROTECTED]>
> Enviada em: Terça-feira, 27 de Março
de 2001 18:25
> Assunto: RE: [java-list] pra que ser simples se pode
complicar??????
>
>
> Paulo,
>
> Preste atenção,
já que o main é um método estático (static) ou seja,
> um método da sua
classe e não do seu objeto. Quando ele está sendo
> executado, não há um
objeto instanciado, apenas a classe está carregada.
>
> Logo, crie
um objeto da própria classe no main e chame os métodos
> normalmente.
Exemplo (supondo que sua classe se chama Application):
>
> public
static void main(String args[])
> {
> Application obj = new
Application();
>
> obj.valCad(args[0]);
> }
>
>
Talvez esse seu método valCad deva ser declarado static também. Não
>
sei, depende do contexto.
>
> Pude perceber pelo seu estilo
de programação e pelo erro que você
> informou, que você não tem muito
controle de programação orientada a
> objetos. Estude bastante os
conceitos de OO e também modelagem. Programar em
> java sem esses
conhecimentos é uma experiência muito desagradável. Depois de
> saber
OO, programar em java é a melhor coisa do mundo.
>
>
abraços
>
> Jorge
>
> -----Original
Message-----
> From: paulo henrique castro
[mailto:[EMAIL PROTECTED]]
> Sent: terça-feira, 27 de março de 2001
17:10
> To: [EMAIL PROTECTED]
> Subject: [java-list] pra
que ser simples se pode complicar??????
>
>
>
Caros,
>
> estou com uma pequena duvida de
iniciante:
>
> tenho uma aplicacao em Java que recebe um argumento
na linha de
> comando. (public static void main(String args[]) :PP
)
> Quero trabalhar com esse argumento por toda a minha classe,
porem
> nao consigo de jeito
nenhum!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
> Se tento passa-lo
como argumento pra um outro metodo, recebo a
> msg de erro:
valCad(arg[0]);
>
> [14:1] Can't make static reference to
method public boolean valCad(String)
> in
> class bah.
>
if(valCad(args[0]))
>
^
> 1 error
>
> Se tento
associar o valor a uma variavel de instancia, para que
> eu possa usa-la
por toda a classe sempre que necessario, recebo a msg
> de erro:
sCadastro = args[0];
>
> [14:1] Can't make a static reference to
nonstatic variable sCadastro in
> class bah.
>
sCadastro = args[0];
>
^
> 1 error
>
> Como raios eu consigo trabalhar com
esse valor????????????????????
>
> Obrigado desde
ja!!
>
> PH
>
>
> ------------------------------
LISTA SOUJAVA ----------------------------
> http://www.soujava.org.br -
Sociedade de Usuários Java da Sucesu-SP
> dúvidas mais comuns: http://www.soujava.org.br/faq.htm
>
regras da lista: http://www.soujava.org.br/regras.htm
>
para sair da lista: envie email para
[EMAIL PROTECTED]
>
-------------------------------------------------------------------------
>
>
------------------------------ LISTA SOUJAVA
----------------------------
> http://www.soujava.org.br -
Sociedade de Usuários Java da Sucesu-SP
> dúvidas mais comuns: http://www.soujava.org.br/faq.htm
>
regras da lista: http://www.soujava.org.br/regras.htm
>
para sair da lista: envie email para
[EMAIL PROTECTED]
>
-------------------------------------------------------------------------
>
>
>
>
_________________________________________________________
> Do You
Yahoo!?
> Get your free @yahoo.com address at http://mail.yahoo.com
>
>
>
------------------------------ LISTA SOUJAVA
----------------------------
> http://www.soujava.org.br -
Sociedade de Usuários Java da Sucesu-SP
> dúvidas mais comuns: http://www.soujava.org.br/faq.htm
>
regras da lista: http://www.soujava.org.br/regras.htm
>
para sair da lista: envie email para
[EMAIL PROTECTED]
>
-------------------------------------------------------------------------
>
>
------------------------------ LISTA SOUJAVA
----------------------------
> http://www.soujava.org.br -
Sociedade de Usuários Java da Sucesu-SP
> dúvidas mais comuns: http://www.soujava.org.br/faq.htm
>
regras da lista: http://www.soujava.org.br/regras.htm
>
para sair da lista: envie email para
[EMAIL PROTECTED]
>
-------------------------------------------------------------------------
>
>
>
>
>
------------------------------ LISTA SOUJAVA
----------------------------
> http://www.soujava.org.br -
Sociedade de Usuários Java da Sucesu-SP
> dúvidas mais comuns: http://www.soujava.org.br/faq.htm
>
regras da lista: http://www.soujava.org.br/regras.htm
>
para sair da lista: envie email para
[EMAIL PROTECTED]
>
-------------------------------------------------------------------------
>
>
>
>
------------------------------ LISTA SOUJAVA
----------------------------
http://www.soujava.org.br -
Sociedade de Usuários Java da Sucesu-SP
dúvidas mais comuns: http://www.soujava.org.br/faq.htm
regras
da lista: http://www.soujava.org.br/regras.htm
para
sair da lista: envie email para
[EMAIL PROTECTED]
-------------------------------------------------------------------------
------------------------------
LISTA SOUJAVA ---------------------------- http://www.soujava.org.br -
Sociedade de Usuários Java da Sucesu-SP dúvidas mais comuns:
http://www.soujava.org.br/faq.htm regras da lista:
http://www.soujava.org.br/regras.htm para sair da lista: envie email para
[EMAIL PROTECTED]
-------------------------------------------------------------------------