1、java对象内存大小分配
Object o=new Object():
在java中空对象占八个字节,对象的引用占四个字节。所以上面那条语句所占的空间是4byte+8byte=12byte.java中的内存是以8的倍数来分配的,所以分配的内存是16byte.
举个例子:
Class O{
int i;
byte j;
String s;
}
其所占内存的大小是空对象(8)+int(4)+byte(1)+String引用(4)=17byte,因要是8的整数倍,所以其占大小为24byte.
当然,如果类里有其他对象的话,也要把其他对象的空间算进去。 2、applet使用
- public class TestApplet extends Applet {
- /**
- *
- */
- private static final long serialVersionUID = 1L;
- @Override
- public void destroy() {
- super.destroy();
- System.out.println("destroy");
- }
- @Override
- public void init() {
- super.init();
- System.out.println("init");
- }
- @Override
- public void start() {
- super.start();
- System.out.println("start");
- }
- @Override
- public void stop() {
- super.stop();
- System.out.println("stop");
- }
- }
在页面中使用:
- <applet code="TestApplet.class" width="600" height="400">
- </applet>
测试:appletviewer TestApplet.html或打开页面
【注意】appletviewer为java安装目录bin下存在的可执行文件
3、Awt
- Frame frame = new Frame("hello");
- frame.setBackground(Color.RED);
- frame.setLocation(200, 200);
- frame.setSize(new Dimension(600, 400));
- Button button1 = new Button("mybutton1");
- Button button2 = new Button("mybutton2");
- Button button3 = new Button("mybutton3");
- Button button4 = new Button("mybutton4");
- Button button5 = new Button("mybutton5");
- //设置各位置的间隔
- frame.setLayout(new BorderLayout(11, 11));
- //frame.setLayout(new CardLayout());
- //frame.setLayout(new GridLayout(1,1,1,1));
- frame.add(button1, "North");
- frame.add(button2, "South");
- frame.add(button3, "West");
- frame.add(button4, "East");
- frame.add(button5, "Center");
- frame.addWindowListener(new WindowAdapter() {
- @Override
- public void windowClosing(WindowEvent e) {
- System.exit(0);
- }
- });
- frame.setVisible(true);
4、Swing
5、
Java 竖线|的转义符 是 "\\|"
String a = "a|b|c|d";
String[] b = a.split("\\|");//直接使用a.split("|")是错误的
for(int i=0;i<b.length;i++){
System.out.println(b[i]);
}
6、格林尼治时间
取当年的第一天
- //取年的1.1日为基准,默认缓存1年,可配
- Calendar calendar = Calendar.getInstance(TimeZone.getTimeZone("Etc/Greenwich"));
- int years = calendar.get(Calendar.YEAR);
- calendar.clear();
- calendar.set(Calendar.YEAR, years);
- long startCacheTime = calendar.getTime().getTime();
- response.setDateHeader("Last-Modified", startCacheTime);
- response.setDateHeader("Expires", startCacheTime + UnicornConstant.EXPIRETIME
- * 1000L);
- response.setHeader("Cache-Control", "max-age=" + UnicornConstant.EXPIRETIME);
返回时设置文档的类型:
js类型:response.setContentType("application/x-javascript");
css类型:response.setContentType("text/css");
7、流失的时间
long startTime = System.nanoTime();
// ... the code being measured ...
long estimatedTime = System.nanoTime() - startTime;
8、对象数组初始化
先定义数组大小,再一个一个初始化
expClass[] array = new expClass[4];
for (int i = 0;i < 4; i++) {
array[i] = new expClass(i,i);
}
9、时间的比较
Date a;Date b;假设现在你已经实例化了a和ba.after(b)返回一个boolean,如果a的时间在b之后(不包括等于)返回trueb.before(a)返回一个boolean,如果b的时间在a之前(不包括等于)返回truea.equals(b)返回一个boolean,如果a的时间和b相等返回true