Run Code
|
API
|
Code Wall
|
Misc
|
Feedback
|
Login
|
Theme
|
Privacy
|
Patreon
Kochergina
//'main' method must be in a class 'Rextester'. //Compiler version 1.8.0_111 import java.sql.*; import java.util.*; import java.lang.*; class Rextester { public static final int INDEX_RES_32 = 1; public static final int INDEX_RES_64 = 2; public static final int INDEX_RES_128 = 3; public static final int INDEX_RES_254 = 4; public static void main(String[] args) { DataFactory factory = new DataFactory(); List<aData> list_items = new ArrayList<aData> (); // добавляем 5 записей по 4м параметрам aData item = factory.getByParams("Dexp", 100, INDEX_RES_32); list_items.add(item); item = factory.getByParams("Link", 100, INDEX_RES_32); list_items.add(item); item = factory.getByParams("Intel", 1000, INDEX_RES_128); list_items.add(item); item = factory.getByParams("Link", 150, INDEX_RES_64); list_items.add(item); item = factory.getByParams("Assus", 150, INDEX_RES_64); list_items.add(item); item = factory.getByParams("Dexp", 100, INDEX_RES_128); list_items.add(item); item = factory.getByParams("Assus", 10000, INDEX_RES_254); list_items.add(item); for(int i = 0; i < list_items.size(); i++) // выводим на экран результат работы одной «фабрики» { // (в данном случае DataFactory) всех записей list_items.get(i).showName(); } } } class DataFactory { public aData getByParams(String brand, double speed, Integer bus) { aData retData; if (brand == "Dexp") { retData = new Dexp(speed, bus); } else if (brand == "Link") { retData = new Link(speed, bus); } else if (brand == "Intel") { retData = new Intel(speed, bus); } else if (brand == "Assus") { retData = new Assus(speed, bus); } else { retData = new Empty("Unknown name, ITEM NOT FOUND!("); // заглушка } return retData; } } abstract class aData { protected String _str_name = "Unknown name"; public abstract void showName(); } class Empty extends aData { Empty(String str) { _str_name = str; } @Override public void showName() { System.out.println("Empty class:" + _str_name); } } class Dexp extends aData { Dexp(double speed, Integer bus) { if(speed == 100) { if(bus == Rextester.INDEX_RES_32) // по идее создается подкласс + вызов заглушки Empty() { _str_name = "Dexp GH44,Среднее время наработки на отказ:2100,Коэф-фициент готов-ности:0,9971,Среднее время восстанов-ления:6,Средний срок службы:3500 часов"; } else if(bus == Rextester.INDEX_RES_128) // по идее создается подкласс + вызов заглушки Empty() { _str_name = "Dexp GH44-L2,Среднее время наработки на отказ:2600 часов,Коэф-фициент готов-ности:0.9984,Среднее время восстанов-ления:4 часов,Средний срок службы:3500 часов"; } else { _str_name = "Dexp brand, speed 100, ITEM NOT FOUND!!(("; } } else { _str_name = "Dexp brand, ITEM NOT FOUND!("; } } @Override public void showName() { System.out.println("Dexp class:" + _str_name); } } class Link extends aData { Link(double speed, Integer bus) { if(speed == 150) { if(bus == Rextester.INDEX_RES_64) // по идее создается подкласс + вызов заглушки Empty() { _str_name = "Link Leg-44,Среднее время наработки на отказ:2100 часов,Коэф-фициент готов-ности:0.9980,Среднее время восстанов-ления:5часов,Средний срок службы:4500 часов"; } else { _str_name = "Link brand, speed 150, ITEM NOT FOUND!!(("; } } else { _str_name = "Link brand, ITEM NOT FOUND!("; } } @Override public void showName() { System.out.println("Link class:" + _str_name); } } class Intel extends aData { Intel(double speed, Integer bus) { if(speed == 1000) { if(bus == Rextester.INDEX_RES_128) // по идее создается подкласс + вызов заглушки Empty() { _str_name = "Intel HY76JU88,Среднее время наработки на отказ:1700 часов,Коэф-фициент готов-ности:0.9958,Среднее время восстанов-ления:7 часов,Средний срок службы:4000 часов"; } else { _str_name = "Intel brand, speed 1000, ITEM NOT FOUND!!(("; } } else { _str_name = "Intel brand, ITEM NOT FOUND!("; } } @Override public void showName() { System.out.println("Intel class:" + _str_name); } } class Assus extends aData { Assus (double speed, Integer bus) { if(speed == 150) { if(bus == Rextester.INDEX_RES_64) // по идее создается подкласс + вызов заглушки Empty() { _str_name = "HTgT0,Среднее время наработки на отказ:600 часов,Коэф-фициент готов-ности:0.9836,Среднее время восстанов-ления:10 часов,Средний срок службы:1500 часов"; } else { _str_name = "Assus brand, speed 150, ITEM NOT FOUND!!(("; } } else if (speed == 1000) if(bus == Rextester.INDEX_RES_254) { _str_name = "HT1100,Среднее время наработки на отказ:1600 часов,Коэф-фициент готов-ности:0.9962,Среднее время восстанов-ления:6 часов,Средний срок службы:3000 часов"; } else { _str_name = "Assus brand, speed 1000, ITEM NOT FOUND!!(("; } else { _str_name = "Assus brand, ITEM NOT FOUND!("; } } @Override public void showName() { System.out.println("Assus class:" + _str_name); } }
run
|
edit
|
history
|
help
0
Area of the triangle
Rextester.java
num Islands
pre
Prime or Not
predecrement
jb11.0 threads tick tock
epeenconverter
Case 2nd Clear
Qu1java.java