java基础

什么是数据结构

	计算机保存、组织数据的方式

java数据结构包括哪些

		1:线性链表--ArrayList
		2: 链表--LinkedList
		3: 栈--Stack
		4:队列--Queue
		5: 图--map
		6: 树--tree

java中有几种数据类型

	整形:byte、short、int、long
	浮点型:float、 double
	字符型:char
	布尔型:boolean

什么是拆装箱

	装箱就是自动将基本数据类型转换为包装器类型(int-->Integer);调用方法:Integer.valueOf(int) 方法
	拆箱就是自动将包装器类型转换为基本数据类型(Integer-->int)。调用方法:Integer的intValue方 

面向对象的特征有哪些方面

	抽象、继承、封装、多态

重载和重写的区别

	重写**(Override)**
	1.发生在父类与子类之间
	2.方法名,参数列表,返回类型(除过子类中方法的返回类型是父类中返回类型的子类)必须相同
	3.访问修饰符的限制一定要大于被重写方法的访问修饰符(public>protected>default>private)
	4.重写方法一定不能抛出新的检查异常或者比被重写方法申明更加宽泛的检查型异常
	
	重载(Overload)
	1.重载Overload是一个类中多态性的一种表现
	2.重载要求同名方法的参数列表不同(参数类型,参数个数甚至是参数顺序)
	3.重载的时候,返回值类型可以相同也可以不相同。无法以返回型别作为重载函数的区分标准

equals与==的区别

	equals:
	equals用来比较的是两个对象的内容是否相等,
	==:
	== 比较的是变量(栈)内存中存放的对象的(堆)内存地址,用来判断两个对象的地址是否相同,即是否是指相同一个对象。比较的是真正意义上的指针操作

++i与i++的区别

	i++:先赋值,后计算
	++i:先计算,后赋值

Java中各种数据默认值

	Byte,short,int,long默认是都是0
	Boolean默认值是false 
	Char类型的默认值是’’
	Float与double类型的默认是0.0
	对象类型的默认值是null

Static关键字有什么作用

	Static可以修饰内部类、方法、变量、代码块
	
	Static修饰的类是静态内部类
	Static修饰的方法是静态方法,表示该方法属于当前类的,而不属于某个对象的,静态方法也不能被重写,可以直接使用类名来调用。在
	static方法中不能使用this或者super关键字。
	Static修饰变量是静态变量或者叫类变量,静态变量被所有实例所共享,不会依赖于对象。静态变量在内存中只有一份拷贝,在JVM加载类的时候,只为静态分配一次内存。
	Static修饰的代码块叫静态代码块,通常用来做程序优化的。静态代码块中的代码在整个类加载的时候只会执行一次。静态代码块可以有多个,如果有多个,按照先后顺序依次执行

StringString StringBuffffer 和 StringBuilder 的区别是什么?

String是只读字符串,它并不是基本数据类型,而是一个对象。从底层源码来看是一个fifinal类型的字符数组,所引用的字符串不能被改变,一经定义,无法再增删改。每次对String的操作都会生成新的
StringBuffer是线程安全的,Stringbuilder是非线程安全的。所以Stringbuilder比stringbuffer效率更高,StringBuffer的方法大多都加了 synchronized关键字

Super与this表示什么?

	Super表示当前类的父类对象
	This表示当前类的对象

什么是接口?为什么需要接口?

	接口就是某个事物对外提供的一些功能的声明,
	是一种特殊的java类
	接口弥补了java单继承的缺点

Java的四种引用,强、弱、软、虚

	强引用是平常中使用最多的引用,强引用在程序内存不足(OOM)的时候也不会被回收,
	软引用在程序内存不足时,会被回收,使用方式
	弱引用就是只要JVM垃圾回收器发现了它,就会将之回收

深拷贝和浅拷贝的区别是什么?

	浅拷贝:
	被复制对象的所有变量都含有与原来的对象相同的值,而所有的对其他对象的引用仍然指	向原来的对象.换言之,浅拷贝仅仅复制所考虑的对象,        而不复制它所引用的对象.
	深拷贝:
	被复制对象的所有变量都含有与原来的对象相同的值.而那些引用其他对象的变量将指向被复制过的新对象.而不再是原有的那些被引用的对象.换言之.深拷贝把要复制的对象所引用的对象都复制了一遍.
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值