0 / 0 / 0
Регистрация: 21.01.2016
Сообщений: 1
1

Используя наследование, создать класс для обработки баз данных двух типов

22.10.2016, 12:12. Показов 1983. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Есть задание по полиморфизму:
Используя свойство наследования создать класс для обработки баз данных двух типов. Создать по классу для каждой из БД. Долю общей функциональности обеих БД поместить в базовый класс, а два других класса сделать его производными. У каждого класса должен быть реализован собственный конструктор, независимый от базового класса. Ход программы отобразить комментариями.
Помогите пожалуйста, я вообще не понимаю, как это сделать. Зарание спасибо.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.10.2016, 12:12
Ответы с готовыми решениями:

Наследование. Создать объект класса Планета, используя класс Материк
Задание: Создать приложение, удовлетворяющее требованиям, приведенным в задании. Аргументировать...

Создать сложный класс, используя наследование (указатели, конструкторы и деструкторы)
Создать сложный класс из реальной жизни, используя наследование. В каждом вложенном классе должны...

Создание многозвенного приложения для обработки баз данных SQL server.
Всем здравствуйте. Я хочу в приложении для обработки БД предоставить выбор имени базы данных...

Как создать форму авторизации без использования баз данных используя блокнот?
Как?

2
50 / 37 / 9
Регистрация: 25.06.2014
Сообщений: 406
22.10.2016, 18:42 2
Если я правильно понял, то это о паттерне фабрика. Его реализация на примере работы с разными бд есть у Троелсена в книге "Язык программирования C# 5.0 и платформа .NET 4.5" в главе 21.
0
Эксперт .NET
5531 / 4296 / 1216
Регистрация: 12.10.2013
Сообщений: 12,329
Записей в блоге: 2
22.10.2016, 19:12 3
Лучший ответ Сообщение было отмечено sawbosh как решение

Решение

Цитата Сообщение от sawbosh Посмотреть сообщение
вообще не понимаю, как это сделать
Что-то типа того, ятд.
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;
using System.Data.SqlClient;
using System.Data.SQLite;
 
namespace ConsoleApplication1 {
    class Program {
        static void Main(string[] args) {
            DbHelper dbHelper = DbFactory.CreateHelper("CONNECT_STR", "Sql");
        }
    }
    public static class DbFactory {
        public static DbHelper CreateHelper(string connectStr, string dbType) {
            DbHelper dbHelper = null;
            if (dbType == "Sql") {
                dbHelper = new SqlDbHelper(connectStr);
            }
            else if (dbType=="SQLITE") {
                dbHelper = new SQLiteDbHelper(connectStr);
            }
            return dbHelper;
        }
    }
    public class SqlDbHelper : DbHelper {
        public SqlDbHelper(string connect_str)
            : base(connect_str) {
        }
 
        protected override User[] GetUsers() {
            throw new NotImplementedException();
        }
 
        protected override void InsertUser(string name, int age) {
            throw new NotImplementedException();
        }
 
        protected override void DeleteUser(int id) {
            throw new NotImplementedException();
        }
    }
    public class SQLiteDbHelper : DbHelper {
        public SQLiteDbHelper(string connect_str)
            : base(connect_str) {
        }
        protected override User[] GetUsers() {
            throw new NotImplementedException();
        }
 
        protected override void InsertUser(string name, int age) {
            throw new NotImplementedException();
        }
 
        protected override void DeleteUser(int id) {
            throw new NotImplementedException();
        }
    }
    public abstract class DbHelper {
        protected string CONNECT_STR;
        public DbHelper(string connect_str) {
            CONNECT_STR = connect_str;
        }
        protected abstract User[] GetUsers();
        protected abstract void InsertUser(string name, int age);
        protected abstract void DeleteUser(int id);
    }
    public class User {
        public int Id { get; set; }
        public string Name { get; set; }
        public int Age { get; set; }
    }
}
0
22.10.2016, 19:12
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.10.2016, 19:12
Помогаю со студенческими работами здесь

Использование подпрограмм для обработки простых типов данных
Разработать подпрограмму для получения "перевернутого" натурального числа,то есть числа, цифры...

Определение и использование функций для обработки стандартных типов данных
Заданы три числа. Отрицательные числа заменить абсолютными значениям, нулевые значения – единицами,...

Используя заданную структуру данных. Сформировать соответствующие функции для обработки этих данных
Пожалуйста помогите написать программу под программу Dev C++ Задание: 1.Описать структуру с...

Класс таблиц баз данных и класс записей в таблице(реляционная таблица). Предусмотреть класс связей между таблицами
Здравствуйте! Никак не могу продумать структуру этой программы. Проходим наследование, но я все...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru