第一次参加java开发的笔试和面试,题目和问题都很简单,但自己却不知道该怎么表达,还是不太熟练,得好好准备一下。有些东西,自己天天用,到了要写和说的时候,却怎么都弄不出来。
重点:java基础、js、数据的基本查询。
java基础:
1、重点是集合,对于集合的基本使用,原理的理解;
2、多线程的实现和理解;
3、自己熟悉的技术或框架。
4、设计模式的理解
js基础:
1、js的基本语法;
2、js在不同浏览器的兼容性问题
数据库基础:
1、复合查询;
一、java的基本数据类型有哪些?
int、short、byte、long、float、double、char、boolean
一共是八种数据类型,整数型:byte、int、short、long
浮点型:float、double
布尔型:boolean
字符型:char
switch只能接收:byte、int、char、short、string、enum
String不是基本数据类型,是引用型,让后类被final修饰,不能继承
<span style="white-space:pre"> </span>//byte是一个字节,八位,2^7-1=127 -128---+127 01111111
//最小的负数是10000000,去补码得到01111111,加1得到10000000,为-128
byte[] a="ab".getBytes();
for(byte i:a){
System.out.println(i);
}
byte b=(byte)127;
System.out.println(b);
二、接口和抽象类
接口:接口能够多继承和多实现,一个接口继承另外一个接口之后,如果要实例化该接口,必须要将相关接口的方法实例化。
抽象类:抽象类只能实例化一个接口,不能继承接口,对接口的实现可以在继承了抽象类的类中或者直接在抽象类中。
三、设计模式
写一个Singleton
懒汉试,线程安全的
//如何设置一把锁
//使用synchronized关键字,有两种使用方式
/*
* 1.是放在方法前面,保证每次只有一个线程能够访问该方法
* 2.申明同步代码块,(Object){}
*/
class MySingleton{
//如何设置一把锁
//使用synchronized关键字,有两种使用方式
/*
* 1.是放在方法前面,保证每次只有一个线程能够访问该方法
* 2.申明同步代码块,(Object){}
*/
private static Object o=new Object();
private static MySingleton mySingleton=null;
private MySingleton(){
}
public static MySingleton getInstance(){
//增加效率,然后设置锁
if(mySingleton==null){
synchronized(o){
if(mySingleton==null){
mySingleton=new MySingleton();
}
return mySingleton;
}
}
else
return mySingleton;
}
}
四、异常处理
java是一种面向对象的开发语言,所以异常也被封装在一个类中,有java.lang.Trowable派生出来的两个子类,
Error和Exception。Error主要是由于程序的逻辑出现了错误,而Exception主要是因为程序的某些地方考虑不周到造成的,
比如说数组的越界,稍微修改一下就可以了。对异常的处理可以让程序更稳定的运行。
五、集合的原理和使用场景
map:
set:
list:
六、多线程的使用