From 0b95cb8a6cebdb697b205cbe92ff725f2b4cef91 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E7=9F=B3=E5=B7=9D=E3=80=80=E8=A3=95=E6=A8=B9?=
<26-y-ishikawa-stellatecnica@it-college.co.jp>
Date: Tue, 20 Oct 2026 16:41:52 +0900
Subject: [PATCH] =?UTF-8?q?3=E6=97=A5=E7=9B=AE=E3=81=AE=E8=BF=BD=E5=8A=A0?=
=?UTF-8?q?=E6=AE=B5=E9=9A=8E=E4=BB=A5=E5=A4=96=E5=AE=8C=E4=BA=86?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.classpath | 6 +
.gitignore | 1 +
.project | 23 +++
.settings/org.eclipse.jdt.core.prefs | 9 ++
....eclipse.wst.common.project.facet.core.xml | 4 +
CUI_20261014_ishikawa.java | 58 -------
EmployeeData2026_1014_ishikawa.java | 15 --
src/main/java/BaseData.java | 7 +
src/main/java/CUI_20261014.java | 145 +++++++++++++-----
src/main/java/DepartmentData.java | 31 ++++
src/main/java/EmployeeData.java | 119 ++++++++++++--
11 files changed, 299 insertions(+), 119 deletions(-)
create mode 100644 .classpath
create mode 100644 .gitignore
create mode 100644 .project
create mode 100644 .settings/org.eclipse.jdt.core.prefs
create mode 100644 .settings/org.eclipse.wst.common.project.facet.core.xml
delete mode 100644 CUI_20261014_ishikawa.java
delete mode 100644 EmployeeData2026_1014_ishikawa.java
create mode 100644 src/main/java/BaseData.java
create mode 100644 src/main/java/DepartmentData.java
diff --git a/.classpath b/.classpath
new file mode 100644
index 0000000..c771657
--- /dev/null
+++ b/.classpath
@@ -0,0 +1,6 @@
+
+
+
+
+
+
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..84c048a
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1 @@
+/build/
diff --git a/.project b/.project
new file mode 100644
index 0000000..fc1fa03
--- /dev/null
+++ b/.project
@@ -0,0 +1,23 @@
+
+
+ em-oop
+
+
+
+
+
+ org.eclipse.jdt.core.javabuilder
+
+
+
+
+ org.eclipse.wst.common.project.facet.core.builder
+
+
+
+
+
+ org.eclipse.wst.common.project.facet.core.nature
+ org.eclipse.jdt.core.javanature
+
+
diff --git a/.settings/org.eclipse.jdt.core.prefs b/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..23fa13b
--- /dev/null
+++ b/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,9 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=21
+org.eclipse.jdt.core.compiler.compliance=21
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning
+org.eclipse.jdt.core.compiler.release=enabled
+org.eclipse.jdt.core.compiler.source=21
diff --git a/.settings/org.eclipse.wst.common.project.facet.core.xml b/.settings/org.eclipse.wst.common.project.facet.core.xml
new file mode 100644
index 0000000..c1a8d07
--- /dev/null
+++ b/.settings/org.eclipse.wst.common.project.facet.core.xml
@@ -0,0 +1,4 @@
+
+
+
+
diff --git a/CUI_20261014_ishikawa.java b/CUI_20261014_ishikawa.java
deleted file mode 100644
index c863001..0000000
--- a/CUI_20261014_ishikawa.java
+++ /dev/null
@@ -1,58 +0,0 @@
-
-public class CUI_20261014 {
-
- public static void main(String[] args) {
- // TODO 自動生成されたメソッド・スタブ
- EmployeeData[] employees = new EmployeeData[5];
-
- employees[0] = new EmployeeData();
- employees[0].idEmployee = "10000";
- employees[0].nmEmployee = "山田龍也";
- employees[0].knEmployee = "ヤマダタツヤ";
- employees[0].mailAddress = "yamada@hoge.jp";
- employees[0].password = "aaa";
- employees[0].idDepartment = "10";
-
- employees[1] = new EmployeeData();
- employees[1].idEmployee = "10001";
- employees[1].nmEmployee = "高橋準";
- employees[1].knEmployee = "タカハシジュン";
- employees[1].mailAddress = "jtaka@hoge.jp";
- employees[1].password = "bbb";
- employees[1].idDepartment = "10";
-
- employees[2] = new EmployeeData();
- employees[2].idEmployee = "10002";
- employees[2].nmEmployee = "麻枝史明";
- employees[2].knEmployee = "マエダフミアキ";
- employees[2].mailAddress = "fmak@hoge.jp";
- employees[2].password = "ccc";
- employees[2].idDepartment = "11";
-
- employees[3] = new EmployeeData();
- employees[3].idEmployee = "10003";
- employees[3].nmEmployee = "丸戸章介";
- employees[3].knEmployee = "マルトショウスケ";
- employees[3].mailAddress = "marusyo@hoge.jp";
- employees[3].password = "ddd";
- employees[3].idDepartment = "12";
-
- employees[4] = new EmployeeData();
- employees[4].idEmployee = "10004";
- employees[4].nmEmployee = "三宅武";
- employees[4].knEmployee = "ミヤケタケシ";
- employees[4].mailAddress = "miya@hoge.jp";
- employees[4].password = "eee";
- employees[4].idDepartment = "13";
-
- for(int i = 0; i < 5; i++) {
- employees[i].showInfo();
- }
-
- System.out.println("10002 を検索します");
- for(int i = 0; i < 5; ) {
-
- }
- }
-
-}
diff --git a/EmployeeData2026_1014_ishikawa.java b/EmployeeData2026_1014_ishikawa.java
deleted file mode 100644
index aad8742..0000000
--- a/EmployeeData2026_1014_ishikawa.java
+++ /dev/null
@@ -1,15 +0,0 @@
-
-public class EmployeeData {
- String idEmployee;
- String nmEmployee;
- String knEmployee;
- String mailAddress;
- String password;
- String idDepartment;
-
-
- public void showInfo() {
- System.out.println(this.idEmployee + "\t" + this.nmEmployee + "\t" + this.knEmployee + "\t" +
- this.mailAddress + "\t" + this.password + "\t" + this.idDepartment);
- }
-}
diff --git a/src/main/java/BaseData.java b/src/main/java/BaseData.java
new file mode 100644
index 0000000..55e1118
--- /dev/null
+++ b/src/main/java/BaseData.java
@@ -0,0 +1,7 @@
+
+public abstract class BaseData {
+ public abstract String toString();
+ public abstract String toCSV();
+ public abstract String getPrimaryKeyValue();
+
+}
diff --git a/src/main/java/CUI_20261014.java b/src/main/java/CUI_20261014.java
index c863001..ccdd528 100644
--- a/src/main/java/CUI_20261014.java
+++ b/src/main/java/CUI_20261014.java
@@ -1,58 +1,133 @@
+import java.util.Scanner;
public class CUI_20261014 {
public static void main(String[] args) {
// TODO 自動生成されたメソッド・スタブ
- EmployeeData[] employees = new EmployeeData[5];
+ BaseData[] employees = new BaseData[5];
- employees[0] = new EmployeeData();
- employees[0].idEmployee = "10000";
- employees[0].nmEmployee = "山田龍也";
- employees[0].knEmployee = "ヤマダタツヤ";
- employees[0].mailAddress = "yamada@hoge.jp";
- employees[0].password = "aaa";
- employees[0].idDepartment = "10";
+ employees[0] = new EmployeeData("10000", "山田龍也", "ヤマダタツヤ",
+ "yamada@hoge.jp", "aaa", "10");
employees[1] = new EmployeeData();
- employees[1].idEmployee = "10001";
- employees[1].nmEmployee = "高橋準";
- employees[1].knEmployee = "タカハシジュン";
- employees[1].mailAddress = "jtaka@hoge.jp";
- employees[1].password = "bbb";
- employees[1].idDepartment = "10";
+ ((EmployeeData)employees[1]).setIdEmployee("10001");
+ ((EmployeeData)employees[1]).setNmEmployee("高橋準");
+ ((EmployeeData)employees[1]).setKnEmployee("タカハシジュン");
+ ((EmployeeData)employees[1]).setMailAddress("jtaka@hoge.jp");
+ ((EmployeeData)employees[1]).setPassword("bbb");
+ ((EmployeeData)employees[1]).setIdDepartment("10");
employees[2] = new EmployeeData();
- employees[2].idEmployee = "10002";
- employees[2].nmEmployee = "麻枝史明";
- employees[2].knEmployee = "マエダフミアキ";
- employees[2].mailAddress = "fmak@hoge.jp";
- employees[2].password = "ccc";
- employees[2].idDepartment = "11";
+ ((EmployeeData)employees[2]).setIdEmployee("10002");
+ ((EmployeeData)employees[2]).setNmEmployee("麻枝史明");
+ ((EmployeeData)employees[2]).setKnEmployee("マエダフミアキ");
+ ((EmployeeData)employees[2]).setMailAddress("fmak@hoge.jp");
+ ((EmployeeData)employees[2]).setPassword("ccc");
+ ((EmployeeData)employees[2]).setIdDepartment("11");
employees[3] = new EmployeeData();
- employees[3].idEmployee = "10003";
- employees[3].nmEmployee = "丸戸章介";
- employees[3].knEmployee = "マルトショウスケ";
- employees[3].mailAddress = "marusyo@hoge.jp";
- employees[3].password = "ddd";
- employees[3].idDepartment = "12";
+ ((EmployeeData)employees[3]).setIdEmployee("10003");
+ ((EmployeeData)employees[3]).setNmEmployee("丸戸章介");
+ ((EmployeeData)employees[3]).setKnEmployee("マルトショウスケ");
+ ((EmployeeData)employees[3]).setMailAddress("marusyo@hoge.jp");
+ ((EmployeeData)employees[3]).setPassword("ddd");
+ ((EmployeeData)employees[3]).setIdDepartment("12");
employees[4] = new EmployeeData();
- employees[4].idEmployee = "10004";
- employees[4].nmEmployee = "三宅武";
- employees[4].knEmployee = "ミヤケタケシ";
- employees[4].mailAddress = "miya@hoge.jp";
- employees[4].password = "eee";
- employees[4].idDepartment = "13";
+ ((EmployeeData)employees[4]).setIdEmployee("10004");
+ ((EmployeeData)employees[4]).setNmEmployee("三宅武");
+ ((EmployeeData)employees[4]).setKnEmployee("ミヤケタケシ");
+ ((EmployeeData)employees[4]).setMailAddress("miya@hoge.jp");
+ ((EmployeeData)employees[4]).setPassword("eee");
+ ((EmployeeData)employees[4]).setIdDepartment("13");
for(int i = 0; i < 5; i++) {
- employees[i].showInfo();
+ System.out.println(employees[i]);
}
+ System.out.println("現在の社員データ件数:" + EmployeeData.getEmpCount() + "件");
+ System.out.println();
+
+ System.out.println(employees[0].toCSV());
+ System.out.println(employees[0].getPrimaryKeyValue());
+
+ BaseData[] allData = new BaseData[11];
+
+ for(int i = 0; i <= 4; i++) {
+ allData[i] = employees[i];
+ }
+
+ DepartmentData dept = new DepartmentData();
+ dept.setIdDepartment("10");
+ dept.setNmDepartment("役員");
+ allData[5] = dept;
+
+ dept.setIdDepartment("11");
+ dept.setNmDepartment("人事・総務部");
+ allData[6] = dept;
+
+ dept.setIdDepartment("12");
+ dept.setNmDepartment("経理部");
+ allData[7] = dept;
+
+ dept.setIdDepartment("13");
+ dept.setNmDepartment("システム開発事業部");
+ allData[8] = dept;
+
+ dept.setIdDepartment("14");
+ dept.setNmDepartment("教育事業部");
+ allData[9] = dept;
+
+ dept.setIdDepartment("15");
+ dept.setNmDepartment("営業企画部");
+ allData[10] = dept;
+
+ for(int i = 0; i <= 10; i++) {
+ System.out.println(allData[i]);
+ }
+
+ //IDが10002を探す
System.out.println("10002 を検索します");
- for(int i = 0; i < 5; ) {
+ boolean b1 = false; //一致してるかを判定させる
+ for(int i = 0; i < 5; i++) { //employees[0-4]まで繰り返す
+ if(employees[i].getPrimaryKeyValue().equals("10002")) { //10002と一致するのがあれば
+ b1 = true; //b1をtrueにして
+ break; //繰り返しを抜ける
+ }
+ }
+ System.out.println(b1); //trueかfalseかを出力
+
+ //IDが99999を探す
+ System.out.println("99999 を検索します");
+ boolean b2 = false;
+ for(int i = 0; i < 5; i++) {
+ if(employees[i].getPrimaryKeyValue().equals("99999")) {
+ b2 = true;
+ break;
+ }
+ }
+ System.out.println(b2);
+
+ while(true) { //繰り返す
+ System.out.println("検索したい社員IDを入力してください(終了する場合は0)");
+ Scanner sc = new Scanner(System.in); //キーボード入力受け取る
+ String str = sc.nextLine(); //入力されたものをstrにする
+ if(str.equals("0")) { //0と入力されたら
+ System.out.println("システムを終了します"); //終わる
+ break; //ループ終了
+ }
+ boolean b3 = false; //一致してるかを判定させる
+ for(int i = 0; i < 5; i++) { //employees[0-4]まで繰り返す
+ if(employees[i].getPrimaryKeyValue().equals(str)) { //strと一致していたら
+ System.out.println(employees[i].toString()); //toStoringメソッドを呼び出して出力
+ b3 = true; //b3をtrueにして
+ break; //繰り返しを抜ける
+ }
+ }
+ if(!b3) {
+ System.out.println("該当する社員が見つかりませんでした");
}
}
-
+ }
}
diff --git a/src/main/java/DepartmentData.java b/src/main/java/DepartmentData.java
new file mode 100644
index 0000000..e8f42c5
--- /dev/null
+++ b/src/main/java/DepartmentData.java
@@ -0,0 +1,31 @@
+
+public class DepartmentData extends BaseData{
+ private String idDepartment;
+ private String nmDepartment;
+
+ public String getIdDepartment() {
+ return idDepartment;
+ }
+ public void setIdDepartment(String idDepartment) {
+ this.idDepartment = idDepartment;
+ }
+ public String getNmDepartment() {
+ return nmDepartment;
+ }
+ public void setNmDepartment(String nmDepartment) {
+ this.nmDepartment = nmDepartment;
+ }
+
+ @Override
+ public String toString() {
+ return this.getIdDepartment() + "\t" + this.getNmDepartment();
+ }
+ @Override
+ public String toCSV() {
+ return this.getIdDepartment() + "," + this.getNmDepartment();
+ }
+ @Override
+ public String getPrimaryKeyValue() {
+ return this.getIdDepartment();
+ }
+}
diff --git a/src/main/java/EmployeeData.java b/src/main/java/EmployeeData.java
index aad8742..a9647e9 100644
--- a/src/main/java/EmployeeData.java
+++ b/src/main/java/EmployeeData.java
@@ -1,15 +1,112 @@
-public class EmployeeData {
- String idEmployee;
- String nmEmployee;
- String knEmployee;
- String mailAddress;
- String password;
- String idDepartment;
+public class EmployeeData extends BaseData{
+ private String idEmployee;
+ private String nmEmployee;
+ private String knEmployee;
+ private String mailAddress;
+ private String password;
+ private String idDepartment;
-
- public void showInfo() {
- System.out.println(this.idEmployee + "\t" + this.nmEmployee + "\t" + this.knEmployee + "\t" +
- this.mailAddress + "\t" + this.password + "\t" + this.idDepartment);
+ //ゲッターとセッター
+ public String getIdEmployee() {
+ return idEmployee;
}
+
+ public void setIdEmployee(String idEmployee) {
+ if(idEmployee == null || idEmployee.strip().isEmpty()) {
+ System.out.println("社員IDが空のため設定できませんでした");
+ }else {
+ this.idEmployee = idEmployee;
+ }
+ }
+
+ public String getNmEmployee() {
+ return nmEmployee;
+ }
+
+ public void setNmEmployee(String nmEmployee) {
+ if(nmEmployee == null || nmEmployee.strip().isEmpty()) {
+ System.out.println("社員名が空のため設定できませんでした");
+ }else {
+ this.nmEmployee = nmEmployee;
+ }
+ }
+
+ public String getKnEmployee() {
+ return knEmployee;
+ }
+
+ public void setKnEmployee(String knEmployee) {
+ this.knEmployee = knEmployee;
+ }
+
+ public String getMailAddress() {
+ return mailAddress;
+ }
+
+ public void setMailAddress(String mailAddress) {
+ this.mailAddress = mailAddress;
+ }
+
+ public String getPassword() {
+ return password;
+ }
+
+ public void setPassword(String password) {
+ this.password = password;
+ }
+
+ public String getIdDepartment() {
+ return idDepartment;
+ }
+
+ public void setIdDepartment(String idDepartment) {
+ this.idDepartment = idDepartment;
+ }
+
+ private static int empCount = 0;
+ //引数なしコンストラクタ
+ public EmployeeData() {
+ empCount++;
+ }
+
+ //引数をもつコンストラクタ
+ public EmployeeData(String idEmployee, String nmEmployee,
+ String knEmployee, String mailAddress,
+ String password, String idDepartment) {
+ this.setIdEmployee(idEmployee);
+ this.setNmEmployee(nmEmployee);
+ this.setKnEmployee(knEmployee);
+ this.setMailAddress(mailAddress);
+ this.setPassword(password);
+ this.setIdDepartment(idDepartment);
+ empCount++;
+ }
+
+ //メソッド
+ @Override
+ public String toString() {
+ return(this.getIdEmployee() + "\t" + this.getNmEmployee() + "\t" + this.getKnEmployee() + "\t" +
+ this.getMailAddress() + "\t" + this.getPassword() + "\t" + this.getIdDepartment());
+ }
+
+ public boolean isMatchId(String id) {
+ return this.idEmployee.equals(id);
+ }
+
+ static int getEmpCount() {
+ return empCount;
+ }
+
+ @Override
+ public String toCSV() {
+ return (this.getIdEmployee() + "," + this.getNmEmployee() + "," + this.getKnEmployee() + "," +
+ this.getMailAddress() + "," + this.getPassword() + "," + this.getIdDepartment());
+ }
+
+ public String getPrimaryKeyValue() {
+ return this.idEmployee;
+ }
+
+
}