Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    Beginner - alcuni dubbi iniziali sull'OOP

    Ciao a tutti.
    E' una settimana che mi sono imbattuto nel linguaggio java (chi me l'ha fatto fare? ),
    e sto seguendo un libro, iniziando dai primi esempi della programmazione ad oggetti java.
    Come ambiente di sviluppo sto utilizzando eclipse.

    Mi sono soffermato parecchio su questi concetti base, senza voler avanzare frettolosamente alle prime applicazioni hello world, perchè ritengo che sia meglio capire per bene il meccanismo e poi procedere per gradi.

    Nonostante il libro sia ben fatto però, ci sono alcuni dubbi che non sono riuscito a togliermi e che, magari qualche anima pia se ne ha voglia, può chiarirmi.
    Vi ringrazio anticipatamente per le eventuali risposte.


    1) Perchè (o in quali casi) conviene inizializzare una variabile con istanza di un oggetto, se poi posso utilizzare il nome stesso dell'oggetto riducendo il codice da scrivere e l'incasinamento? Esempio:

    Diciamo che ho una classe MiaClasse con un metodo che chiameremo MioMetodo(), e poniamo che in una seconda classe devo richiamare MioMetodo().
    Perchè dovrei scegliere di istanziare prima l'oggetto MiaClasse (tipo i = new MiaClasse....)
    quando io posso tranquillamente richiamare attraverso la sintassi i = MiaClasse.MioMetodo() ?? Non sarebbe più semplice e comprensibile così?

    /********/

    2) Sempre in merito alla dichiarazione e al richiamo di oggetti o metodi, non mi è ben chiaro l'elemento this, o meglio:
    Innanzitutto da quello che ho capito, il membro dichiarato in un metodo, può essere richiamato soltanto all'interno del metodo stesso o in un metodo più interno.
    Quindi se io ho il metodo A, e dentro c'è B e dentro a quest'ultimo c'è C io posso:

    Richiamare in C un membro dei metodi A e B e C
    Richiamare in B un membro dei metodi A e B
    Richiamare in A un membro di A

    A questo punto entra in gioco il This (che se non sbaglio è anche sottointeso giusto?);
    se da C voglio chiamare un membro che non so dov'è, scrivo qualcosa tipo x = this.membro. Ok, ma se io ho due membri con lo stesso nome? cioè in A dichiaro int menbro, in B dichiaro float membro...come posso decidere di voler chiamare la variabile int e non quella float? e a tal proposito, se io dichiaro un membro in B con lo stesso nome di un altro membro in A (ma di tipo diverso ad esempio), il primo viene sovrascritto o restano due variabili differenti?

    /************/

    3)Ultima richiesta per ora, altrimenti perdete la pazienza e non mi rispondete più
    A che serve l'oggetto Stack (o Pila)? Per definizione, sul libro, c'è scritto che un oggetto a pila, è un contenitore di più valori dove l'ultimo valore ad essere inserito è il primo ad essere recuperato. Ok, ma a che serve se posso usare un array? l'array non è più comodo?
    inserisco i valori che voglio e richiamo quelli che voglio. A che mi serve lo Stack?



    Ecco per ora direi che può bastare così, poi magari chiedo qualcos'altro dopo queste delucidazioni...sempre se non abuso della vostra pazienza.
    Un grazie di cuore a tutti.

    Ciao
    http://codecanyon.net/category/all?ref=Manuelandro
    And I bet she told a million people that she'd stay in touch, Well all the little promises they dont mean much,When theres
    memories to be made

  2. #2
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,472

    Moderazione

    Non è possibile aprire una discussione così generica e vasta che tratti più di un problema.
    Leggi il Regolamento.

    Si può inoltre affermare che, data la natura delle domande, ci sono probabilmente delle incomprensioni sul paradigma di programmazione a oggetti (OOP) che andrebbero approfonditi sul manuale, ponendo dubbi solo dopo averli studiati completamente, piuttosto che farlo prima rischiando di anticipare ciò che sarà spiegato in seguito, senza poter avere nemmeno gli strumenti necessari per comprendere le risposte che vengono date dagli utenti.

    Suggerisco quindi di 1) approfondire lo studio della documentazione, 2) fare delle ricerche preventive in merito agli argomenti e ai dubbi e - se non è possibile trovare una risposta adeguata - 3) aprire una discussione per trattare il problema specifico (uno alla volta).

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.