java基础总结

开发java程序:

编写源代码 ==> 编译源代码 ==> 执行二进制文件

八种基本数据类型:

byte short int long float double char boolean

八种基本数据类型对应的包装类型:

Byte Short Integer Long Float Double Character Boolean

intInteger的区别:

int: 基本数据类型,表示整数。

Integer: 引用数据类型,有对应的方法,parseInt方法;集合中的元素必须是引用数据类型。所有必须用Integer

final修饰的变量为常量。

i++++i的区别:

i++是先赋值,后运算。

++i是先运算,后赋值。

流程控制的三种结构:

顺序结构、分支结构、循环结构。

switch括号中的表达式可以是什么数据类型:

byte, short, int, char, 枚举,jdk1.7之后可以是String类型。

for循环和while循环适用的场景:

for:有固定循环次数

while:没有固定循环次数

遍历数据的方式:

普通for循环和增强for循环

数组经常遇到的异常:

数组下标越界异常(ArrayIndexOutOfBoundsException)

数据一旦定义,他的长度就固定了。length属性

面向对象三大特征:

封装、继承、多态

封装:把属性私有化,对外提供公共的访问接口。或者是把一段代码封装成方法。

继承:子类继承父类。当已有的数据类型已经不能满足我们的需求,需要对这个类型进行扩展,可以使用继承。

哪些可以被继承:

非私有的属性和方法可以被子类继承

哪些不可以被继承:

私有的属性和方法不可以被子类继承,构造方法也不可以被子类继承

方法的重载和重写的区别:

方法的重载:在同一个类中,方法名一样,参数列表不一样。

参数列表不一样分三种形式:

1. 类型不一样

2. 个数不一样

3. 顺序不一样

方法的重写:出现在子类和父类中,方法名一样,参数列表一样。

子类方法的修饰符不能严于父类。

修饰符 本类中 本包中 子类中 全局

private

friendly 能 能

protected 能 能 能

public 能 能 能 能

 

多态:多种状态,表现为方法的重载,方法的重写。。。简述为父类的引用,子类的对象。

List list = new ArrayList();

List list = new LinkedList();

抽象类:抽象的类,用abstract修饰,抽象类中可以含有抽象方法,也可以含有普通方法;

抽象类不能被实例化。

接口:属于特殊的抽象类。用interface修饰。接口中的属性都是由public static final修饰(静态常量)

接口中的方法都是由public abstract修饰(抽象方法),接口是一种标准。

接口的方法能不能被static修饰 不能

接口中的方法能不能被final修饰 不能

接口的引用,实现的对象

List list = new ArrayList();

异常的五个关键字及其作用:

try: 放置可能发生异常的代码

catch:捕获异常

finally:放置总要执行的代码,无论发不发生异常finally块中的代码始终会被执行

throw:抛出异常

throws:声明异常

集合框架:

Collection

List set map

CollectionCollections有什么区别:

Collection是集合的根接口

Collections是一个操作集合的工具类

遍历List集合的方式:

普遍for循环、增强for循环、迭代器

遍历Set集合的方式:

增强for循环、迭代器

 

List集合和Set集合的区别:

List: 有序的、不唯一的、可以包含多个null值的集合

Set: 无序的、唯一的、可以包含且只能包含一个null值的集合

 

ArrayListLinkedList的区别:

ArrayList: 数组实现,检索效率快

LinkedList: 链表实现,插入和删除效率快

 

Map:是由键值对所组成,键必须唯一,一个键只能包含一个值,

怎么获取Map集合中的所有的键: keySet()

怎么获取 Map集合中的所有的值:values()

entrySet;

 

把字符串反序:

 

 

StringBufferStringBuilder的区别:

StringBuffer:是线程安全的,执行效率慢

StringBuilder: 是线程不安全的,执行效率快

 

产生随机数的公式:

(int)(Math.random() * (- + 1) + )

 

产生小写字母:

int ran = (int)(Math.random() * (122 - 97 + 1) + 97);

System.out.println((char)ran);

 

日期的格式化和日期的解析

 

字节流的两个根类:InputStream, OutputStream

字符流的两个根类:Reader, Writer

字节流转字符流的桥梁:InputStreamReader

字符流转字节流的桥梁:OutputSteamWriter

 

序列化:将对象转换成流的过程

反序列化:

Serializable

 

实现多线程的两种方式:

继承Thread

实现Runnable接口。

建议使用实现Runnable接口,因为java是单继承,继承Thread类之后就不能继承其他类了,

但是实现Runnable接口之后还可以实现其他的接口。

 

实现同步的两张方式:

同步方法和同步代码块

 

XML DOM解析、SAX解析、DOM4J

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值