Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Algumas dúvidas sobre a primeira aula

Olá, após assistir essa primeira aula, me surgiu umas duvidas, alguém pode me ajudar ?

Por que temos que Instanciar uma classe ? Quando instancio uma classe estou criando um objeto, ou seja, transformar uma classe em um objeto? nós instanciamos uma classe para poder aplicar um metodo ?

Qual a diferença criar um método e um construtor ? metodo tenho que chamar e usar o void ? e o construtor vai ser executado automaticamente ?

Qual a Diferença metodo normal e metodo estatico ?

Qual a diferença de método estático e método de instância ?

Uma classe é um objeto ? ou para ser objeto tenho que instanciar ela ?

Diferença Criar uma class somente como Class nomeClasse e Public nomeClasse e Private nomeClasse ? quando eu crio uma classe somente Class nomeClasse, não precisa instanciar ela ?

1 resposta
solução!

Olá! Vou tentar responder suas dúvidas uma por uma:

  1. Por que temos que instanciar uma classe? Quando instanciamos uma classe, estamos criando um objeto a partir daquela classe. Cada objeto possui suas próprias características e comportamentos definidos pela classe. A instanciação permite que você utilize essas características e comportamentos em seu programa. Por exemplo, se temos uma classe "Carro" com um método "ligarMotor", ao instanciar um objeto dessa classe, podemos chamar o método "ligarMotor" para fazer o carro funcionar.

  2. Qual a diferença entre criar um método e um construtor? Um método é uma função que realiza uma ação específica. Ele pode ter um retorno ou não (utilizando a palavra-chave "void"). Você precisa chamar um método para que ele seja executado. Já o construtor é um método especial que é chamado automaticamente quando você cria um objeto a partir de uma classe. Ele é responsável por inicializar os atributos do objeto. O construtor não possui um retorno específico e sempre tem o mesmo nome da classe. Por exemplo, se temos uma classe "Pessoa" com um construtor que recebe o nome como parâmetro, ao criar um objeto dessa classe, o construtor será executado automaticamente e o nome será atribuído ao objeto.

  3. Qual a diferença entre método normal e método estático? Um método normal, também chamado de método de instância, é um método que pertence a um objeto específico. Ele pode acessar atributos e outros métodos da mesma instância. Para chamar um método normal, você precisa ter um objeto instanciado da classe. Já um método estático, também chamado de método de classe, pertence à classe em si e não a um objeto específico. Ele pode ser chamado diretamente pela classe, sem a necessidade de uma instância. Um método estático não pode acessar atributos de instância, apenas atributos estáticos. Por exemplo, se temos uma classe "Matematica" com um método estático "somar", podemos chamá-lo diretamente pela classe, sem precisar criar um objeto.

  4. Qual a diferença entre método estático e método de instância? Já respondi um pouco sobre essa diferença na pergunta anterior, mas vou reforçar. A diferença principal é que um método estático pertence à classe em si, enquanto um método de instância pertence a um objeto específico. Um método estático pode ser chamado diretamente pela classe, sem a necessidade de uma instância, enquanto um método de instância precisa ser chamado por um objeto instanciado da classe. Além disso, um método estático não pode acessar atributos de instância, apenas atributos estáticos.

  5. Uma classe é um objeto? Ou para ser objeto, tenho que instanciá-la? Uma classe não é um objeto em si, mas é uma estrutura que define como um objeto deve ser criado. Para que uma classe se torne um objeto, você precisa instanciá-la, ou seja, criar uma instância dessa classe. A instância é um objeto específico criado a partir da classe. Por exemplo, se temos uma classe "Cachorro", ao instanciar um objeto dessa classe, estamos criando um cachorro específico com suas características e comportamentos definidos pela classe.

  6. Qual a diferença entre criar uma classe somente como "class nomeClasse" e "public nomeClasse" e "private nomeClasse"? Quando eu crio uma classe somente "class nomeClasse", não precisa instanciá-la? Quando você cria uma classe somente com "class nomeClasse", ela é uma classe com acesso padrão, também conhecido como "default". Isso significa que a classe só pode ser acessada por outras classes do mesmo pacote. Quando você adiciona "public" antes do nome da classe, você está tornando a classe pública, o que significa que ela pode ser acessada por qualquer classe, mesmo que esteja em um pacote diferente. Já quando você adiciona "private" antes do nome da classe, você está tornando a classe privada, o que significa que ela só pode ser acessada dentro da mesma classe.

Independente do modificador de acesso, para utilizar uma classe, você precisa instanciá-la. A diferença está na visibilidade da classe, ou seja, em quais partes do seu código você pode acessá-la.

Espero ter ajudado e bons estudos!