Eclipse 是目前功能比较强大的JAVA IDE(JAVA编程软件),是一个集成工具的开放平台,而这些工具主要是一些开源工具软件。在一个开源模式下运作,并遵照共同的公共条款,Eclipse 平台为工具软件开发者提供工具开发的灵活性和控制自己软件的技术。 Eclipse已经围绕着免版权费技术和通用平台,为工具集成开发形成了一个独立的开放的“生态系统”。以Eclipse为基础的工具允许开发者自由选择语言,平台和厂商环境。 Eclipse提供了一个以插件为基础的框架,让你可以轻松创建,集成和使用工具软件,节省了大量时间和金钱。通过合作和一体化开发核心技术,软件工具开发者可以利用平台的重复使用功能,专注于核心技术,创建新的开发技术。 JBuilder, Eclipse, Neebeans 是3种应用比较普遍的Java开发的平台,如果你以后想走java这条路,最好学会EcLIPSE。jcreator功能太简单,不好用,JBUILDER太庞大,不好学。查看Eclipse快捷键指南。 Eclipse的平台是基于Java语言编写,并包含大量的插件创建工具以及实例。它已经在大范围的开发工作站上应用,包括Linux,HP-UX,AIX,Solaris,QNX,Mac OS X,以及Windows平台的系统。 "分享一个在Java中反射获取私有构造函数、属性、方法" 我一直以为类的私有构造函数、属性、方法除了类自身其他类是无法访问的,前几天正好学习Spring框架,在学习Spring框架基础 Bean包时,写了一个简单的例子,类似如下: package study.spring.bean; public class SimpleBean { private String beanName; private SimpleBean() { System.out.println( " SimpleBean " ); } /** */ /** * @return Returns the beanName. */ public String getBeanName() { return beanName; } /** */ /** * @param beanName The beanName to set. */ public void setBeanName(String beanName) { this .beanName = beanName; } } 发现居然也能调用成功,当时很惊讶,反射机制平时在以前的项目中也常使用,但不能构造只有私有构造函数的类。 自己做了一个简单例子: package study.spring.bean; import java.lang.reflect.Constructor; import java.lang.reflect.InvocationTargetException; public class SimpleTest { /** *//** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub try { Constructor[] cts=Class.forName("study.spring.bean.SimpleBean").getDeclaredConstructors(); for(int i=0;i<cts.length;i++){ cts[i].newInstance(null); } } catch (SecurityException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (ClassNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IllegalArgumentException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (InstantiationException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IllegalAccessException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (InvocationTargetException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } 也是如我所想 抛出java.lang.IllegalAccessException异常,当时就怀疑Spring框架是否使用反射的一些特性,后来查了相关文档才知 道原因何在: 实际上java在反射创建一个类的实例时,默认会检测是否符合相关安全,该检测开关可以关闭。 Constructor、Field、Method都是继承于AccessibleObject,对应实例调用 setAccessible(true)就关闭该开关 如上面的例子,在代码 cts[i].newInstance(null);行前调用上述方法: cts[i].setAccessible(true); 这样就可以创建只有构造函数的实例、调用私有构造方法,访问类的私有属性。 呵呵,这样好像java安全性就大大降低.如果你非常注重应用的安全性,java当然考虑到这方面,你可以在JVM启动参数增加 -Djava.security.manager 启用安全管理器,如果有该参数,它将检测正在关闭接入检测的代码是否许可了这样做,上述代码执行时会抛出 java.security.AccessControlException异常。 评论对您是否有帮助? 是 是 否 否 浏览数: 1,694 更新日期: 2010年 05月 27日 小妮妮小 你认为Eclipse怎么样? 你认为怎么样? 提交您的评论 在下一步,您可以分享您的评论 所有评论
- niou88662014-05-15晕,就一个种子呀,还要五分,真不值。
- 粉丝: 0
- 资源: 1
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 智能笔项目源代码全套技术资料.zip
- 在线考试系统项目源代码全套技术资料.zip
- 高等数学学习资料合集 高等数学(工本)mind
- 西门子V90效率倍增-伺服驱动功能库详解简易循环功能库之Homing-V90PN.mp4
- 自考04741计算机网络原理真题及答案及课件
- 基于STM32芯片开发 安防系统 完整作品
- 4_base.apk.1
- 学生导师双选系统项目源代码全套技术资料.zip
- 自考02318《计算机组成原理》试题及答案 2014-2018及课件
- 图书管理系统,仅供参考
- 数据科学与大数据毕业设计系统项目源代码全套技术资料.zip
- 全国自考02197概率论与数理统计(二)试题及答案2014-2019
- CHGCOLOR压缩包
- 多轮自动红队方法提升大语言模型安全性
- python语言kssp爬虫程序代码XQZQ.txt
- 亲测源码云赏V7.0微信视频打赏系统源码已测试完整无错版