本文介绍如何访问java核心包中的包可访问成员。包可访问性的成员和方法指的是在声明成员或方法时没有加public、protected和private等访问修饰词的成员和方法。包可访问性的成员可以被同一个包中的其他类所访问。本文以BorderLayout中的center变量为例,简单介绍如何访问java核心包中的包可访问成员。
1、为了访问BorderLayout中的center变量,我们编写一个AwtHelper类,将其包声明为java.awt,即和BorderLayout所在的包同名。代码如下
package java.awt;
import javax.swing.JButton;
import javax.swing.JFrame;
public class AwtHelper {
public static Component getChild(BorderLayout layout,String key) {
Component result = null;
if(key == BorderLayout.NORTH)
result = layout.north;
else if(key == BorderLayout.SOUTH)
result = layout.south;
else if(key == BorderLayout.EAST)
result = layout.east;
else if(key == BorderLayout.WEST)
result = layout.west;
else if(key == BorderLayout.CENTER)
result = layout.center;
return result;
}
public static void main(String[] args) {
Container container = createTestContainer();
if( container.getLayout() instanceof BorderLayout) {
BorderLayout layout = (BorderLayout)container.getLayout();
Component center = AwtHelper.getChild(layout, BorderLayout.CENTER);
System.out.println("Center Component = " + center);
}
}
public static Container createTestContainer() {
JFrame frame = new JFrame();
Container con = frame.getContentPane();
con.setLayout(new BorderLayout());
con.add(new JButton("Center"),BorderLayout.CENTER);
return con;
}
}
2、将AwtHelper.java 编译后,将该类加入启动类路径 运行命令 java -Xbootclasspath/p:. java.awt.AwtHelper
Center Component = javax.swing.JButton[,0,0,0x0,invalid,alignmentX=0.0,alignment
Y=0.5,border=javax.swing.plaf.BorderUIResource$CompoundBorderUIResource@1adc30,f
lags=296,maximumSize=,minimumSize=,preferredSize=,defaultIcon=,disabledIcon=,dis
abledSelectedIcon=,margin=javax.swing.plaf.InsetsUIResource[top=2,left=14,bottom
=2,right=14],paintBorder=true,paintFocus=true,pressedIcon=,rolloverEnabled=true,
rolloverIcon=,rolloverSelectedIcon=,selectedIcon=,text=Center,defaultCapable=tru
e]
分享到:
相关推荐
DateFormat,Calendar、文件与流、Java变量类型间的相互转换、Java与Web、用连接池提高Servlet访问数据库的效率、Java扩展、应用服务器的集群策略及Java EE 5.0、Java IO 包中的Decorator模式等。
NULL 博文链接:https://mrpengpengda.iteye.com/blog/1536292
主要介绍了Java实现从jar包中读取指定文件的方法,涉及java针对jar文件的读取及查找相关操作技巧,需要的朋友可以参考下
资源分数必须最少填1,不好意思。如果没有积分可以去git链接下载,本人博客有git地址。博客地址:... java 遍历指定包下所有类,返回完整类名。工具类,可以直接拷入使用。
Java标准包中基本常用类和方法.docx
利用swt中的一个获取图片的类SwingResourceManager 来解决将程序打为使用java打包之后,生成的jar包中图片找不着的。这是因为通过class.getResource()方法在IDEA中运行的路径和生成jar包获取的的路径是不同的。打成...
java反射jar包中class,并可进行文件比较
java读JAR包里的配置文件、java读JAR包里的配置文件
博文链接:https://peng-jian-ming.iteye.com/blog/190572
里面包含了很多java常用的包,还包括各种数据库连接的包!
java核心知识点整理,面试很有用 Java核心知识点2.JVM JVM 是可运行 Java 代码的假想计算机 ,包括一套字节码指令集、一组寄存器、一个栈、 一个垃圾回收,堆 和 一个存储方法域。JVM 是运行在操作系统之上的,它...
《JAVA核心技术(卷1):基础知识(原书第8版)》是《Java核心技术》的最新版,《Java核心技术》出版以来一直畅销不衰,深受读者青睐,每个新版本都尽可能快地跟上Java开发工具箱发展的步伐,而且每一版都重新改写了...
SpringMvc的jar包,最小jar包集合,搭建入门的SpringMvc框架。
java.security.acl 此包中的类和接口已经被 java.security 包中的类取代。 java.security.cert 提供用于解析和管理证书、证书撤消列表 (CRL) 和证书路径的类和接口。 java.security.interfaces 提供的接口用于生成...
包中含有一个简单的java工程(eclipse)和一个C++工程(VS2013),C++工程有调用java工程的jar包。我会另外写个文档介绍如何调用jar包,在文档原创文档里,自己找
其中,Main.java中的类使用到StuList.java和Student.java中的成员变量或者成员方法。 本实验中的源程序可以完成如下任务: 创建学生表,从键盘上输入学生信息加入学生表,添加学生信息,删除学生信息,显示学生信息...
主要包含 java.text包中工具类的详细使用;包含源码和字节码。
Java并发工具箱之concurren包总结,帮助你理清并发包,理顺java并发编程!