Skip to content

Commit

Permalink
Reflection of methods and parameters
Browse files Browse the repository at this point in the history
  • Loading branch information
tiagogomes187 committed Aug 30, 2023
1 parent fd483e9 commit 25a4826
Show file tree
Hide file tree
Showing 3 changed files with 69 additions and 0 deletions.
1 change: 1 addition & 0 deletions .idea/modules.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

11 changes: 11 additions & 0 deletions ReflexaoExemplo/ReflexaoExemplo.iml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="JAVA_MODULE" version="4">
<component name="NewModuleRootManager" inherit-compiler-output="true">
<exclude-output />
<content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
</content>
<orderEntry type="jdk" jdkName="1.8" jdkType="JavaSDK" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
</module>
57 changes: 57 additions & 0 deletions ReflexaoExemplo/src/ReflexaoExemplo.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
import java.lang.reflect.Method;
import java.lang.reflect.Parameter;

class Produto {
private String nome;
private Double preco;

public Produto(String nome, Double preco) {
this.nome = nome;
this.preco = preco;
}

public String getNome() {
return nome;
}

public void setNome(String nome) {
this.nome = nome;
}

public Double getPreco() {
return preco;
}

public void setPreco(Double preco) {
this.preco = preco;
}
}

public class ReflexaoExemplo {

public static void main(String[] args) {

//Instância da classe Produto
Produto p = new Produto("Geladeira", 3000.00);

//Instância da classe Class
Class<? extends Produto> cl = p.getClass();

//Todos os métodos declarados na classe Produto
Method[] method = cl.getDeclaredMethods();

for(Method m : method) {
System.out.println(m.getName());

//Parâmetros do método
Parameter[] parameter = m.getParameters();

for(Parameter pr : parameter) {
System.out.println(pr);
}
}


}

}

0 comments on commit 25a4826

Please sign in to comment.