1,JDK中有哪些类库?
2,JDK类库中用到了哪些设计模式?java工厂模式 单例模式 建造者模式
3,什么是线程安全?
4,JAVA中有哪些容器,哪些容器是线程安全的?
5,JAVA多线程的实现方法,run()方法和start()方法的区别?
6,JAVA防内存泄漏的机制?JAVA的垃圾回收机制
7,JAVA RPC RPC应用的JAVA实现
//工厂方法模式
//抽象产品
interface Moveable{
public void run();
}
//具体产品
//class Vehicle
class Plane implements Moveable{
//@override
public void run(){
System.out.println("Plane...");
}
}
class Broom implements Moveable{
//@override
public void run(){
System.out.println("Broom...");
}
}
//抽象工厂
abstract class VechicleFactory{
public abstract Moveable create();
}
//具体工厂
//飞机工厂
class PlaneFactory extends VechicleFactory{
public Moveable create(){
return new Plane();
}
}
//扫帚工厂
class BroomFactory extends VechicleFactory{
public Moveable create(){
return new Broom();
}
}
//测试类
public class test{
public static void main(String[] args){
//VechicleFactory vechile = new PlaneFactory();
//Plane plane = vechile;
VechicleFactory factory = new PlaneFactory();
//Plane plane = (Plane) planefactory.create();
//plane.run();
Moveable m = factory.create();
m.run();
}
}
//抽象工厂模式
//抽象工厂类
abstract class AbstractFactory{
public abstract Vehicle createVehicle();
//public abstract Weapon createWeapon();
//public abstract Food createFood();
}
//具体工厂类
class DefaultFactory extends AbstractFactory{
public Vehicle createVehicle(){
return new Car();
}
/*
public Weapon createWeapon(){
return new AK47();
}
public Food createFood(){
return new Apple();
}
*/
}
//抽象产品
interface Vehicle{
public void run();
}
//具体产品
class Car implements Vehicle{
public void run(){
System.out.println("Car run!");
}
}
public class test{
public static void main(String[] args){
AbstractFactory f = new DefaultFactory();
Vehicle v = f.createVehicle();
v.run();
}
}