刷点面试题

/**
 * 1.死锁、活锁、饥饿
 * 死锁:互相占用资源,互相等待释放,阻塞假死
 * 活锁:主动将线程释放给别的线程使用,资源跳动不被执行
 * 饥饿:优先级高的线程抢占优先级低线程的资源,最后等待可获得执行权
 * 无锁:不断尝试修改共享资源
 * 2.原子性:同一时间只有一个线程对一个变量进行操作
 * 可见性:共享变量,多线程修改后的值是否可见
 * 有序性:指令重排只会保证当前线程执行结果一致
 * 3.线程池可限制系统中执行线程的数量
 * 4.线程池优点:减少创建和销毁线程的次数,防止内存消耗过多。
 * 线程池接口ExecutorService
 * 6.JVM.跨平台,守护线程和普通线程
 * 7.main方法是入口,参数String[]类型不能改变
 * 9.main静态,JVM无须实例化类,非静态可编译成功,但运行失败。可重载,静态方法无法被覆盖
 * public不可改,void不能改,可用synchronized同步,可终结
 * 18.抽象类可继承有明确构造函数的实体类
 * 19.static变量值不随函数执行结束而消失,下次调用同意函数时,上次赋予的值仍存在
 * 20.select name from stu group by name having min(score)>80
 * 21.delete from table where id not in (select min(id) from table group by num,name,course)
 * 22.select
    (case when 语文>=80 then '优秀' when 语文>=60 then '及格' else '不及格' end) as 语文,
    (case when 数学>=80 then '优秀' when 数学>=60 then '及格' else '不及格' end) as 数学,
    (case when 英语>=80 then '优秀' when 英语>=60 then '及格' else '不及格' end) as 英语
     from course
   create table stu(num int,name varchar(8),age int,sex varchar(4),address varchar(50),phone int);
   alter table stu add xueli varchar(6);
   alter table stu drop address;
   insert into stu values(1,'A',22,'男',123456,'小学'),
    (2,'B',21,'男',119,'中学'),
    (3,'C',23,'男',110,'高中'),
    (4,'D',18,'女',114,'大学');
    update stu set xueli='大专' where phone like '11%';
    delete from stu where  sex='男' and name like 'c%';

 */

你可能感兴趣的:(常用)