import { CarTest } from './carTest';
const carTest = new CarTest();
carTest.drive();
interface Car{
assemble();
}
import { Car } from './car';
export class SUV implements Car {
assemble() {
console.log('SUV--Assembly');
}
}
import { Car } from 'car';
export class SEDAN implements Car{
assemble(){
console.log('SEDAN--assembly')
}
}
import { SUV } from './suv';
import { SEDAN } from './sedan';
export class CarFactory {
getCar(carType: string){
if(carType==null){
return null;
}
if(carType==="SUV"){
return new SUV();
}
if(carType==="SEDAN"){
return new SEDAN();
}
return null
}
}
import { CarFactory } from './carFactory';
export class CarTest{
drive():void{
const carFactory= new CarFactory();
const car=carFactory.getCar("SUV");
car.assemble();
}
}