🐧 Linux TippsDebian 11 Long Term Support reaches end-of-life(31.08.2026 um 02:00 Uhr)
🐧 Linux TippsUpdated Debian 13: 13.7 released(12.09.2026 um 02:00 Uhr)
🕵️ SicherheitslückenUSN-8741-1: Flatpak vulnerabilities(10.09.2026 um 10:44 Uhr)
🕵️ SicherheitslückenUSN-8742-1: Netty vulnerability(10.09.2026 um 11:01 Uhr)
🕵️ SicherheitslückenUSN-8737-2: GNU C Library vulnerabilities(10.09.2026 um 13:25 Uhr)
🕵️ SicherheitslückenUSN-8743-1: PHP vulnerabilities(10.09.2026 um 13:48 Uhr)
🕵️ SicherheitslückenUSN-8744-1: Python vulnerabilities(10.09.2026 um 15:53 Uhr)
🐧 Linux TippsUSN-8748-1: Linux kernel (NVIDIA) vulnerabilities(10.09.2026 um 17:32 Uhr)
🕵️ SicherheitslückenUSN-8745-1: KissFFT vulnerabilities(10.09.2026 um 17:36 Uhr)
🕵️ SicherheitslückenUSN-8746-1: libEBML vulnerability(10.09.2026 um 17:48 Uhr)
🐧 Linux TippsDebian 11 Long Term Support reaches end-of-life(31.08.2026 um 02:00 Uhr)
🐧 Linux TippsUpdated Debian 13: 13.7 released(12.09.2026 um 02:00 Uhr)
🕵️ SicherheitslückenUSN-8741-1: Flatpak vulnerabilities(10.09.2026 um 10:44 Uhr)
🕵️ SicherheitslückenUSN-8742-1: Netty vulnerability(10.09.2026 um 11:01 Uhr)
🕵️ SicherheitslückenUSN-8737-2: GNU C Library vulnerabilities(10.09.2026 um 13:25 Uhr)
🕵️ SicherheitslückenUSN-8743-1: PHP vulnerabilities(10.09.2026 um 13:48 Uhr)
🕵️ SicherheitslückenUSN-8744-1: Python vulnerabilities(10.09.2026 um 15:53 Uhr)
🐧 Linux TippsUSN-8748-1: Linux kernel (NVIDIA) vulnerabilities(10.09.2026 um 17:32 Uhr)
🕵️ SicherheitslückenUSN-8745-1: KissFFT vulnerabilities(10.09.2026 um 17:36 Uhr)
🕵️ SicherheitslückenUSN-8746-1: libEBML vulnerability(10.09.2026 um 17:48 Uhr)

🔧 Programmierung 🕛 vor 1 Jahr 4 Min Lesezeit
0

Referências a métodos de instância

↗ Quelle (dev.to)
🗣️ Stimme:


  • Definição: Uma referência a um método de instância é criada com a seguinte sintaxe:



refObj::nomeMétodo




  • Diferença de métodos estáticos: Em vez de usar o nome de uma classe, utiliza-se uma referência de objeto.


  • Comportamento: O método referenciado opera em relação ao objeto específico (refObj).




Exemplo:




  • Reutilização da interface:

    Interface IntPredicate e método test() são usados novamente.


  • Nova classe criada:

    Nome: MyIntNum.


  • Responsabilidade:

    Armazena um valor inteiro.

    Define o método isFactor() para verificar se um número é fator do valor armazenado.


  • Execução no main():

    Instâncias: Duas instâncias de MyIntNum são criadas.


  • Referência de método:

    numTest() é chamado passando uma referência ao método isFactor() e o número a ser testado.

    A referência funciona com relação ao objeto específico.




// Usa uma referência a um método de instância.

// Interface funcional para predicados numéricos que opera com

// valores inteiros.

interface IntPredicate {

boolean test(int n);

}

// Esta classe armazena um valor int e define o método de

// instância isFactor(), que retorna true quando seu argumento

// é fator do valor armazenado.

class MyIntNum {

private int v;

MyIntNum(int x) { v = x; }

int getNum() { return v; }

// Retorna true se n for fator de v.

boolean isFactor(int n) {

return (v % n) == 0;

}

}

class MethodRefDemo2 {

public static void main(String args[])

{

boolean result;

MyIntNum myNum = new MyIntNum(12);

MyIntNum myNum2 = new MyIntNum(16);

// Aqui, uma referência ao método isFactor é criada em myNum.

IntPredicate ip = myNum::isFactor;

// Agora, ela é usada para chamar isFactor() via test().

result = ip.test(3);

if(result) System.out.println("3 is a factor of " + myNum.getNum());

// Desta vez, uma referência ao método isFactor é criada em myNum2.

// e usada para chamar isFactor() via test().

ip = myNum2::isFactor;

result = ip.test(3);

if(!result) System.out.println("3 is not a factor of " + myNum2.

getNum());

}

}



Referência de Método para um Objeto Específico



IntPredicate ip = myNum::isFactor;




  • A referência de método ip aponta para o método de instância isFactor() no objeto myNum.


  • Ao chamar ip.test(3), o método isFactor() é executado em myNum.


  • Outra referência como myNum2::isFactor funciona da mesma forma, mas opera em myNum2.




Referência de Método para Qualquer Objeto de uma Classe



NomeClasse::nomeMétodoInstância




  • O nome da classe é usado para referenciar um método de instância aplicável a qualquer objeto dessa classe.


  • O primeiro parâmetro da interface funcional se torna o objeto chamador do método.


  • Interface: MyIntNumPredicate


  • Método: test(MyIntNum obj, int value)


  • Permite usar a referência MyIntNum::isFactor para qualquer objeto da classe MyIntNum.




// Usa uma referência de método de instância para referenciar

// qualquer instância.

// Interface funcional para predicados numéricos que opera com um

// objeto de tipo MyIntNum e um valor inteiro.

interface MyIntNumPredicate {

boolean test(MyIntNum mv, int n);

}

// Esta classe armazena um valor int e define o método

// de instância isFactor(), que retorna true quando seu

// argumento é fator do valor armazenado.

class MyIntNum {

private int v;

MyIntNum(int x) { v = x; }

int getNum() { return v; }

// Retorna true se n for fator de v.

boolean isFactor(int n) {

return (v % n) == 0;

}

}

class MethodRefDemo3 {

public static void main(String args[])

{

boolean result;

MyIntNum myNum = new MyIntNum(12);

MyIntNum myNum2 = new MyIntNum(16);

// Esta instrução faz inp referenciar o método de

// instância isFactor().

// Referência de método para qualquer objeto de tipo MyIntNum

MyIntNumPredicate inp = MyIntNum::isFactor;

// A instrução a seguir chama isFactor() em myNum.

result = inp.test(myNum, 3);

if(result)

System.out.println("3 is a factor of " + myNum.getNum());

// A próxima instrução chama isFactor() em myNum2.

result = inp.test(myNum2, 3);

if(!result)

System.out.println("3 is a not a factor of " + myNum2.getNum());

}

}



Observe: MyIntNumPredicate inp = MyIntNum::isFactor;




  • A referência ao método de instância isFactor() permite que ele funcione com qualquer objeto do tipo MyIntNum.


  • test() é chamado através da referência, como em inp.test(myNum, 3), isso resulta em uma chamada a myNum.isFactor(3), onde myNum é o objeto no qual o método é executado.


Vollständiger Original-Bericht
Ausführliche Details, Code-Beispiele & Hersteller-Stellungnahme auf dev.to.
↗ Original-Artikel auf dev.to lesen
Wie bewertest du diesen Beitrag?
1 Klick Feedback
Teilen mit Netzwerk & Team:

Community-Analysen & Experten-Meinungen 0

Verfasse deine eigene Analyse, teile Workarounds oder diskutiere diesen Vorfall im Blog.
Noch keine Community-Analyse verfasst. Markiere einen Textabschnitt oder klicke oben auf Eigene Analyse verfassen“!
Community Pulse: Relevanz-Einschätzung
1 Klick Experten-Votum
🔴 Akute Relevanz 0%
🟡 In Evaluierung 0%
🟢 Keine Auswirkung 0%
Spannende Innovation 0%
Verwandte Story-Cluster & Quellen (Vektor-KI)
Port 8095 Engine
1 Quelle
Debian 11 Long Term Support reaches end-of-life
1 Quelle
Updated Debian 13: 13.7 released
1 Quelle
USN-8741-1: Flatpak vulnerabilities
Ähnliche Beiträge
🔍 Verwandte News

Auch interessante Nachrichten Referências a métodos de instância

Thematisch verwandte Begriffe: Referências, métodos, instância · 6 Treffer

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...