package www.cn.extend;

/** Animal
* 2019/07/04
* @author Administrator
*
*/
public class Animal { public String mName;
public String mSex;
private String mSecret = "I hava a secret but I can't tell you know"; public String getSecret() {
return mSecret;
} private void privateMethod() {
System.out.println("just a privateMethod");
}
}
package www.cn.extend;

/**
* Dog
* @author Administrator
*
*/
public class Dog extends Animal{
private String mJob;
public String mSkill;
protected String mDrive;
int mAge; void keepFit(){
System.out.println(Dog.class.getSimpleName()+" to keepFit");
} private void sooEsad(){
System.out.println("asdf");
}
}
package www.cn.extend;

import java.lang.reflect.Method;

public class Test {

    public static void main(String[] args){

        /**.class.getFields();
* 返回父类和子类中公共属性的Field数组。
*/
// Field[] fields = Dog.class.getFields();
// for (Field field:fields){
// System.out.println("this is a field from "+Dog.class.getSimpleName() +" : "+field);
// } /**.class.getDeclaredFields();
* 返回子类中所有访问权限的属性。
*/
// Field[] declaredFields = Dog.class.getDeclaredFields();
// for (Field field:declaredFields){
// System.out.println("this is a declaredFields from "+Dog.class.getSimpleName() +" : "+field);
// } /**.class.getMethods();
* 返回父类的公共方法
*/
// Method[] methods = Dog.class.getMethods();
// for (Method method:methods){
// System.out.println("this is a methods from "+Dog.class.getSimpleName() +" : "+method);
// } /**.class.getDeclaredMethods();
* 返回子类所有权限的方法。
*/
Method[] declaredMethods = Dog.class.getDeclaredMethods();
for (Method method:declaredMethods){
System.out.println(declaredMethods[0].getName());
System.out.println("this is a declaredMethods from "+Dog.class.getSimpleName() +" : "+method);
} } }

Class.getDeclaredFields()和Class.getFields()的区别。 Class.getMethods()和Class.getDeclaredMethods()的区别。的更多相关文章

  1. java中Class.getMethods()和Class.getDeclaredMethods()的区别

    在java中,可以根据Class类的对象,知道某个类(接口)的一些属性(成员 ,方法,注释,注解)等.由于最近的工作中用到了这些,其中需要在代码中格局反射知道某些类的方法,查看文档的时候,看到了get ...

  2. 反射中getMethods 与 getDeclaredMethods 的区别

    public Method[] getMethods()返回某个类的所有公用(public)方法包括其继承类的公用方法,当然也包括它所实现接口的方法.public Method[] getDeclar ...

  3. error和exception的区别,RuntimeException和非RuntimeException的区别

    error和exception的区别,RuntimeException和非RuntimeException的区别   1. 异常机制       异常机制是指当程序出现错误后,程序如何处理.具体来说, ...

  4. java 标准输出与标准错误 out与 err 区别 用法 联系 java中的out与err区别 System.out和System.err的区别 System.out.println和System.err.println的区别 Java重定向System.out和System.err

    本文关键词: java 标准输出与标准错误    out与 err 区别 用法 联系  java中的out与err区别  System.out和System.err的区别 System.out.pri ...

  5. web app与app的区别,即html5与app的区别

    公司准备要做一个项目,是p2p配资的app.在网上问了一些人后,发现有的是直接有html5做好后,用软件封装的.之前我学过app的开发,当时Android版本的,知道开发Android app时写的代 ...

  6. class.getDeclaredFields()与class.getFields()

    * getFields()与getDeclaredFields()区别:getFields()只能访问类中声明为公有的字段,私有的字段它无法访问.getDeclaredFields()能访问类中所有的 ...

  7. 浅谈JS中的!=、== 、!==、===的用法和区别 JS中Null与Undefined的区别 读取XML文件 获取路径的方式 C#中Cookie,Session,Application的用法与区别? c#反射 抽象工厂

    浅谈JS中的!=.== .!==.===的用法和区别   var num = 1;     var str = '1';     var test = 1;     test == num  //tr ...

  8. [No000082]Convert和Parse的区别/Convert.ToInt32()与int.Parse()的区别

    (1)这两个方法的最大不同是它们对null值的处理方法: Convert.ToInt32(null)会返回0而不会产生任何异常,但int.Parse(null)则会产生异常. 没搞清楚Convert. ...

  9. Mysql分表和分区的区别、分库分表介绍与区别

    分表和分区的区别: 一,什么是mysql分表,分区 什么是分表,从表面意思上看呢,就是把一张表分成N多个小表,具体请看:mysql分表的3种方法 什么是分区,分区呢就是把一张表的数据分成N多个区块,这 ...

随机推荐

  1. linux 结束某个进程,并且结束子进程

    pid=49184 childid=`ps -ef|grep $pid|grep -v grep|awk '{printf " %s",$2 }'` kill -9 $childi ...

  2. 如何利用maven将本地jar包引入到工程之中

    1.在个人开发模式下,可以将jar包放入项目的lib目录中,在pom.xml中做如下配置: <dependencies> <dependency> <groupId> ...

  3. java发送application/json格式的post请求,需要登陆

    package util; import java.io.IOException; import java.io.InputStream; import java.io.OutputStreamWri ...

  4. Ubuntu16.04安装Consul

    1.下载安装包 https://www.consul.io/downloads.html wget https://releases.hashicorp.com/consul/1.5.3/consul ...

  5. iOS开发需要哪些设备

    ios开发硬件配置环境 工具:使用到 Xcode 和 iOS SDK(Apple 提供的开发工具). 硬件配置: 首先有一台Mac电脑,然后有一个iDevice——iPhone.iPad.iPod T ...

  6. 记一次偶发的bug排查——redis-py-cluster库的bug

     排查流水账: 通过平台监控,发现很多偶发的查看推荐列表的接口时延大于0.5s 写单元测试,不能重现.在测试环境不能重现.只有在正式环境可以偶发重现. 通过日志埋点,等待重现 不断地加日志埋点后发现耗 ...

  7. (CSDN 迁移) jFinal找不到或无法加载主类

    错误: 找不到或无法加载主类 com.demo.common.DemoConfig 项目上右键 -> Build Path -> Order and Export 修改顺序: 从上到下依次 ...

  8. .NET Core 之 Nancy 基本使用

    Nancy简介 Nancy是一个轻量级的独立的框架,下面是官网的一些介绍: Nancy 是一个轻量级用于构建基于 HTTP 的 Web 服务,基于 .NET 和 Mono 平台,框架的目标是保持尽可能 ...

  9. The driver is automatically registered via the SPI and manual loading of the driver class....

    Loading class `com.mysql.jdbc.Driver'. This is deprecated. The new driver class is `com.mysql.cj.jdb ...

  10. 用es6 封装的对数组便捷操作的算法

    /* * @Description: 对数组的基本操作 * @LastEditors: Please set LastEditors * @Date: 2019-04-26 12:00:19 * @L ...