您的位置:

java中的容器,java中的容器图解

本文目录一览:

JAVA中的JPanel怎么使用呢?

使用方法:

JPanel可以为添加到窗体中的轻型控件提供通用的容器。默认情况下,面板容器不会向控件添加任何除自身背景之外的颜色,但是,可以轻松地向其添加边框(borders)并根据需要改制样式。

在大多数Java GUI外观体验(look and feel)中,面板容器默认是不透明。不透明的面板容器跟普通的目录窗格功能差别不大,并且可以有效帮助样式改进。

设置图层管理器

和其他容器(container)一样,面板容器panel也使用布局管理器(Layout Manager)对添加到容器中的组件(compnent)进行定位和设置尺寸大小。

默认情况下,面板容器的布局管理器是FlowLayout(流式布局)类的一个实例,这个类对放置在容器中的空间按行进行布局(从左到右诸行排列)。在创建面板容器时,你可以轻松地使用任何其他

布局管理器通过调用setLayout方法或指定一个布局管理器。

如下是一个在创建面板容器时设置图层管理器的例子:

JPanel p=new JPanel(new BorderLayout());

但这种方法不能用在BoxLayout(盒子布局)中,因为BoxLayout构造器需要一个预留(pre-existing)容器。如下所示:

JPanel p=new JPanel();

p.setLayout(new BoxLayout(p,BoxLayout.PAGE_AXIS));

添加控件

向面板容器中添加组件时使用add()方法,而向add()方法中传递的参数决定于该面板容器使用哪个布局管理器。当所用的布局管理器是FlowLayout,BoxLayout,GridLayout,或SpringLayout时,像通常那样向add()方法传递单一的参数即可,如下所示:

aFlowPanel.add(aComponent);

aFlowPanel.add(anotherComponent);

而当布局管理器为BorderLayout时,还需要提供另一个参数来指定添加到容器中控件的位置,例如:

aBorderPanel.add(aComponent,BorderLayout.CENTER);

aBorderPanel.add(anotherComponent,BorderLayout.PAGE_END);

对于GridBagLayout布局管理器,可以使用上述任一方法,但必须以某种方式对每个组件指定GridBagConstraints,例如:

JPanel pane=new JPanel(new GridBagLayout());

GridBagConstraints c=new GridBagConstraints();

警告

Swing不是线程安全的。

此类的序列化对象与以后的Swing版本不兼容。当前序列化支持适用于短期存储,或适用于在运行相同Swing版本的应用程序之间进行RMI(Remote Method Invocation,远程方法调用)。

扩展资料:

JPanel一个面板也是一个容器JPanel Pan=new JPanel();

Pan.setLayout(null);//设置为空布局也就是自由布局

Pan.add(控件);//添加控件

JPanel是java图形化界面中最常使用的容器。实例:在窗体中添加一个蓝色的面板

//PanelDemo.java

import javax.swing.*;

import java.awt.*;//引入AWT包,因为要使用到颜色类

class PanelDemo{

public static void main(String[]args)throws Exception

{JFrame f=new JFrame("第一个Java窗口");

f.setSize(300,200);

f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

f.setVisible(true);

f.setResizable(false);

f.setLocationRelativeTo(null);

f.setLayout(null);//设置窗体布局为空布局

JPanel p=new JPanel();//实例化一个面板

//设置面板背景色为蓝色,如果不引入AWT包,程序将出错,可以试试看

p.setBackground(Color.BLUE);

p.setSize(100,100);//设置面板对象大小

f.getContentPane().add(p);//将面板添加到窗体中

//如果使用下面添加面板的方法,面板将布满整个窗口,可以试试看

//f.setContentPane(p);

}

}

参考资料:

百度百科——JPanel

在JAVA中常用的数据结构(容器)有哪些?有什么特点?

JAVA的容器---List,Map,Set

Collection

├List

│├LinkedList

│├ArrayList

│└Vector

│ └Stack

└Set

Map

├Hashtable

├HashMap

└WeakHashMap

Java 中的容器和框架的区别 有哪些

容器是程序运行的整体环境,框架是建立在容器之上的,框架也可以理解为程序,只是为了开发维护方便而写的比较通用的程序。

框架是一个规范,还没有具体实现.等你来搞定,但要按规定的范围内实现你自己需要的东西.容器是已经做好了,能盛东西了.但盛的东西都是按规范做出来的.规范是口头上的,容器已经是实现了的.JBUILDERX就超出了JAVA规范.

什麽是JAVA的容器组件?它有什麽特点?JAVA提供了那些容器组件?

JAVA容器库(container)包含两大组件:Collection和Map.

Collection是一组相互独立的对象的集合.Map是一组KEY--VALUE对应的对象集合.

Collection中又分为两类:一类是List;另一类是Set.Set下还有SortedSet,而Map下有SortedMap.

其下有很多接口和方法,具体的用法请参考官方文档和有关教程,这个不难。

这些接口和方法是构成整个JAVA容器库的最顶层的元素,学习了这些我至少可以使用容器编写一般化的 的程序.这些方法的学习总体来说是比较简单的,但如果要深究其原理也是颇具挑战的,就单单说迭代器的实现,实现机理,也是值得探讨的。抛开这些不说,在类库的设计层面上所也值得我们去研究。

以上为引用。

Java中Web容器

Server只是一种技术。它本身不能单独运行。需要依赖Servlet容器。说通俗点,你要开发Servlet。需要导入Servlet的jar包,然后写代码。但是你写完代码之后不能运行。为什么因为Servlet没有main函数,不能运行。那怎么运行Servlet的代码?依赖Servlet容器啊。Servlet容器里面就有main函数的入口。所以你要把Servlet代码放入到Servlet容器中才能运行。那Servlet容器有哪些?如何放进容器中?

常见的Servlet容器有:tomcat , jetty。

以tomcat为例。我们如何将Servlet代码放入到tomcat中?很简单。如果你用window系统,你下载一个window版的tomcat的zip压缩包。解压后,找到webapps目录。新建一个目录。把你的Servlet代码的class文件代码。web.xml,lib包等原封不动拷贝到这个目录中。然后在tomcat解压目录的bin目录下,找到startup.bat。双击就能启动tomcat。tomcat有main函数。所以tomcat已启动,web容器就启动。当你第一次请求某个Servlet时,Servlet就会被创建,并保存在容器中。

java的容器控件有哪些?

1.顶层容器

什么是顶层容器?当我们使用Java进行图形编程的时候,图在哪里绘制呢?我们需要一个能够提供图形绘制的容器,这个容器就被称为顶层容器,你

也可以把它想象成一个窗口。顶层容器是进行图形编程的基础,一切图形化的东西,都必然包括在顶层容器中。在Swing中,我们有三种可以使用的顶层容器,

它们分别是:

JFrame:用来设计类似于Windows系统中的窗口形式的应用程序。

JDialog:和JFrame类似,只不过JDialog是用来设计对话框。

JApplet:用来设计可以在嵌入在网页中的Java小程序。

如果需要使用Swing制作一个窗口类程序,我们的代码看起来应该是这样:

import javax.swing.*;

public class KyodaiUI

extends JFrame {

……

}

2.控件

控件是构成应用程序界面的基本元素,按钮、文本框、进度条等,这些都是控件。控件(这里我们只讨论可视化控件)又可以分为容器控件和非容器控件。从字面

意义上来理解,容器控件就是能包含其他控件的特殊控件,例如,Java中的JPanel控件就属于容器型控件,我们可以在JPanel中放置按钮、文本框

等非容器控件,你甚至可以在JPanel中再放置若干个JPanel控件(值得注意的是,顶层容器也是容器型控件,每一个窗口应用程序中有且只能有一个顶

层容器控件,换句话说,顶层容器不能包括在其他的控件中)。

Java中的容器控件有很多,除刚才提到的JPanel外,还有

JTabbedPane、JScrollPane等,非容器控件有JButton、JLabel、JTextField等。如果你需要向某个容器型的控件

中添加控件,你可以使用 add(Component comp) 方法来实现,如:

JPanel panel = new JPanel();

JButton button = new JButton();

panel.add(button);

3.边框

虽然我们使用了不同前景色来区别不同的区域,然而却没有层次感,加上边框一定会漂亮许多。

在Java中,所有以J打头的Swing控件都可以使用setBorder方法来为自己设置边框。边框有很多种,线型、凸起、凹下、空的,你甚至可以自

由组合形成个人风格。所有的Border都必须使用javax.swing.BorderFactory中提供的静态方法来创建,比如:

Border border = BorderFactory.createBevelBorder(BevelBorder.LOWERED,

new Color(45, 92, 162),

new Color(43, 66, 97),

new Color(45, 92, 162),

new Color(84, 123, 200));

现在,我们将toolBar.setBackground(Color.white)改为toolBar.setBorder(border),立体效果是不是已经出现了?