java 基础知识总结点

1、环境变量都需要配置什么变量?

JAVA_HOME、PATH(Path)、CLASSPATH


2、查看JDK的命令

java –version命令,查看jdk版本信息;

java命令,查看java执行信息;

javac命令,查看java编译信息;


3、Java标识符的命名规则?

1)标识符由字母、数字、下划线“_”、美元符号“$”或者

人民币符号“¥”组成,并且首字母不能是数字。

2)不能把关键字和保留字作为标识符。

3)标识符没有长度限制。

4)标识符对大小写敏感。


4、八大基本数据类型(四类八种)分别是什么?

byte、short、int、long、

double、float、char、boolean


5、==和equals的区别?

==:判断两个字符串在内存中的地址(索引);

equals()比较的是内容相同则就相等;


6、String的默认方法有哪些?(5个)

concat()字符串连接、replace,replaceAll字符串替换、

split()字符串拆分、indexOf获取字符串下标、

substring字符串截取、


7、StringBuffer和StringBuilder有什么区别?.

StringBuffer是线程安全的,StringBuffer对象是可以更改的,

必须用new来创建。StringBuffer的意思是只能在一个时刻让

一个线程去访问他,线程安全的。

StringBuilder线程不安全的,


8、java里边的运算符可以分成几类?

算术运算符--就是进行一些算术运算的,像一些加减乘除;

位运算符是--对二进制进行运算的;10----〉010010

比较运算符--就是比较大小,大于小于等于  等等;

逻辑运算符--就是对真和假,布尔类型进行运算的。


9、什么是字符串?

在java语言中由多个字符拼接成为一整串的完整字符

,叫字符串。


10、单精度浮点型(float)和双精度型(double )浮点型区别?

单精度浮点型(float )专指占用32位存储空间的单精度值。

缺点:当值很大或很小的时候,它将变得不精确。

double 占用64位的存储空间。更精准;


11、流程控制语句包括哪些分类?

  顺序流程、分支流程、循环流程


12、分支流程语句包括哪些?

if else、switch case


13、循环语句包括哪些?

while、do…while、for


14、break、continue区别?

break强行退出循环。

continue终止某次循环过程。


15、数组是什么?

数组是相同数据类型元素的集合。数组本身是引用数据类型,

即对象。但是数组可以存储基本数据类型,也可以存储引用

数据类型。


16、数组和String长度分别任何获取?

数组:length属性

String : length()方法


17、面向对象语言的特征?

封装、继承、多态


18、什么是对象?

万物皆对象,具有属性和行为的一切事物均可称为对象;


19、什么是类?

类是具有共同属性和行为的对象的集合;


20、类的基本结构是什么?

属性、方法、构造方法(构造函数)、内部类:、块;


21、什么是封装?

(1)封装性是一种信息隐藏技术。将类的某些信息隐藏在类内部,

不允许外部程序直接访问,而是通过该类提供的方法来实现对

隐藏信息的操作和访问。

(2)是指隐藏对象的属性和实现细节,仅对外提供公共访问方式。


22、封装的好处是什么?

隐藏实现细节,提供公共的访问方式

提高了代码的复用性

提高安全性。


23、什么是包?package

包是物理上的文件夹


24、什么是继承?extends

继承是父类和子类之间的关系,子类可以扩展一些新的属性和行为。


25、分别阐述重载和重写??

重载:同类中的同名方法,参数类型,参数个数不同

重写:继承关系中出现的,方法名,修饰符都相同,

代码块内部内容不同


26、多态的含义是什么?

对外的表现形式只有一种,但是内在却有多种的实现。


27、多态性主要有三种具体的体现分别是什么?

分别是方法重载、方法覆盖和方法的多态参数。


28、abstract类的作用?

作用就是定义子类的共同特征,但是他却不能够创建对象。


29、抽象类和抽象方法的关系?

抽象类里不一定有抽象方法,但是有抽象方法的类一定是抽象类。


30、重载和重写的区别?

方法的重载发生在同一个类中,是方法的参数个数或种类

顺序不同,方法名相同。

方法的重写是发生在不同的类之间,方法名,参数,修饰符必须相同,

子类中的权限不能小于父类的权限


31、访问权限修饰符有哪些?

public :公共权限

protected:受保护的权限

default:同包权限

private:私有权限


32、static可以修饰什么?final能够修饰什么?

final能够修饰类、属性、方法和局部常量。

static可以修饰属性、方法、块和内部类。


33、Object类的作用和地位?

Object他是API里边提供的一个类,他是所有的父类。


34、接口是什么?

接口其实就是特殊的抽象类。


35、接口里有什么?implements

一、静态的常量、二、抽象的方法,

接口中不能够有变量,也不能够有具体的方法。


36、接口和继承的区别?

一个类只能继承一个类,而一个类可以实现多个接口。


37、异常的结构?

Throwable|异常的父类

Errow|错误

Exception|异常


Exception是异常,Error是错误。


38、运行期异常和编译期异常分别是什么?

运行期异常就是在编译的时候程序并不会认为他是一个错误,

但是在运行的时候如果发现这代码有异常错误就会抛出异常。

编译期异常是java文件在编译成.class时程序出现的错误异常。


39、如何捕获异常?

try{}catch(Exception e){}


40、如何抛出异常?

throws


41、什么是IO编程?

输入和输出我们简称叫I/O,I是input,O是output。

程序与外部设备或其他计算机进行交互的操作。


42、输入流输出流分别包含什么?

输入流:InputStream、Reader

输出流:OutputStream、Writer


43、字节流和字符流的区别以及作用?

InputStream和OutputStream的子类都是字节流;

可以读写二进制文件,主要处理音频、图片、歌曲、

字节流,处理单元为1个字节。


Reader和Writer的子类都是字符流;

主要处理字符或字符串,字符流处理单元为2个字节。


44、File类的常用方法?(5个)

createNewFile、renameTo、mkdir、mkdirs、delete

exists、isFile、isDirectory、isHidden、isAbsolute


45、获取当前系统时间的代码是什么?

Date d = new Date();


46、设置时间格式的类是什么类?

SimpleDateFormat


47、泛型是什么意思?

在定义的时候不指定具体的类型,把类型当做

一种参数,在运行的时候再指定具体的类型;


48、泛型类如何定义?

public class 类名


49、节点流中常用类有哪些? 

-字节输入流FileInputStream  

-字节输出流FileOutputStream  

-字符输入流FileReader  

-字符输出流FileWriter


50、如何关闭流?

调用close方法关闭。


51、什么是集合?

集合是java常用的类,集合用来存储数据,

集合是存储数据的容器,如同数组一样可以用来存储数据。


52、集合和数组的区别?

(1)集合可以存储键值对映射关系数据,数组不可以。

(2)集合的长度可以动态改变,数组的长度运行时固定不可变。

(3)集合存储的数据为引用类型数据,如果集合存储基本类型

     数据也会自动装箱转为包装类存储到集合。数组可以存储

     基本类型和引用类型数据。

(4)集合支持多种数据存储结构类型,数组不支持。


53、集合体系是什么?

List和Set继承Collection接口。

LinkedList、ArrayList、Vector实现List接口。

TreeSet和HashSet实现Set接口。

HashMap、HashTable、TreeMap实现Map接口。


54、ArrayList和LinkedList的区别?

ArrayList:增删慢,查询快。

LinkedList:增删快,查询慢。


55、Set集合的特点有什么?

(1)无顺存储数据,存入与取出不一致。

(2)元素不可重复。


56、linkedhashset和hashset有什么区别?

LinkedHashSet继承了hashSet,在HashSet已有的特征上,

扩展了链式结构,保证了存入的顺序与取出的顺序一致

因为LinkedHashSet在保存的时候还要维护链式结构,

效率上比HashSet慢。


57、TreeSet集合的特点是什么?

通过二叉树结构进行存储元素,TreeSet集合需要自定义

排序规则进行排序。


58、TreeSet集合存储元素时,实现排序的方式有什么?

定制排序和自然排序。


59、什么是自然排序?

实现Comparable接口,重写CompareTo比较方法,

在CompareTo方法中定义排序规则。


60、什么是定制排序?

实现Comparator接口,重写CompareTo比较方法,

在CompareTo方法中定义排序规则。


61、多线程的好处是什么?

可以同时并发执行多个任务,可以最大限度的减低CPU的闲置时间,

从而提高CPU的利用率。


62、Java语言创建线程的两种方法?

继承Thread类,重写run()方法;

实现Runnalbe接口,重写run()方法。


63、启动线程的方法是什么?

start();


64、线程的生命周期是什么?

新建(New)、就绪(Runnable)、运行(Running)、

阻塞(Blocked)、死亡(Dead)五个阶段。


65、线程同步的意思是什么?

是“排队”:几个线程之间要排队,一个一个对共享资源进行操作,

而不是同时进行操作。


66、线程同步锁关键字

synchronized


67、线程同步的两种方式是什么?

方式1:同步代码块。

方式2:同步方法。


68、什么是死锁?

程序出现无限等待,这种现象我们称为死锁。


69、等待唤醒机制的方法有什么?

wait()等待:将正在执行的线程释放其执行资格和执行权,

将执行该方法的线程出于等待状态。

notify()唤醒:唤醒某个锁上等待的一个线程。

notifyAll()全部唤醒:唤醒某个锁上全部等待的线程。


70、线程睡眠是什么?

sleep()方法,设置固定睡眠时间

自动唤醒线程,进入就绪状态。



当然这只是一部分  还有很多   这些基本上都是必须知道的  最好记在心里。

你可能感兴趣的:(java 基础知识总结点)