黑马程序员_编程杂集

来源:互联网 发布:淘宝女装店铺公告 编辑:程序博客网 时间:2024/05/16 08:34

---------------------- android培训、java培训、期待与您交流! ----------------------

请列出objBtn_actionPerformed执行时的各语句执行顺序
void objBtn_actionPerformed(ActionEvent e)
{
Child child=new Child();
}
class Base
{
1 int i=0;
2 Other baseOther=new Other(“init Base Other”);
3 private static int x=1;
public Base()
{
4 System.out.println(“Init Base”);
}
}
 
class Child extends Base
{
5 int a=0;
private static int z=9;
6 Other childOther=new Other(“init Child Other”);
7 private static int y=2;


public Child()
{
8 System.out.println(“init Child”);
}
}


程序执行顺序:37124568  
总结程序流程:
加载class路径->static变量初始化->static块->进入子类构造函数->进入父类构造函数->父类虚方法下传->子类非static变量声明并清空相应的内存空间->多态机制,子类同名函数调用->父类构造函数退出->子类非static变量赋值->子类非static块调用->子类构造函数退出->对象构造完成



在计算机内,定点数有3种表示法:原码、反码和补码 
所谓原码就是前面所介绍的二进制定点表示法,即最高位为符号位,“0”表示正,“1”表示负,其余位表示数值的大小。 
反码表示法规定:正数的反码与其原码相同;负数的反码是对其原码逐位取反,但符号位除外。 
补码表示法规定:正数的补码与其原码相同;负数的补码是在其反码的末位加1 (负数补码是原码减1后取反)
计算存储的是补码 
129的原码int(00000000 00000000 00000000 10000001)正数反码、补码相同 
强制转成byte 留下最低8位10000001(一个负数的补码形式) 
负数的补码=原码取反+1 
》》》》 
原码=(负数补码-1)取反 
?=(10000001-1)取反=(10000000)取反=11111111=-127           注意取反的时候符号位不变
原码减1后取反=原码取反+1 


class Students implements Comparable { xxxxxx}//根据特定内容比较,实现Comparable接口
public int compareTo(Object o)//实现接口中的方法以实现特定内容的比较
{
Students s = (Students)o;
int x=((Double)record).compareTo((Double)(s.getRecord()));//比较分数
return x!=0?x:((Integer)age).compareTo((Integer)(s.getAge()));//相同分数下比较年龄
}


单例//一个枚举类中只有一个枚举元素,也是一种单例
public class singleton(){
private single(){}
private static singleton instance = new singleton();
public static singleton getInstance(){
return instance;
}
}
单例优化:
public class Singleton { //省略构造函数
  private static Singleton instance = null;
  public static synchronized Singleton getInstance() {
    if (instance==null)

                instance=new Singleton();

                return instance;




创建一个窗口好的办法是继承Frame
import java.awt.*;
public class ChatClient extends Frame{
public static void main(String[] args){
new ChatClient().launchFrame();
}
public void launchFrame(){
setLocation();
this.setSize();
setVisible();
}
}


子类对象指向父类引用
Collections collection = new ArrayList();
使用灵活

public class X extends Thread implements Runnable{}

public class Test
{
public static void main(String[] agrs)
{
double x = 1.234;   //1
double y = 2;   //2
System.out.println(""+x+y);   //3
System.out.println(x+y+"");   //4
}
}
编译通过,执行时在//3处打印出1.2342.0,在//4处打印出3.234。



 ---------------------- android培训、java培训、期待与您交流! ----------------------

 详细请查看:http://edu.csdn.net/heima