JAVA基础: 
选择题:
1:
public class A{
Static {
System.out.println(“1”);
}
A(){
System.out.println(“2”);
}
}
public class B extends A {
static {
System.out.println(“a”);
}
B (){
System.out.println(“b”);
}
}
public static void main(String[] args){
A ab = new B();
  Ab= new B();
}
请问输出什么?
答案:
2.1a2b;
2b
……
判断题:
……
解答题:
1.谈谈COOkIE,session,和他们之间的区别。
2.String 是基本类型吗?基本数据类型有那些,请列举。Int,Integer的区别?
3.多线程有那几种实现方法,同步是如何实现的?
5.在多线程中,锁是什么?
6.堆栈和队列是有什么区别,请用JAVA实现?
编程题:
1.冒泡排序?
2.对于大量数据的列表显示分页如何处理?请给出SQL语句?
数据库题:产品表1(P)
Pid() Pname price
1 N1 110
2 N2 220
3 N3 330
4 N4 440
销售表2(B)
PID DN(下单人) DNUM PRICE
2 m 2 250
1 n 3 110
3 n 1 300
4 m 2 400
问题一: 是否能删除产品表N2?说明理由和过程
问题二: 将销售列表中的m客户的产品名为n2的销售单价更换成产品表中的相应的单价
问题三: 求销售计划表中各个客户各自的销售金额的SQL 语句
问题四: 求客户中销售总量最大的销售总金额的客户的SQL语句

解决方案 »

  1.   

    String 是基本类型吗?基本数据类型有那些,请列举。Int,Integer的区别?String不是基本类型,基本类型有int,long,byte,short,boolean,float,doubleJava 提供两种不同的类型:引用类型和原始类型(或内置类型)。Int 是java
    的原始数据类型,Integer 是java 为int 提供的封装类.
      

  2.   


    编程题: 对于大量数据的列表显示分页如何处理?请给出SQL语句? 
    堆栈和队列是有什么区别,请用JAVA实现? 
      

  3.   

    6.堆栈和队列是有什么区别,请用JAVA实现? 
    区别不讲了 很简单的  栈LIFO 队列FIFO我这里有一个栈的实现。使用栈来保存临时的两个值。这2个值是2分法里面的头结点和末结点。
      

  4.   

    我也是刚刚学会的 共享了
    private class Record
    {
      private int first, last;
      
      private Record(int firstIndex, int lastIndex)
      {
        first = firstIndex;
        last = lastIndex;
      } // end constructor
    } // end Record
      

  5.   

    private boolean binarySearch(int first, int last, T desiredItem)
    {
      StackInterface<Record> programStack = new LinkedStack<Record>();
      boolean found = false;
      boolean done = false;
      
      programStack.push(new Record(first, last));
      
      while (!done && !programStack.isEmpty())
      {
        Record topRecord = programStack.pop();
        first = topRecord.first;
        last = topRecord.last;
        int mid = (first + last)/2;
        
        if (first > last)
        {
          found = false;
          done = true;
        }
        else if (desiredItem.equals(list[mid]))
        {
          found = true;
          done = true;
        }
        else 
        {
          if (desiredItem.compareTo(list[mid]) < 0)
            programStack.push(new Record(first, mid - 1));
          else
            programStack.push(new Record(mid + 1, last));
        } // end if
      } // end while
      
      return found;
    } // end binarySearch
      

  6.   

    第一题选择题 答案是:1a2b 执行的顺序是父类static{}代码块,子类static代码块,但new B()的时候要调用B的构造方法,但是先调用父类的构造方法A();
    int 和Interger 的区别:
    1:int是基本数据类型,interger是引用类型,它是Int的包装类
    2:他们在内存中存放的位置不同,int位于栈内存中 interger的对象位于堆内存中
    3:默认值不同;int 默认初始值为0.interger默认值为null;
      

  7.   

    .冒泡排序?
    答:
    public class MaoPaoSort
    {
    /**
     * 三种冒泡排序法算法的例子,仅供参考
     * 2007-8-14
     * Tony.liu
     * ITStar.com
     */
     
    public static void main(String[] args)
    {
    //------ 分别调用三种冒泡排序法 ------
    sortA();
    sortB();
    sortC();
    }

    //以下是三个私有方法,注意它们是Static的,因为static方法只能调用static成员
    private static void sortA()
    {
    int num[] = {14,39,24,34,33,43,13,30};
    int itemp,i;

    for (i=0;i<8;i++)
    {
    for(int j=i+1;j<8;j++)
    {
    if (num[i]<num[j])  //如果改为>,则反序排列
    {
    //利用中间变量itemp来交换两个数
    itemp = num[j];
    num[  j  ] = num[i];
    num[  I  ] = itemp;
    }
    }
    }

    System.out.println("These are sorted:\n");
    for(i=0;i<8;i++)
    {
    System.out.println(num[i]);
    }
    System.out.println("\n");
    System.out.println("========================================");
    }

    private static void sortB()
    {
    int num[] = {14,39,24,34,33,43,13,30};
    int itemp,i,j;

    for (i=0;i<8;i++)
    {
    for(j=0;j<8-i-1;j++)
    {
    if (num[j]<num[j+1])
    {
    itemp = num[j];
    num[j] = num[j+1];
    num[j+1] = itemp;
    }
    }
    }

    System.out.println("These are sorted:\n");
    for(i=0;i<8;i++)
    {
    System.out.println(num[i]);
    }
    System.out.println("\n");
    System.out.println("========================================");
    }

    private static void sortC()
    {
    int num[] = {14,39,24,34,33,43,13,30};
    int itemp,i,j;

    for (i=0;i<7;i++)
    {
    for(j=7;j>i;j--)
    {
    if (num[j]>num[j-1])
    {
    itemp = num[j];
    num[j] = num[j-1];
    num[j-1] = itemp;
    }
    }
    }

    System.out.println("These are sorted:\n");
    for(i=0;i<8;i++)
    {
    System.out.println(num[i]);
    }
    System.out.print("\n");
    System.out.println("========================================");
    }
    }2.对于大量数据的列表显示分页如何处理?请给出SQL语句?
    1.select * from 
    (select t.*,rownum row_num from mytable t order by t.id) b 
    where b.row_num between 1 and 10 
    2.
    select top [pagesize] * from table where id not in (select top [pagesize] * (currentPage - 1) id from table [查询条件] order by id) and [查询条件] order by id
    3.根据ROWID来分
    select * from t_xiaoxi where rowid in(select rid from (select rownum rn,rid from(select rowid rid,cid from
    t_xiaoxi order by cid desc) where rownum<10000) where rn>9980) order by cid desc;
    执行时间0.03秒
    4.按分析函数来分
    select * from (select t.*,row_number() over(order by cid desc) rk from t_xiaoxi t) where rk<10000 and rk>9980;
    执行时间1.01秒
    5.按ROWNUM来分
    select * from(select t.*,rownum rn from(select * from t_xiaoxi order by cid desc) t where rownum<10000) where
    rn>9980;执行时间0.1秒
    其中t_xiaoxi为表名称,cid为表的关键字段,取按CID降序排序后的第9981-9999条记录,t_xiaoxi表有70000多条记录
    个人感觉1的效率最好,3次之,2最差