From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]
Sent: sexta-feira, 30 de março de 2001 09:34
To: [EMAIL PROTECTED]
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]
-------------------------------------------------------------------------