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

xiaoxiao2021-02-28  1

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修饰
转载请注明原文地址: https://www.6miu.com/read-1900224.html

最新回复(0)