我的java学习笔记(20)关于框架概述

1.在java中,顶层窗口即没有包含在其他窗口中的窗口被称为框架。

2.在AWT库中有一个称为Frame的类,用于描述顶层窗口,这个类的Swing版本名为JFrame,它扩展于Frame类。

3.JFrame是极少数几个不绘制在画布上的Swing组件之一。因此,它的修饰部件由用户的窗口系统绘制,而不是由Swing绘制。

实例代码

测试类

import java.awt.*;
import javax.swing.JFrame;

public class test {
	public static void main(String[] args)
	{
		EventQueue.invokeLater(new Runnable()
		{
			public void run()
			{
				SimpleFrame f = new SimpleFrame();
				f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
				f.setVisible(true);
			}
		});
	}
}

功能类

import javax.swing.JFrame;

public class SimpleFrame extends JFrame{
	private static final int DEFAULT_WIDTH = 300;
	private static final int DEFAULT_HEIGHT = 200;

	public SimpleFrame()
	{
		setSize(DEFAULT_WIDTH,DEFAULT_HEIGHT);
	}
}

输出结果

4.Swing类位于javax.swing包中,包名javax表示这是一个java扩展包,而不是核心包。

5.所有的Swing组件必须由事件分派线程进行配置,线程将鼠标点击和按键控制转移到用户接口组件。

6.简单的构造框架是不会自动的显式出来的,框架期初是不可见的。可一直在显式前的这个阶段绘制框架的组件。

7.上面的程序在主函数main结束后并没有退出,是因为main结束主线程终止了,时间分派线程保持程序处于激活状态,直到关闭框架或调用System.exit方法终止程序。

时间: 2024-10-09 00:09:05

我的java学习笔记(20)关于框架概述的相关文章

【Java学习笔记】集合框架Ⅱ

迭代 ●迭代是取出集合中元素的一种方式. ●因为Collection中有iterator方法,所以每一个子类集合对象都具备迭代器. ●用法: 第一种 for (iterator iter=iterator(); iter.hasNext();) //老外比较喜欢用这种,省内存(iter的内存),开发时用这个 { System.out.println(iter.next()); } 第二种 Iterator iter = l.iterator(); while(iter.hasNext()) {

我的java学习笔记(21)关于框架定位

1.AWT和Swing中框架和组件类的继承层次. 2.组件类的很多方法是以获取或设置方法对形式出现的. public String getTitle(); public void setTitle(Stirng title); 3.对于类型为boolean的属性,获取方法由is开头. public boolean isLocationByPlatform(); public void setLocationByPlatform(boolean b); 4.如果没有明确地指出指定框架的大小,所有框

【Java学习笔记】<集合框架>对字符串进行长度排序

1 package 测试; 2 3 import java.util.Comparator; 4 5 public class ComparatorByLength implements Comparator { //定义比较器 6 7 @Override 8 public int compare(Object o1, Object o2) { 9 String s1 = (String)o1; 10 String s2 = (String)o2; 11 12 int temp = s1.len

【Java学习笔记】<集合框架>TreeSet,Comparable,Comparator

1 public class Person implements Comparable{ 2 private String name; 3 private int age; 4 5 public Person(){ 6 super(); 7 } 8 public Person(String name, int age) 9 { 10 super(); 11 this.name = name; 12 this.age = age; 13 } 14 15 16 @Override 17 public

【Java学习笔记】<集合框架>使用LinkedList来模拟一个堆栈或者队列的数据结构

1 import java.util.LinkedList; 2 3 public class Test5 { 4 5 public static void main(String[] args) { 6 7 Duilie dl = new Duilie(); 8 9 dl.myAdd("abc1"); 10 dl.myAdd("abc2"); 11 dl.myAdd("abc3"); 12 dl.myAdd("abc4");

【Java学习笔记】<集合框架>Iterator的子接口ListIterator

1 import java.util.ArrayList; 2 import java.util.Iterator; 3 import java.util.List; 4 5 public class Test3 { 6 7 public static void main(String[] args) { 8 List list = new ArrayList(); 9 10 list.add("abc1"); 11 list.add("abc2"); 12 lis

【Java学习笔记】集合框架Ⅰ

集合类的由来: 对象用于封装特有数据,对象多了需要存储,如果对象的个数不确定. 就使用集合容器进行存储. 集合特点: 1.用于存储对象的容器. 2.集合的长度是可变的. 3.集合中不可以存储基本数据类型值. 集合容器因为内部的数据结构不同,有多种具体容器,不断向上抽取,就形成了集合框架. 框架的顶层是Collection接口. Collection的常见方法: 1.添加 boolean  add(Object obj); boolean  addAll(Collection coll); 2.删

Java学习笔记20

Objects是Java 7新增的一个工具类,它提供了一些工具方法来操作对象,这些工具方法大多是"空指针"安全的. Objects实现的方法如下: 关于compare(T,T,Comparator<? super T>)方法在源码中是如何定义的: public static <T> int compare(T a, T b, Comparator<? super T> c) { return (a == b) ? 0 : c.compare(a, b

Java学习笔记20(String类应用、StringBuffer类、StringBuilder类)

1.获取指定字符串中大小写和数字的个数: package demo; public class StringTest { public static void main(String[] args) { getCount("IamHandsome666"); } public static void getCount(String str) { int upper = 0; int lower = 0; int digit = 0; for (int i = 0; i < str