龙空技术网

Java基础部分

江南烟雨随风 1090

前言:

如今看官们对“java中颜色重量形状的定义是什么”都比较关切,大家都需要分析一些“java中颜色重量形状的定义是什么”的相关内容。那么小编同时在网摘上搜集了一些对于“java中颜色重量形状的定义是什么””的相关知识,希望看官们能喜欢,姐妹们一起来了解一下吧!

Collection和Collections区别

java.util.Collection 是一个集合接口。它提供了对集合对象进行基本操作的通用接口方法

Collections是针对集合类的一个帮助类,他提供一系列静态方法实现对各种集合的搜索、排序、线程安全等操作

String s=new String(‘xyz’);创建了几个object对象

1.如果String常理池中,已经创建"xyz",则不会继续创建,此时只创建了一个对象new String("xyz");

2.如果String常理池中,没有创建"xyz",则会创建两个对象,一个对象的值是"xyz",一个对象new String("xyz")。

Set里面的元素不能重复,用什么方法区分重复与否。

使用equals()区分

error和exception区别。

Error和Exception的联系

继承结构:Error和Exception都是继承于Throwable,RuntimeException继承自Exception。

Error和RuntimeException及其子类称为未检查异常(Unchecked exception),其它异常成为受检查异常(Checked Exception)。

Error和Exception的区别

Error类一般是指与虚拟机相关的问题,如系统崩溃,虚拟机错误,内存空间不足,方法调用栈溢出等。对于这类错误,Java编译器不去检查他们。对于这类错误的导致的应用程序中断,仅靠程序本身无法恢复和预防,遇到这样的错误,建议让程序终止。

Exception类表示程序可以处理的异常,可以捕获且可能恢复。遇到这类异常,应该尽可能处理异常,使程序恢复运行,而不应该随意终止异常。

运行时异常和受检查的异常

Exception又分为运行时异常(Runtime Exception)和受检查的异常(Checked Exception )。

RuntimeException:其特点是Java编译器不去检查它,也就是说,当程序中可能出现这类异常时,即使没有用try……catch捕获,也没有用throws抛出,还是会编译通过,如除数为零的ArithmeticException、错误的类型转换、数组越界访问和试图访问空指针等。处理RuntimeException的原则是:如果出现RuntimeException,那么一定是程序员的错误。

受检查的异常(IOException等):这类异常如果没有try……catch也没有throws抛出,编译是通不过的。这类异常一般是外部错误,例如文件找不到、试图从文件尾后读取数据等,这并不是程序本身的错误,而是在应用环境中出现的外部错误。

介绍Java中的Collection framework(架构)

Collection

├List

│├LinkedList

│├ArrayList

│└Vector

│ └Stack

└Set

Map

├Hashtable

├HashMap

└WeakHashMap

Collection框架中实现比较要实现什么接口?

Comparable/comparator

heap和stack区别

Stack存取速度仅次于寄存器,存储效率比heap高,可共享存储数据,但是其中数据的大小和生存期必须在运行前确定。

Heap是运行时可动态分配的数据区,从速度看比Stack慢,Heap里面的数据不共享,大小和生存期都可以在运行时再确定。

new关键字 是运行时在Heap里面创建对象,每new一次都一定会创建新对象,因为堆数据不共享。

Java中的异常处理机制的简单原理和应用

java中Throwable这个类可以被作为异常抛出的类,继承它的分为异常Exception和错误Error.

Exception表示程序需要捕捉和处理的的异常;

Error表示系统级别的错误和程序无需处理的。

我们所需要关心的是Exception. Execption可以分为java标准定义的异常和程序员自定义异常2种.

(1)一种是当程序违反了java语规则的时候,JAVA虚拟机就会将发生的错误表示为一个异常.这里语法规则指的是JAVA类库内置的语义检查。

(2)另一种情况就是JAVA允许程序员扩展这种语义检查,程序员可以创建自己的异常,并自由选择在何时用throw关键字引发异常。所有的异常都是Thowable的子类。

垃圾回收的原理和特点,并考虑2种回收机制

1、java语言最显著的特点就是引入了垃圾回收机制,它使java程序员在编写程序时不再考虑内存管理的问题。

2、由于有这个垃圾回收机制,java中的对象不再有“作用域”的概念,只有引用的对象才有“作用域”。

3、垃圾回收机制有效的防止了内存泄露,可以有效的使用可使用的内存。

4、垃圾回收器通常作为一个单独的低级别的线程运行,在不可预知的情况下对内存堆中已经死亡的或很长时间没有用过的对象进行清除和回收。

5、程序员不能实时的对某个对象或所有对象调用垃圾回收器进行垃圾回收。

垃圾回收机制有分代复制垃圾回收、标记垃圾回收、增量垃圾回收。

Java语言如何进行异常处理,throws,throw,try catch finally代表什么意义,try块中可以抛出异常吗

throws是方法可能抛出异常的声明。

throw是语句抛出一个异常。

try是将会发生异常的语句括起来,从而进行异常的处理,

catch是如果有异常就会执行他里面的语句,

而finally不论是否有异常都会进行执行的语句。

可以
静态变量和实例变量的区别?

语法区别:静态变量需要static关键字修饰,实例变量不需要。

程序运行时的区别:静态变量从属于类,实例变量从属于对象。

实例变量必须创建了实例对象,其中的实例变量才会被分配空间,才能使用这个实例变量;

静态变量即类别量,只要程序加载了类的字节码,静态变量就会被分配空间,即可使用。

综上,实例变量必须创建对象后通过这个对象来使用,静态变量可以直接使用类名来引用。

写clone方法,通常都有一行代码。

Clone 有缺省行为,super.clone();他负责产生正确大小的空间,并逐位复制。

Java中如何跳出多重嵌套循环

1. 在最外层循环语句前定义一个标号,循环体内任意位置都可以使用带有标号的break语句跳出外层循环,结束整个循环。

2. 使用boolean变量做flag,作为外层循环体结束的条件,赋予变量带有业务意义的名字

java 中有几种方法可以实现一个线程? 用什么关键字修 饰同步方法? stop()和 suspend()方法为何不推荐使用?

java多线程实现方法主要有3种:继承Thread类、实现Runnable接口和使用ExecutorService、callable、future实现有返回结果的多线程。其中前2方式线程执行完后都没有返回值,只有最后一种有返回值。

用synchronized关键字修饰同步方法

反对使用stop(),是因为它不安全,suspend()方法容易发生死锁。

同步和异步区别。

同步交互:指发送一个请求,需要等待返回,然后才能够发送下一个请求,有个等待过程;

异步交互:指发送一个请求,不需要等待返回,随时可以再发送下一个请求,即不需要等待。

线程同步的方法

同步方法

同步代码块

wait与notify

使用重入锁实现线程同步,ReentrantLock() : 创建一个ReentrantLock实例 ;lock() : 获得锁; unlock() : 释放锁

使用特殊域变量(volatile)实现线程同步

a.volatile关键字为域变量的访问提供了一种免锁机制,

b.使用volatile修饰域相当于告诉虚拟机该域可能会被其他线程更新,

c.因此每次使用该域就要重新计算,而不是使用寄存器中的值

d.volatile不会提供任何原子操作,它也不能用来修饰final类型的变量

喜欢的请点关注

标签: #java中颜色重量形状的定义是什么