Java基础笔记14

1.反射.
Class:反射类 任何一个类都有一个Class反射类.(影子)
java.lang.reflect.*;
Field:字段类
Method:方法类类
Constructor:构造方法类.

2.获取反射类
//1.获取反射类 类名.class
Class clazz1=People.class;
//2.通过全类名
Class clazz2=Class.forName("demo.People");
//3.对象获取
People p=new People();
Class clazz3=p.getClass();
3.通过反射类实例化对应的类对象.
clazz.newInstance();

4.通过反射类获取类中的属性.
//获取父类或自己本类中public修饰的属性
Field ageField= clazz1.getField("age");
ageField.set(p, 156);
//只获取本类中自己声明的属性
Field nameField=clazz1.getDeclaredField("name");
nameField.setAccessible(true);//允许赋值
nameField.set(p, "张三");
System.out.println(p);
5.获取某个类的全部方法
Method showMethod= clazz1.getMethod("print",int.class);
//调用该方法
showMethod.invoke(p,15);

Method[] ms=clazz1.getDeclaredMethods();
for(Method m:ms){
System.out.println(Modifier.toString(m.getModifiers())+" "
+m.getReturnType().getName()+" "+m.getName()+"("+Arrays.asList(m.getGenericParameterTypes())+")");
}

时间: 2024-10-13 08:39:54

Java基础笔记14的相关文章

[Java基础笔记]数组

Java基础笔记 定义数组: int[] numbers = new int[100]; //方法一 double[] num = new double[10]; int[][] a = new int[2][5]; 通过new创建的数组,元素默认值为0(0.0) int[] scores = {5,4,33,12,46}; //方法二 int[][] a = { //位数不足,自动补0 {5,3,2,1,6}, {10,12,14,15}, }; 数组特性:存储的都是同类型数据:长度定义后不可

java 基础笔记 基本数据类型对象包装类

基本数据类型对象包装类: 为了方便操作基本数据类型值,将其封装成了对象,在对象中定义了属性和行为丰富了该数据的操作. 用于描述该对象的类就称为基本数据类型对象包装类. 基本数据类型 包装类 byte Byte short Short int Integer long Long float Float double Double char   Character boolean Boolean 该包装对象主要用于基本类型和字符串之间的转换. 基本类型-->字符串 1.基本类型数据+"&quo

Java基础笔记 – Annotation注解的介绍和使用 自定义注解

Java基础笔记 – Annotation注解的介绍和使用 自定义注解 本文由arthinking发表于5年前 | Java基础 | 评论数 7 |  被围观 25,969 views+ 1.Annotation的工作原理:2.@Override注解:3.@Deprecated注解:4.@SuppressWarnings注解:5.自定义注解:5.1.添加变量:5.2.添加默认值:5.3.多变量使用枚举:5.4.数组变量:6.设置注解的作用范围:6.1.在自定义注解中的使用例子:7.使用反射读取R

【转】Java基础笔记 – 枚举类型的使用介绍和静态导入--不错

原文网址:http://www.itzhai.com/java-based-notes-introduction-and-use-of-an-enumeration-type-static-import.html#1.2.values方法的使用: Java基础笔记 – 枚举类型的使用介绍和静态导入 本文由arthinking发表于4年前 | Java基础 | 暂无评论 |  被围观 8,332 views+ 1.枚举(Enum):1.1.枚举类型中的两个静态方法:1.2.values方法的使用:

黑马程序员----java基础笔记中(毕向东)

<p>------<a href="http://www.itheima.com" target="blank">Java培训.Android培训.iOS培训..Net培训</a>.期待与您交流! -------</p><p> </p><p>笔记一共记录了毕向东的java基础的25天课程,分上.中.下</p><p>本片为中篇,涵盖11-20天课程</p&

java 基础笔记 第一波~

Java 基础知识  首次复习. 1.作用域 其实就是这个变量可以起作用的范围. 2.有时候碰到的 value ,其实就一个变量名 ,别想的太复杂. 3.Java 局部变量,实例变量 ,类变量(静态变量)区别 1,局部变量 是类的方法中的变量: 2.实例变量 类中独立于方法之外的变量 不过没有static修饰 也叫对象变量 3.类变量(静态变量) 类中独立于方法之外的变量 用static修饰 也叫静态变量 伪代码说明 Public class Variable{ Static int allcl

Java基础笔记-抽象,继承,多态

抽象类: abstract修饰 抽象方法必须定义在抽象类中,抽象类不能创建对象. 在抽象方法中可以不定义抽象方法,作用是:让该类不能建立对象. 特点是: 1.定义在抽象类中 2.方法和类都用abstract修饰,在抽象类中的方法不写abstract也默认的是抽象方法. 3.不能用new来创建对象,调用抽象方法没意义. 4.抽象类中的方法被使用,必须由子类覆写其所有的抽象方法后,才能建立子类对象进行调用. 如果子类只覆盖了部分的抽象方法.那么该子类还是一个抽象类. 5.抽象类不可以被实例化. 继承

Java基础笔记——学习Java前的准备

接下来的一个月我会和大家分享我学JavaSE时候的笔记,分享是最好的老师,希望我的笔记能给大家一些帮助. 我会每天发一篇文章,这些都是我学Java时候的精华,当然,每一篇笔记我都会精心修改,使得知识点更加清晰,更加通俗易懂. Java必备知识点汇总 软件:系统软件.应用软件 交互方式: 图形化界面GUI=Graphical User Interface 命令行方式CLI=Command Line Interface Java由SUN=Stanford University Network公司19

Java基础笔记(3) 进制与进制转换

---恢复内容开始--- 进制 在一般生活中,我们一直在应用的十进制,就是逢十进一,而今天我们要接触的是,计算机编程常用的进制!首先我们要知道,计算机内部运算采用的是二进制,也就是逢二进制! 1.什么是二进制? 就是只有0 和 1  每当遇到值为2 就向前进一位. 2.为什么计算机内部是二进制? 这就要从硬件说起,计算机是如何储存数据的,要知道我们网络传输,就是你要和别人一起聊天,你们隔着很远,到底是怎样才能让他收到你的聊天内容? 有一根网线还能说过去,毕竟网线链接终端我们也不知道连到哪,保不齐