当前位置: 首页 > news >正文

网站建设程序都有哪些新网站前期seo怎么做

网站建设程序都有哪些,新网站前期seo怎么做,做软件界面的网站,wordpress可视化模板编辑器原文网址:Java反射系列--方法大全_IT利刃出鞘的博客-CSDN博客 简介 本文介绍Java反射相关的方法。 Class相关方法 方法 说明 getName() 返回String形式的该类的名称。 newInstance() 根据某个Class对象产生其对应类的实例,它调用的是此类的默认构…

原文网址:Java反射系列--方法大全_IT利刃出鞘的博客-CSDN博客

简介

        本文介绍Java反射相关的方法。

Class相关方法

方法

说明

getName()

返回String形式的该类的名称。

newInstance()

根据某个Class对象产生其对应类的实例,它调用的是此类的默认构造方法(没有默认无参构造器会报错)

getClassLoader()

返回该Class对象对应的类的类加载器。

getSuperClass()

返回某子类所对应的直接父类所对应的Class对象

getComponentType()

如果当前类表示一个数组,则返回表示该数组组件的 Class 对象,否则返回 null。

getConstructor(Class[])

返回当前 Class 对象表示的类的指定的公有构造子对象。

getConstructors()

返回当前 Class 对象表示的类的所有公有构造子对象数组。

getDeclaredConstructor(Class[])

返回当前 Class 对象表示的类的指定已说明的一个构造子对象。

getDeclaredConstructors()

返回当前 Class 对象表示的类的所有已说明的构造子对象数组。

getDeclaredField(String)

返回当前 Class 对象表示的类或接口的指定已说明的一个域对象。

(获取指定的一个公共的字段,包括继承的)

getDeclaredFields()

返回当前 Class 对象表示的类或接口的所有已说明的域对象数组。

(获取公共和私有的属性(private、public、protected,和访问权限无关),不包括继承)。

getDeclaredMethod(String, Class[])

返回当前 Class 对象表示的类或接口的指定已说明的一个方法对象。

getDeclaredMethods()

返回 Class 对象表示的类或接口的所有已说明的方法数组。

getField(String)

返回当前 Class 对象表示的类或接口的指定的公有成员域对象。

(获取指定的public的字段,包括继承的)

getFields()

返回当前 Class 对象表示的类或接口的所有可访问的公有域对象数组。

(可以获取自身和继承公共的属性)

(可以获取公共的属性(public的),包括继承)。

getInterfaces()

返回当前对象表示的类或接口实现的接口。

getMethod(String, Class[])

返回当前 Class 对象表示的类或接口的指定的公有成员方法对象。

getMethods()

返回当前 Class 对象表示的类或接口的所有公有成员方法对象数组,包括已声明的和从父类继承的方法。

isArray()

判定此Class对象所对应的是否是一个数组对象

isInstance(Object)

此方法是 Java 语言 instanceof 操作的动态等价方法。

isInterface()

判定指定的 Class 对象是否表示一个接口类型

isPrimitive()

判定指定的 Class 对象是否表示一个 Java 的基类型。

获取接口/父类/构造方法

方法说明
Class<?>[] c1 = c.getInterfaces();取得实现的接口
Class<?> c2 = c.getSuperclass();取得父类
Constructor<?> con[] = c.getConstructors();取得构造函数

获取方法数据

方法

说明

Method getMethod(String name, Class<?>... parameterTypes)

通过方法名和参数列表获得方法

Method[] getMethods()

获得所有方法。

反映此 Class 对象所表示的类或接口(包括那些由该类或接口声明的以及从超类和超接口继承的那些的类或接口)的公共(public) member 方法。

Method getDeclaredMethod(String name, Class<?>... parameterTypes)

Method[] getDeclaredMethods()

反映此 Class 对象表示的类或接口声明的所有方法,包括公共、保护、默认(包)访问和私有方法,但不包括继承的方法。 

详细方法

方法

说明

int getModifiers()

取得本方法的访问修饰符。

取得后通过Modefier.toString(xxx)还原

String getName()

取得方法的名称

Class<?>[] getParameterTypes()

得到方法的全部参数类型

Class<?> getReturnType()

得到方法的返回值类型

CIass<?>[] getExceptionType()

得到一个方法的全部抛出异常

实例

package org.example.a;import java.lang.reflect.Method;
import java.lang.reflect.Modifier;interface ICategory {public static final String CATEGORY_NAME = "Human";public void sayCategory();public String sayHello(String name, Integer age);
}class Human implements ICategory {private String name;private Integer age;public Human() {}public String getName() {return name;}public void setName(String name) {this.name = name;}public Integer getAge() {return age;}public void setAge(Integer age) {this.age = age;}@Overridepublic void sayCategory() {System.out.println(CATEGORY_NAME);}@Overridepublic String sayHello(String name, Integer age) {return "名字:" + name + "年龄:" + age;}
}public class Demo {public static void main(String[] args) {Class<?> c = null;try {c = Class.forName("org.example.a.Human");} catch (Exception e) {e.printStackTrace();}Method m[] = c.getMethods();for (int i = 0; i < m.length; i++) {Class<?> r = m[i].getReturnType();Class<?> p[] = m[i].getParameterTypes();int xx = m[i].getModifiers();System.out.print(Modifier.toString(xx) + " ");System.out.print(r.getName() + " ");System.out.print(m[i].getName());System.out.print("(");for (int x = 0; x < p.length; x++) {System.out.print(p[x].getName() + " " + "arg" + x);if (x < p.length - 1) {System.out.print(", ");}}System.out.print(")");Class<?> ex[] = m[i].getExceptionTypes();if (ex.length > 0) {System.out.print(" throws ");for (int j = 0; j < ex.length; j++) {System.out.print(ex[j].getName());if (j < ex.length - 1) {System.out.print(",");}}}System.out.println();}}
}

执行结果

public java.lang.String getName()
public void setName(java.lang.String arg0)
public java.lang.String sayHello(java.lang.String arg0, java.lang.Integer arg1)
public java.lang.Integer getAge()
public void setAge(java.lang.Integer arg0)
public void sayCategory()
public final void wait() throws java.lang.InterruptedException
public final void wait(long arg0, int arg1) throws java.lang.InterruptedException
public final native void wait(long arg0) throws java.lang.InterruptedException
public boolean equals(java.lang.Object arg0)
public java.lang.String toString()
public native int hashCode()
public final native java.lang.Class getClass()
public final native void notify()
public final native void notifyAll()

获取属性

方法

说明

Field getField(String name)

根据属性名称获取public属性

Field[] getFields()

获得该类所有的public属性

Field getDeclaredField(String name)

根据属性名称获取属性。private属性也可获取

Field[] getDeclaredFields()

获得该类所有的属性。private属性也可获取

详细方法

方法

说明

Object get(Object obj)

获得一个对象中属性的具体内容

void set(Object obj,Object value)

设置指定对象中属性的具体内容

int RetModifiers()

获得属性的修饰符

String getName()

获得此属性的名称

boolean isAccessible()

判断此属性是否可被外部访问

void setAccessible(boolean flag)

设置一个属性是否可被外部访问

static void setAccessibie(AccessibIeObject[] array,boolean flag)

将一组属性设置是否可被外部访问

String toString()

返回此Field类的信息

示例

package org.example.a;import java.lang.reflect.Field;
import java.lang.reflect.Modifier;interface ICategory {public static final String CATEGORY_NAME = "Human";public void sayCategory();public String sayHello(String name, Integer age);
}class Human implements ICategory {private String name;private Integer age;public Human() {}public String getName() {return name;}public void setName(String name) {this.name = name;}public Integer getAge() {return age;}public void setAge(Integer age) {this.age = age;}@Overridepublic void sayCategory() {System.out.println(CATEGORY_NAME);}@Overridepublic String sayHello(String name, Integer age) {return "名字:" + name + "年龄:" + age;}
}public class Demo {public static void main(String[] args) {Class<?> c = null;try {c = Class.forName("org.example.a.Human");} catch (Exception e) {e.printStackTrace();}Field f[] = c.getDeclaredFields();System.out.println("本类属性: ");for (int i = 0; i < f.length; i++) {Class<?> r = f[i].getType();int mo = f[i].getModifiers();String priv = Modifier.toString(mo);System.out.print(priv + " ");System.out.print(r.getName() + " ");System.out.print(f[i].getName());System.out.println(";");}System.out.println("-------------------------------------------");Field f1[] = c.getDeclaredFields();System.out.println("公共属性: ");for (int i = 0; i < f1.length; i++) {Class<?> r = f1[i].getType();int mo = f1[i].getModifiers();String priv = Modifier.toString(mo);System.out.print(priv + "");System.out.print(r.getName() + " ");System.out.print(f1[i].getName());System.out.println(";");}}
}

执行结果

本类属性: 
private java.lang.String name;
private java.lang.Integer age;
-------------------------------------------
公共属性: 
privatejava.lang.String name;
privatejava.lang.Integer age;

获取注解

        Method, Constructor, Field这三个类对象都可以判断是否有特定的注解类,方法是:boolean isAnnotationPresent(Class<? extends Annotation> annotationClass)

示例

本处使用枚举类示例,普通类类似的。

package org.example.a;import java.lang.reflect.Field;enum Color{@DeprecatedRED,GREEN,BLUE
}public class Demo {public static void main(String[] args) {for (Color value : Color.values()) {Field field = null;try {field = Color.class.getField(value.name());} catch (NoSuchFieldException e) {e.printStackTrace();}if (field.isAnnotationPresent(Deprecated.class)) {System.out.println(value.name() + "上有注解类:" + Deprecated.class.getName());}}}
}

执行结果

RED上有注解类:java.lang.Deprecated 

操作数组

方法说明
Class<?> getComponentType()取得一个数组的Class对象

详细方法

方法说明
static Object get(Object array,int index)根据下标取得数组内容
static Object newlnstance(Class<?> componentType, int length)根据己有的数组类型开辟新的数组对象
static void set(Object array,int index,Object value)修改指定位置的内容
http://www.yayakq.cn/news/446749/

相关文章:

  • 做影视网站怎么挣钱网站建设平台案例
  • 怎样做网站收录凡客诚品图片
  • 广州市 住房建设局网站首页濂溪区建设局网站
  • 网站论坛模板微信小程序下载app
  • 如何建立个人网站网站设计工具更好的做网站
  • 建设投票网站的目的个人网站备案名称举例
  • 创意设计公司网站app开发公司 上海
  • 可以做书的网站餐饮型网站开发
  • ios网站开发工具有哪些重庆建网站价格表
  • 电子商务网站制作公司重庆市建设工程交易中心
  • dede学校网站模板下载购买域名要多少钱
  • 多语种网站建设开发网站维护和推广方案
  • html5手机网站开发解决方案企业网站
  • 青海格尔木建设局网站wordpress中文文档下载
  • 网站内页301珠宝怎么做网站
  • 高校英文网站建设 文献综述Qq wordpress
  • 学校网站建设维护投标方案微信上微网站怎么做的吗
  • 家庭服务网站的营销策略成都网站建设公司哪家专业
  • 贵州两学一做教育网站百度快照推广效果怎样
  • 网站编辑面试wordpress前台403
  • 温州网站制作哪家好静态网页代码大全
  • 上海高端网站设计公司价格网站建设就选
  • 装饰公司简易手机网站建设网站 报告书
  • 如何做网站网站的教程微信拼团小程序怎么做
  • 石家庄网站建站世界优秀摄影作品网站
  • 电商网站设计岗位主要是vs简单的网站开发
  • 石家庄建设集团有限公司网站做菠菜网站代理犯法吗
  • 英语培训网站模板如何设置网站关键字
  • 国外被墙网站电子商务的公司有哪些
  • mysql 网站 数据库查网站空间商