Java选择题知识点整理系列(二)

  • Java中的四类八种基本数据类型
    第一类:整数类型  byte short int long
    第二类:浮点型  float double

    第三类:逻辑型    boolean(它只有两个值可取true false)

    第四类:字符型  char

  • 在java中标识符可以包括这4种字符:字母、下划线、$、数字;开头不能是数字;不能是关键字。例如:var3&是错误的,不能与&相组合来命名。
  • abstract类的子类也可以是抽象类所以抽象类的子类必须实现其超类的所有抽象方法这句话是错误的。抽象类不能被实例化,无法使用new关键字调用抽象类的构造器创建抽象类的实例,即使抽象类不包含抽象方法,也不能被实例化。
  •   public class HasStatic { // 1
         private static int x = 100 ; // 2
         public static void main(String args[]) { // 3
             HasStatic hsl = new HasStatic(); // 4
             hsl.x++; // 5
             HasStatic hs2 = new HasStatic(); // 6
             hs2.x++; // 7
             hsl = new HasStatic(); // 8
             hsl.x++; // 9
             HasStatic.x--; // 10
             System.out.println( " x=" + x); // 11
         }
    }这段代码输出的结果是 x=102.同一个类内,private变量可以访问,由于x是static的,存贮在类内,而不是对象内,所以++、--操作的是同一个变量。创建两个对象调用只是障眼法,其实调用的是同一个变量。
  • vector是线程安全的ArrayList,在内存中占用连续的空间。初始时有一个初始大小,当数据条数大于这个初始大小后会重写分配一个更大的连续空间。如果Vector定义为保存Object则可以存放任意类型。所以不必事先知道vector所存储数据对象的类型。在java中可以用Exception抛出一些并非错误的消息,但这样比直接从函数中返回一个结果要更大的系统开销。在接口中可以包含数据成员,但是这些数据成员必须是常量,public final static,一旦声明不可改变。
  • A,Java 并发库 的Semaphore 可以很轻松完成信号量控制,Semaphore可以控制某个资源可被同时访问的个数,通过acquire() 获取一个许可,如果没有就等待,而 release() 释放一个许可。
    B,CyclicBarrier 主要的方法就是一个:await()。await()方法没被调用一次,计数便会减少1,并阻塞住当前线程。当计数减至0时,阻塞解除,所有在此 CyclicBarrier 上面阻塞的线程开始运行。
    C,直译过来就是倒计数(CountDown)门闩(Latch)。倒计数不用说,门闩的意思顾名思义就是阻止前进。在这里就是指CountDownLatch.await() 方法在倒计数为0之前会阻塞当前线程。
    D,Counter不是并发编程的同步器
  • 接口中的方法默认是public,不能用private修饰
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值