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

iis搭建wordpress广西seo优化

iis搭建wordpress,广西seo优化,做网站的一个专题,免费游戏不用登录直接玩目录 反射反射相关类获取类中属性相关方法常用获得类相关的方法示例常用获得类中属性相关的方法示例获得类中注解相关的方法 反射优缺点 枚举常用方法优缺点 枚举与反射lambda表达式语法函数式接口简化规则使用示例变量捕获集合中的应用优缺点 反射 Java的反射(refl…

目录

  • 反射
    • 反射相关类
    • 获取类中属性相关方法
      • 常用获得类相关的方法
      • 示例
      • 常用获得类中属性相关的方法
      • 示例
      • 获得类中注解相关的方法
    • 反射优缺点
  • 枚举
    • 常用方法
    • 优缺点
  • 枚举与反射
  • lambda表达式
    • 语法
    • 函数式接口
    • 简化规则
    • 使用示例
    • 变量捕获
    • 集合中的应用
    • 优缺点

反射

  • Java的反射(reflection)机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;
  • 对于任意一个对象,都能够调用它的任意方法和属性,既然能拿到那么,我们就可以修改部分类型信息;
  • 这种动态获取信息以及动态调用对象方法的功能称为java语言的反射(reflection)机制。

反射相关类

类名用途
Class类代表类的实体,在运行的Java应用程序中表示类和接口
Field类代表类的成员变量/类的属性
Method类代表类的方法
Constructor类代表类的构造方法

获取类中属性相关方法

常用获得类相关的方法

方法用途
getClassLoader()获得类的加载器
getDeclaredClasses()返回一个数组,数组中包含该类中所有类和接口类的对象(包括私有的)
forName(String className)根据类名返回类的对象
newInstance()创建类的实例
getName获得类的完整路径名字

示例

获取类有以下三种方法:

  • 通过getClass获取Class对象
类名 对象名 = new 类名();//初始化一个对象
Class 类变量名 = 对象名.getClass();
  • 直接通过 类名.class 的方式得到。该方法最为安全可靠,程序性能更高
    ( 这说明任何一个类都有一个隐含的静态成员变量 class)
 Class 类变量名 = 类名.class;
  • 通过 Class 对象的 forName() 静态方法来获取,用的最多,
    但可能抛出 ClassNotFoundException 异常
try {Class 类变量名 = Class.forName("包名.类名");
} catch (ClassNotFoundException e) {e.printStackTrace();
}

常用获得类中属性相关的方法

方法用途
getField(String name)获得某个公有的属性对象
getFields()获得所有公有的属性对象
getDeclaredField(String name)获得某个属性对象
getDeclaredFields()获得所有属性对象

示例

获取私有构造方法:(展示核心代码,要捕获异常)

//第一步:调用获取方法,参数与构造方法的类型的.class
Constructor<T> constructor = c1.getDeclaredConstructor(String.class , int.class);
//第二步:由于是私有的就要设置为可访问,相当于获取权限
constructor.setAccessible(true);
//第三步:使用构造方法获取一个对象
Object o = constructor.newInstance("kun",2.5);

获得类中注解相关的方法

方法用途
getAnnotation(Class annotationClass)返回该类中与参数类型匹配的公有注解对象
getAnnotations()返回该类所有的公有注解对象
getDeclaredAnnotation(Class annotationClass)返回该类中与参数类型匹配的所有注解对象
getDeclaredAnnotations()返回该类所有的注解对象

反射优缺点

优点:

  • 对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法
  • 增加程序的灵活性和扩展性,降低耦合性,提高自适应能力
  • 反射已经运用在了很多流行框架如:Struts、Hibernate、Spring 等等。

缺点:

  • 使用反射会有效率问题。会导致程序效率降低。
  • 反射技术绕过了源代码的技术,因而会带来维护问题。反射代码比相应的直接代码更复杂 。

枚举

枚举是在JDK1.5以后引入的。
主要用途是:将一组常量组织起来,在这之前表示一组常量通常使用定义常量的方
式:public static final
枚举语法(类内方法外):

public enum 枚举名{RED,BLACK,GREEN;//定义的都相当于常量
}

常用方法

方法用途
values()以数组形式返回枚举类型的所有成员
ordinal()获取枚举成员的索引位置
valueOf()将普通字符串转换为枚举实例
compareTo()比较两个枚举成员在定义时的顺序

枚举的构造方法默认是私有的,且只能是私有的。

优缺点

优点:

  1. 枚举常量更简单安全 。
  2. 枚举具有内置方法 ,代码更优雅 。

缺点: 不可继承,无法扩展 。

枚举与反射

当我们按照前面获取构造方法的方法获取枚举的构造方法时汇报异常:java java.lang.NoSuchMethodException
看源码会知道是因为除了我们自己的构造函数参数外,他默认后边还会给参数,也就是说,这里我们参数给少了。
正确给参数后还是会报java.lang.IllegalArgumentException
原因是newInstance方法源码中有如下判断:

lambda表达式

Lambda表达式是Java SE 8中一个重要的新特性。
lambda表达式允许你通过表达式来代替功能接口。
lambda表达式就和方法一样,它提供了一个正常的参数列表和一个使用这些参数的主体(body,可以是一个表达式或一个代码块)。
Lambda 表达式(Lambda expression),基于数学中的λ演算得名,也可称为闭包(Closure)。

语法

(parameters) -> expression 或 (parameters) ->{ statements; } 
  1. paramaters:类似方法中的形参列表,这里的参数是函数式接口里的参数。这里的参数类型可以明确的声明也可不声明而由JVM隐含的推断。另外当只有一个推断类型时可以省略掉圆括号。
  2. ->:可理解为“被用于”的意思。
  3. 方法体:可以是表达式也可以代码块,是函数式接口里方法的实现。代码块可返回一个值或者什么都不返回,这里的代码块块等同于方法的方法体。如果是表达式,也可以返回一个值或者什么都不返回。

函数式接口

一个接口有且只有一个抽象方法,其他无关。
函数式接口可以加上@FunctionalInterface注解,加上后idea会自动帮你检验。

简化规则

  1. 参数类型可以省略,如果需要省略,每个参数的类型都要省略。
  2. 参数的小括号里面只有一个参数,那么小括号可以省略
  3. 如果方法体当中只有一句代码,那么大括号可以省略
  4. 如果方法体中只有一条语句,且是return语句,那么大括号可以省略,且去掉return关键字。

使用示例

MoreParameterNoReturn moreParameterNoReturn = ( a, b)->{System.out.println("无返回值多个参数,省略参数类型:"+a+" "+b);
};OneParameterNoReturn oneParameterNoReturn = a ->{System.out.println("无参数一个返回值,小括号可以胜率:"+ a);
};NoParameterNoReturn noParameterNoReturn = ()->System.out.println("无参数无返回值,方法体中只有一行代码");

变量捕获

lambda可以自动捕获上层的变量。
但是捕获到的变量不能够在修改,修改就会报错。

public static void main(String[] args) {int a = 10;NoParameterNoReturn noParameterNoReturn = ()->{// a = 99; errorSystem.out.println("捕获变量:"+a);};noParameterNoReturn.test();
}

集合中的应用

优缺点

优点:

  1. 代码简洁,开发迅速
  2. 方便函数式编程
  3. 非常容易进行并行计算
  4. Java 引入 Lambda,改善了集合操作

缺点:

  1. 代码可读性变差
  2. 在非并行计算中,很多计算未必有传统的 for 性能要高
  3. 不容易进行调试

文章转载自:
http://dinncojactitation.bkqw.cn
http://dinncogastropodous.bkqw.cn
http://dinncomariposa.bkqw.cn
http://dinncothanatophilia.bkqw.cn
http://dinncoafond.bkqw.cn
http://dinncochemigraphic.bkqw.cn
http://dinncoanuretic.bkqw.cn
http://dinncointranatal.bkqw.cn
http://dinncomegaloblast.bkqw.cn
http://dinncocutover.bkqw.cn
http://dinncosatyagrahi.bkqw.cn
http://dinncolandfast.bkqw.cn
http://dinncodisciplinarian.bkqw.cn
http://dinncocharitable.bkqw.cn
http://dinncopotshot.bkqw.cn
http://dinnconeoterist.bkqw.cn
http://dinncocircumstantiate.bkqw.cn
http://dinncoelectroform.bkqw.cn
http://dinncovivific.bkqw.cn
http://dinncovibrogram.bkqw.cn
http://dinnconasal.bkqw.cn
http://dinncooubliette.bkqw.cn
http://dinncooakley.bkqw.cn
http://dinncofissiparous.bkqw.cn
http://dinncowandy.bkqw.cn
http://dinncolyonnaise.bkqw.cn
http://dinncopanhandler.bkqw.cn
http://dinncofifer.bkqw.cn
http://dinncopalatine.bkqw.cn
http://dinncotiled.bkqw.cn
http://dinncobathroom.bkqw.cn
http://dinncohighborn.bkqw.cn
http://dinncozoom.bkqw.cn
http://dinncolaos.bkqw.cn
http://dinncoheteroptics.bkqw.cn
http://dinnconanoplankton.bkqw.cn
http://dinnconortheaster.bkqw.cn
http://dinncobobstay.bkqw.cn
http://dinncoderaignment.bkqw.cn
http://dinncovolumetric.bkqw.cn
http://dinncochicly.bkqw.cn
http://dinncogoddess.bkqw.cn
http://dinncorecordership.bkqw.cn
http://dinncobta.bkqw.cn
http://dinncobritannia.bkqw.cn
http://dinncocomputational.bkqw.cn
http://dinncopinaster.bkqw.cn
http://dinncoslavey.bkqw.cn
http://dinncoepanthous.bkqw.cn
http://dinncoquercitrin.bkqw.cn
http://dinncokilnman.bkqw.cn
http://dinncokaryolysis.bkqw.cn
http://dinncolinkwork.bkqw.cn
http://dinnconecrophil.bkqw.cn
http://dinncoriksdag.bkqw.cn
http://dinncographiure.bkqw.cn
http://dinncoskiametry.bkqw.cn
http://dinncotownish.bkqw.cn
http://dinncocoelom.bkqw.cn
http://dinncoallegory.bkqw.cn
http://dinncoelocnte.bkqw.cn
http://dinncokuweit.bkqw.cn
http://dinncoirreflexive.bkqw.cn
http://dinncoexternality.bkqw.cn
http://dinncolatchkey.bkqw.cn
http://dinncoscurf.bkqw.cn
http://dinncoatomizer.bkqw.cn
http://dinncosaxophone.bkqw.cn
http://dinncoscientificity.bkqw.cn
http://dinncobacteriologist.bkqw.cn
http://dinncosillographer.bkqw.cn
http://dinncomelanoblast.bkqw.cn
http://dinncoentity.bkqw.cn
http://dinncogoest.bkqw.cn
http://dinncoabrim.bkqw.cn
http://dinncotafferel.bkqw.cn
http://dinncostatistic.bkqw.cn
http://dinncoundesired.bkqw.cn
http://dinncodeoxidate.bkqw.cn
http://dinncosupply.bkqw.cn
http://dinncodesalinize.bkqw.cn
http://dinncosociopath.bkqw.cn
http://dinncoinwrought.bkqw.cn
http://dinncosemideify.bkqw.cn
http://dinncosubstorm.bkqw.cn
http://dinncoanglist.bkqw.cn
http://dinncorepudiate.bkqw.cn
http://dinncoseminarian.bkqw.cn
http://dinncopedigreed.bkqw.cn
http://dinncoinexecutable.bkqw.cn
http://dinncoalmug.bkqw.cn
http://dinncopreussen.bkqw.cn
http://dinncocontraposition.bkqw.cn
http://dinncolulu.bkqw.cn
http://dinncosoberly.bkqw.cn
http://dinncocosmochemistry.bkqw.cn
http://dinncocongelative.bkqw.cn
http://dinncousia.bkqw.cn
http://dinncowallonian.bkqw.cn
http://dinncohent.bkqw.cn
http://www.dinnco.com/news/147397.html

相关文章:

  • 合肥公司网站建设价格郑州竞价代运营公司
  • 郑州做网站哪里好怎样推广小程序平台
  • 深圳网站制作哪家便宜seo关键词分析
  • 成都建站哪家好郑州seo外包服务
  • 平台网站建设需要什么技术手机百度一下百度
  • 网站暂停怎么做重庆小潘seo
  • 网站建设公司yu如何给公司做网络推广
  • 长沙的汽车网站建设今天最近的新闻
  • 焦作网站建设的公司哪家好北京谷歌seo公司
  • 头条滚动 wordpress优化营商环境发言材料
  • 政府网站建设培训心得google图片搜索
  • 云南seo整站优化报价云南seo公司
  • 长沙网站建设公司排行榜百度网盘seo优化
  • 开网站 主机 服务器sem seo
  • 水果网站模版怎样注册自己的网站
  • 泌阳县网站建设怎样免费给自己的公司做网站
  • 做网站多长时间精准引流获客软件
  • 毕业设计购物网站开发的意义百度竞价托管外包代运营
  • 微信小程序开发大赛单页网站seo如何优化
  • 郴州信息港好看的seo网站
  • 厦门网站做优化百度竞价开户联系方式
  • 佛山关键词优化服务班级优化大师官方免费下载
  • 四川建设主管部门网站哪些网站推广不收费
  • 服务器在境外为华人服务茶叶seo网站推广与优化方案
  • 对网站的界面设计分析搜索引擎优化好做吗
  • 湖南省住建厅官方网站建设干校seo站外推广
  • 服务性网站建设的原则生哥seo博客
  • 投资 公司 网站模板游戏代理平台
  • 服装网站建设策划书竞价销售是什么意思
  • 什么网站做网页好18款禁用软件黄app免费