Anteprima
Vedrai una selezione di 10 pagine su 41
Paniere svolto di Fondamenti di informatica (2025) - Risposte aperte Pag. 1 Paniere svolto di Fondamenti di informatica (2025) - Risposte aperte Pag. 2
Anteprima di 10 pagg. su 41.
Scarica il documento per vederlo tutto.
Paniere svolto di Fondamenti di informatica (2025) - Risposte aperte Pag. 6
Anteprima di 10 pagg. su 41.
Scarica il documento per vederlo tutto.
Paniere svolto di Fondamenti di informatica (2025) - Risposte aperte Pag. 11
Anteprima di 10 pagg. su 41.
Scarica il documento per vederlo tutto.
Paniere svolto di Fondamenti di informatica (2025) - Risposte aperte Pag. 16
Anteprima di 10 pagg. su 41.
Scarica il documento per vederlo tutto.
Paniere svolto di Fondamenti di informatica (2025) - Risposte aperte Pag. 21
Anteprima di 10 pagg. su 41.
Scarica il documento per vederlo tutto.
Paniere svolto di Fondamenti di informatica (2025) - Risposte aperte Pag. 26
Anteprima di 10 pagg. su 41.
Scarica il documento per vederlo tutto.
Paniere svolto di Fondamenti di informatica (2025) - Risposte aperte Pag. 31
Anteprima di 10 pagg. su 41.
Scarica il documento per vederlo tutto.
Paniere svolto di Fondamenti di informatica (2025) - Risposte aperte Pag. 36
Anteprima di 10 pagg. su 41.
Scarica il documento per vederlo tutto.
Paniere svolto di Fondamenti di informatica (2025) - Risposte aperte Pag. 41
1 su 41
D/illustrazione/soddisfatti o rimborsati
Disdici quando
vuoi
Acquista con carta
o PayPal
Scarica i documenti
tutte le volte che vuoi
Estratto del documento

TEST

String toLowerCase()

Metodo che converte tutti i caratteri contenuti in una stringa, in caratteri minuscoli. Ricordiamo

che le istanze di String sono immutabili,

quindi la nuova stringa contenente i caratteri maiuscoli dovrà essere assegnata (salvata) in una

nuova istanza di String.

Esempio di String toLowerCase():

String s = new String("TeSt");

String sMinuscola =s.toLowerCase();

System.out.println(s);

System.out.println(sMinuscola);

la stampa a video sarà:

Test

Descrivere che cos'è una keyword di Java e fare degli esempi di keyword

Le parole chiave (dall'inglese keywords) sono parole che il programmatore non può usare come

nome di una variabile, di una classe o di qualsiasi altro elemento del programma. Alcuni esempi di

keywords sono:

"new" operatore che si usa per creare una istanza di una classe o array;

"package" si usa come prima dichiarazione in un sorgente java e specifica il pacchetto a cui

appartengono tutti i tipi definiti nel sorgente;

"class" definisce una classe;

"break" interrompe un ciclo e passa all'istruzione successiva.

Descrivere che cos'è un Abstract Data Type e quale relazione ha con il concetto di

classe Java.

Nel linguaggio Java, una classe è lo stampo da cui si ottengono gli oggetti (o istanze).

Convenzionalmente, il nome della classe inizia con una lettera maiuscola.

La sintassi per la creazione di una classe è la seguente: public class NomeClasse { dove public è una

parola chiave del linguaggio che indica che la classe è accessibile a tutti class è un'altra parola

chiave che significa che stiamo definendo una classe. NomeClasse è il nome della classe che

abbiamo appena definito le parentesi graffe fanno parte dell'istruzione e delimitano il contenuto, i

metodi e le variabili.

Descrivere la relazione tra classe ed oggetto Java e fare degli esempi

Un Abstract Data Type (tipo di dato astratto), in informatica e in particolare, nel campo della

programmazione, è un concetto fondamentale. Essi sono definiti dall'utente, e sono composti da:

Un dominio (ossia un insieme di valori su cui è stato definito) e un insieme di operazioni che

permettono di manipolare quel tipo di dato astratto.

Scrivere la definizione di metodo statico e le implicazioni di avere dei metodi

statici per una classe.

Classi con metodi statici. Possiamo definire metodi statici in una classe, aggiungendo la

keyword static alla definizione del metodo:

public class Test {

public static void stampa() {

System.out.println("Messagg

io");

}

public static void main(String[]

args) { stampa();

}

}

In questo modo possiamo chiamare il metodo stampa() della classe Test senza necessità di dover

creare una nuova istanza. Se fossimo in un’altra classe potremmo invocare il metodo statico

stampa() con la seguente istruzione:

Test.stampa();

Descrivere che cos'è l'istanza di una classe e come si crea una nuova istanza,

riportando degli esempi di codice

Java è un linguaggio OO (object Oriented in italiano orientato agli oggetti), per cui ogni cosa che

descriveremo sarà un oggetto. Per ogni classe che definiamo in Java, possono esistere infinite

istanze (o oggetti). E’ importante ricordare che, la semplice definizione di una classe, non

determina allocazione di memoria, la quale, si verifica quando si crea una nuova istanza della

classe grazie all’utilizzo della parola chiave new.

Immaginiamo una classe Auto che ha una casa costruttrice, colore, tipologia di carburante

public class veicolo{

public static void main(String []args) {

class Auto {

String casa;

String

colore;

Descrivere che cos'è l'incapsulamento e come si può implementare nel linguaggio

Java.

Quando in Java si definisce una variabile (anche detto attributo), viene associato un ambito di

visibilità. In generale una variabile è visibile nel blocco in cui è stata dichiarata, dopo la sua

dichiarazione

•nel caso di una variabile, bisogna considerare le istruzioni delimitate

dalle parentesi grasse (il blocco di codice) in cui è stata definita

•nel caso di variabili di istanza (ovvero attributi di una classe), la visibilità

coincide con i metodi della classe

•se esistono variabili definite in blocchi diversi aventi lo stesso nome, nel

blocco più interno sarà visibile solo la variabile locale al blocco (quella

globale sarà nascosta)

•nel caso di variabili di istanza si può utilizzare la parola

chiave this per accedere alla variabile di istanza avente lo

stesso nome di quella locale

Descrivere cosa si intende per scopo di una variabile

L'incapsulamento è uno dei pilastri importanti del linguaggio di programmazione orientato agli

oggetti. L'incapsulamento si occupa delle decisioni relative alla fornitura dell'accesso ai dati e il

principale vantaggio dell'incapsulamento è l'occultamento dei dati.

Utilizzando l'incapsulamento possiamo consentire al programmatore di decidere sull'accesso ai

dati e sui metodi che operano su quei dati. Per esempio, se vogliamo che un particolare dato sia

inaccessibile a chiunque al di fuori della classe, allora rendiamo quei dati privati.

Per implementare l'incapsulamento,bisogna dichiarare privati i membri di una classe e quindi

inaccessibili al difuori della classe stessa (a tale scopo esiste il modificatore private).

Allora, l’accesso ai dati,potrà essere fornito da un’interfaccia pubblica costituita da metodi

dichiarati publici

Descrivere cosa si intende per ereditarietà ed illustrarlo con un esempio in codice

Java

Java è un linguaggio OO (object oriented - orientato agli oggetti) pertanto quasi tutto è un oggetto.

L'ereditarietà, si implementa facendo uso di due oggetti il primo da dove si eredita il codice e il

secondo che eredita il codice. Solitamente si utilizza quando dobbiamo creare una nuova classe ed

è già disponibile un'altra classe che rappresenta un concetto più generale.

Prendiamo ad esempio una classe Panda che è una sottoclasse della classe Fiat ,si scrive così:

public class Panda extends Fiat dove la classe Panda è quella che eredita il codice (sottoclasse),

mentre Fiat è la classe da cui si eredita il codice (superclasse). E' importante ricordare che per ogni

superclasse esistono (o possono esistere) tante sottoclassi, mentre per ogni sottoclasse esiste una

e una sola superclasse.

Descrivere cosa si intende per polimorfismo ed illustrarlo con un esempio in codice

Java

La proprietà del polimorfismo, che significa letteralmente "molte forme", ed è uno strumento dei

linguaggi di programmazione ad oggetti che possiamo usare a nostro vantaggio.

Si usa quando abbiamo molte classi che sono correlate tra loro per ereditarietà e delle quali

vogliamo adattare il comportamento. Ad esempio, si pensi ad una superclasse chiamata

Automobile che abbia un metodo chiamato carburante().

Possibili sottoclassi della classe Automobile potrebbero essere, ad esempio: Fiat,

Mercedes, Bmw, ecc.

Ognuna di queste classi avrà la sua implementazione del carburante che quel tipo di automobile

utilizza (Fiat Metano, Mercedes Diesel, Bmw Benzina). Passiamo ad analizzare una possibile

implementazione: public class Automobile {

String nome;

public String carburante() {

return "L’Automobile utilizza il carburante";

}}

public class Fiat extends

Automobile { public String

carburante() {

return "Metano";

}

}

public class Mercedes extends

Automobile { public String

carburante() {

return "Diesel";

}

Descrivere che cos'è l'overloading degli operatori e fare un esempio in codice Java.

L’overloading degli operatori è una proprietà della programmazione ad oggetti che

permette di usare

•lo stesso identificatore per più metodi

•numero e/o tipo di parametri diversi

•i metodi di questo tipo si dicono overloaded

Supponiamo di aver bisogno, di una classe di utilità che calcoli il prodotto di numeri

public class Prodotto {

public int

prod(int a, int b){

return a * b;

}

public int prod(int a, int b, int c) {

return a * b * c;

}

public float prod(float a, float b) {

return a * b;

}

public static void main(String args[]) { Prodotto p = new Prodotto();

System.out.println(“3*2 = ” + p.prod(3,2));

System.out.println(“3*2*4 = ” + p.prod(3,2,4));

System.out.println(“3.2*2.5 = ” + p.prod(3.2,2.5));

}

}

Scrivere una classe Somma che dimostri l’overloading degli operatori in Java

public class Somma {

public int

somm(int a, int b) {

return a + b;

public int

somm(int a, int b, int c) {

return a + b + c;

public float

somm(float a, float b) {

return a + b;

public static void

main(String args[]) {

Somma s = new Somma();

System.out.println(“3+2 = ” + s.somm(3,2));

System.out.println(“3+2+4 = ” + s.somm(3,2,4));

System.out.println(“3.2+2.5 = ” + s.somm(3.2,2.5));

essendo la prima parte tra "" viene identificata come testo e

la stampa a video sarà: 3+2 = 5

Descrivere il problema del diamante nell'ereditarietà multipla e mostrare un

esempio.

In Java una classe può ereditare da una sola classe base (utilizzando il comando extends) , ed il

concetto di ereditarietà

multipla è possibile solo grazie all’uso delle interfacce (utilizzando il comando implements). Un

interfaccia permette di definire la

“forma” di una classe, indicando nomi di metodi, argomenti, tipi restituiti e proprietà, ma senza

permettere alcuna

implementazione. Saranno poi le classi che ne faranno uso a dover implementare la logica per

ciascun metodo definito

nell’interfaccia. Questa soluzione permette di risolvere il problema alla radice, in caso di

ereditarietà multipla il metodosarà comunque sempre implementato nella classe eliminando così

problemi di ambiguità. in termini brevi potremmo dire

che:

una superclasse può avere molte sottoclassi

(ereditarietà normale) una sottoclasse può avere

molte superclassi (ereditarietà multipla)

esempio ereditarietà normale (tra classi): public class Fiat

extends Automobile esempio ereditarietà multipla: public

Si descriva come il problema dell'ereditarietà multipla viene risolto nel linguaggio

Java.

L’ereditarietà multipla in Java non è possibile soltanto facendo uso di classi, ma bisogna introdurre

le interf

Dettagli
Publisher
A.A. 2025-2026
41 pagine

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher dominikks di informazioni apprese con la frequenza delle lezioni di fondamenti di informatica e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Università telematica "e-Campus" di Novedrate (CO) o del prof Tradigo Giuseppe.