夜光 带你走进 Java基础编程实战(十四 反射)

2024-03-28 01:50

本文主要是介绍夜光 带你走进 Java基础编程实战(十四 反射),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

夜光序言:

夜光,我同你最大的差别,就是在乎一个人的时候,天知地知,我知,他人不知~~

 

 

 

 

正文:

第一个类:

package com.Genius.sixteen;


/*夜光:这里我们了解一下反射~~
 * 反射机制可以为程序提供动态的运行能力
 * 利用反射机制可以在运行时对程序进行动态的控制
 * java提供有一套专门的工具类,帮助我们在程序中使用反射特性~~
 * 开发使用反射的程序所需要的工具类在java.lang.reflect包中
 * 
 * 这个程序使用Class类
 * 
 * */

public class ClassTest {
            public static void main(String[] args) {
                try{
                    //加载指定的类
                    Class sc = Class.forName("com.Genius.sixteen.Son");
                    Son myson = (Son)sc.newInstance();
                    //调用创建对象方法~~夜光
                    System.out.println("调用创建对象的方法:");
                    myson.methodSonProtected();
                    myson.methodSonPublic();
                    myson.methodFather();
                    //夜光:加载类的详细信息~~
                    System.out.println(sc.getName()+"自己声明了"+sc.getDeclaredFields().length
                            +"个成员变量");
                    System.out.println(sc.getName()+"类对外公布的方法有"+sc.getMethods().length
                            +"个");
                }catch (Exception e) {
                    e.printStackTrace();
                }
            }
        
}


class Father
{
    //父类中的公共成员变量
    public int memberFather;
    //父类中的公共方法
    public void methodFather()
    {
        System.out.println("夜光:这是从父类中继承而来的方法methodFather");
    }


}

第二个类:

package com.Genius.sixteen;

public class Son extends Father
{
    //子类的额公共成员变量
    public int memberSonPublic;
    //子类的私有成员变量
    private int memberSonPrivate;
    //子类的公共方法
    public void methodSonPublic()
    {
        System.out.println("这是子类自己的方法methodSonPublic");
    }
    public void methodSonProtected()
    {
        System.out.println("这是子类自己的方法methodSonProtected");
    }


}

 


==========================

 

反射

 

package com.Genius.sixteen;

public class Filed {

    /*夜光:
     * java反射使用filed类表示成员变量
     * filed类提供了动态访问成员变量的API
     * class类获取成员变量API:
     * 1、getfiled
     * 2、getfileds
     * 3、getDeclareFiled(String name)
     * 4、getDeclaredFileds()
     * 
     * filed类比较常用的方法如下:
     * 1、setAccessible
     * 2、getType()
     * 3、getName()
     * 4、set(Object obj,Object value)
     * 5、getModifiers
     * 
     * 
     * java反射使用Method类表示成员方法~
     * Method类提供了获取成员方法信息和调用成员方法API
     * 
     * 
     * 
     * 
    */
}

=============================================================

 

 


 

这篇关于夜光 带你走进 Java基础编程实战(十四 反射)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/854098

相关文章

怎么用idea创建一个SpringBoot项目

《怎么用idea创建一个SpringBoot项目》本文介绍了在IDEA中创建SpringBoot项目的步骤,包括环境准备(JDK1.8+、Maven3.2.5+)、使用SpringInitializr... 目录如何在idea中创建一个SpringBoot项目环境准备1.1打开IDEA,点击New新建一个项

从入门到精通MySQL 数据库索引(实战案例)

《从入门到精通MySQL数据库索引(实战案例)》索引是数据库的目录,提升查询速度,主要类型包括BTree、Hash、全文、空间索引,需根据场景选择,建议用于高频查询、关联字段、排序等,避免重复率高或... 目录一、索引是什么?能干嘛?核心作用:二、索引的 4 种主要类型(附通俗例子)1. BTree 索引(

Java Web实现类似Excel表格锁定功能实战教程

《JavaWeb实现类似Excel表格锁定功能实战教程》本文将详细介绍通过创建特定div元素并利用CSS布局和JavaScript事件监听来实现类似Excel的锁定行和列效果的方法,感兴趣的朋友跟随... 目录1. 模拟Excel表格锁定功能2. 创建3个div元素实现表格锁定2.1 div元素布局设计2.

Spring如何使用注解@DependsOn控制Bean加载顺序

《Spring如何使用注解@DependsOn控制Bean加载顺序》:本文主要介绍Spring如何使用注解@DependsOn控制Bean加载顺序,具有很好的参考价值,希望对大家有所帮助,如有错误... 目录1.javascript 前言2. 代码实现总结1. 前言默认情况下,Spring加载Bean的顺

SpringBoot连接Redis集群教程

《SpringBoot连接Redis集群教程》:本文主要介绍SpringBoot连接Redis集群教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1. 依赖2. 修改配置文件3. 创建RedisClusterConfig4. 测试总结1. 依赖 <de

SpringBoot+Redis防止接口重复提交问题

《SpringBoot+Redis防止接口重复提交问题》:本文主要介绍SpringBoot+Redis防止接口重复提交问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不... 目录前言实现思路代码示例测试总结前言在项目的使用使用过程中,经常会出现某些操作在短时间内频繁提交。例

Redis 配置文件使用建议redis.conf 从入门到实战

《Redis配置文件使用建议redis.conf从入门到实战》Redis配置方式包括配置文件、命令行参数、运行时CONFIG命令,支持动态修改参数及持久化,常用项涉及端口、绑定、内存策略等,版本8... 目录一、Redis.conf 是什么?二、命令行方式传参(适用于测试)三、运行时动态修改配置(不重启服务

SpringSecurity显示用户账号已被锁定的原因及解决方案

《SpringSecurity显示用户账号已被锁定的原因及解决方案》SpringSecurity中用户账号被锁定问题源于UserDetails接口方法返回值错误,解决方案是修正isAccountNon... 目录SpringSecurity显示用户账号已被锁定的解决方案1.问题出现前的工作2.问题出现原因各

Java继承映射的三种使用方法示例

《Java继承映射的三种使用方法示例》继承在Java中扮演着重要的角色,它允许我们创建一个类(子类),该类继承另一个类(父类)的所有属性和方法,:本文主要介绍Java继承映射的三种使用方法示例,需... 目录前言一、单表继承(Single Table Inheritance)1-1、原理1-2、使用方法1-

Spring @Scheduled注解及工作原理

《Spring@Scheduled注解及工作原理》Spring的@Scheduled注解用于标记定时任务,无需额外库,需配置@EnableScheduling,设置fixedRate、fixedDe... 目录1.@Scheduled注解定义2.配置 @Scheduled2.1 开启定时任务支持2.2 创建