Compare commits
18 Commits
ba035d4a3c
...
m_shimizu
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
99506c4369 | ||
|
|
5a8c7eb2fd | ||
|
|
a8dc3e82e6 | ||
|
|
491415d6ee | ||
|
|
a944d06928 | ||
|
|
3fd65f6437 | ||
|
|
64bd81c717 | ||
|
|
41bf9831a8 | ||
|
|
f73b4054b3 | ||
|
|
8a75a03511 | ||
|
|
5095e0fae1 | ||
|
|
6000722eeb | ||
|
|
d8d13385fe | ||
|
|
7e13efcb68 | ||
|
|
e28c819868 | ||
|
|
48af3a3a99 | ||
|
|
542af2a5d4 | ||
|
|
e6753a16f4 |
9
em-oop/src/BaseData.java
Normal file
9
em-oop/src/BaseData.java
Normal file
@@ -0,0 +1,9 @@
|
||||
//Day3_4段階目:BaseDataを作り、EmployeeDataに継承させよう
|
||||
|
||||
public abstract class BaseData {
|
||||
|
||||
public abstract String toString();
|
||||
public abstract String toCSV();
|
||||
public abstract String getPrimaryKeyValue();
|
||||
|
||||
}
|
||||
@@ -19,4 +19,25 @@ public class Circle extends Shape {
|
||||
super.showInfo();
|
||||
System.out.println("半径:" + this.radius);
|
||||
}
|
||||
// //Shapeクラスを継承
|
||||
//
|
||||
// //フィールド作成
|
||||
// private double radius;
|
||||
//
|
||||
// //コンストラクタ作成
|
||||
// public Circle(double radius) {
|
||||
// super("円");
|
||||
// this.radius = radius;
|
||||
// }
|
||||
//
|
||||
// //メソッド作成
|
||||
// public double area() {
|
||||
// return Math.PI * radius * radius;
|
||||
// }
|
||||
//
|
||||
// public void showInfo() {
|
||||
// super.showInfo();
|
||||
// System.out.println("(半径:" + this.radius + ")");
|
||||
// }
|
||||
|
||||
}
|
||||
|
||||
13
em-oop/src/Day3Check3.java
Normal file
13
em-oop/src/Day3Check3.java
Normal file
@@ -0,0 +1,13 @@
|
||||
|
||||
public class Day3Check3 {
|
||||
public static void main(String[] ages) {
|
||||
|
||||
Shape shape1 = new Circle(2);
|
||||
shape1.showInfo();
|
||||
|
||||
Shape shape2 = new Rectangle(3, 4);
|
||||
shape2.showInfo();
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
59
em-oop/src/DepartmentData.java
Normal file
59
em-oop/src/DepartmentData.java
Normal file
@@ -0,0 +1,59 @@
|
||||
|
||||
public class DepartmentData extends BaseData{
|
||||
|
||||
private String idDepartment;
|
||||
private String nmDepartment;
|
||||
|
||||
//gettre・setter
|
||||
//部署IDのgetter
|
||||
public String getIdDepartment() {
|
||||
return idDepartment;
|
||||
}
|
||||
|
||||
//部署IDのsetter
|
||||
public void setIdDepartment(String idDepartment) {
|
||||
this.idDepartment = idDepartment;
|
||||
}
|
||||
|
||||
//部署名のgetter
|
||||
public String getNmDepartment() {
|
||||
return nmDepartment;
|
||||
}
|
||||
|
||||
//部署名のsetter
|
||||
public void setNmDepartment(String nmDepartment) {
|
||||
this.nmDepartment = nmDepartment;
|
||||
}
|
||||
|
||||
//部署名を文字列として返す
|
||||
@Override
|
||||
public String toString() {
|
||||
return this.getIdDepartment() + "\t" + this.getNmDepartment();
|
||||
}
|
||||
|
||||
//CSV形式で返す
|
||||
@Override
|
||||
public String toCSV() {
|
||||
return this.getIdDepartment() + "," + this.getNmDepartment();
|
||||
|
||||
}
|
||||
|
||||
//部署IDを返す
|
||||
@Override
|
||||
public String getPrimaryKeyValue() {
|
||||
return this.getIdDepartment();
|
||||
|
||||
}
|
||||
|
||||
//部署名
|
||||
// @Override
|
||||
// public String toCSV() {
|
||||
// return this.getIdDepartment() + "," + getNmDepartment();
|
||||
// }
|
||||
|
||||
//部署ID
|
||||
// @Override
|
||||
// public String getPrimaryKeyValue() {
|
||||
// return this.getIdDepartment();
|
||||
// }
|
||||
}
|
||||
@@ -1,23 +1,153 @@
|
||||
|
||||
public class EmployeeData {
|
||||
|
||||
String idEmployee;
|
||||
String nmEmployee;
|
||||
String knEmployee;
|
||||
String mailAddress;
|
||||
String password;
|
||||
String idDepartment;
|
||||
public class EmployeeData extends BaseData {
|
||||
|
||||
void showInfo() {
|
||||
|
||||
System.out.println(
|
||||
this.idEmployee + "\t"
|
||||
+ this.nmEmployee + "\t"
|
||||
+ this.knEmployee + "\t"
|
||||
+ this.mailAddress + "\t"
|
||||
+ this.password + "\t"
|
||||
+ this.idDepartment
|
||||
);
|
||||
private String idEmployee;
|
||||
private String nmEmployee;
|
||||
private String knEmployee;
|
||||
private String mailAddress;
|
||||
private String password;
|
||||
private String idDepartment;
|
||||
|
||||
//社員データ件数
|
||||
private static int empCount = 0;
|
||||
|
||||
//引数なしコンストラクタ
|
||||
public EmployeeData() {
|
||||
empCount++;
|
||||
}
|
||||
|
||||
//6つの引数をもつコンストラクタ
|
||||
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++;
|
||||
|
||||
}
|
||||
|
||||
// public static int getEmpCount() {
|
||||
// return empCount;
|
||||
// }
|
||||
|
||||
public String getIdEmployee() {
|
||||
return idEmployee;
|
||||
}
|
||||
|
||||
public void setIdEmployee(String idEmployee) {
|
||||
|
||||
//9段階目(空文字チェック、セッター経由になっているかを見直し)
|
||||
if (idEmployee == null || idEmployee.trim().isEmpty()) {
|
||||
System.out.println("社員IDが空のため設定できませんでした");
|
||||
return;
|
||||
|
||||
}
|
||||
|
||||
this.idEmployee = idEmployee;
|
||||
}
|
||||
|
||||
//社員名
|
||||
public String getNmEmployee() {
|
||||
return nmEmployee;
|
||||
}
|
||||
|
||||
public void setNmEmployee(String nmEmployee) {
|
||||
|
||||
//8段階目(空文字や空白だけの値が渡された場合は代入しない)
|
||||
if (nmEmployee == null || nmEmployee.trim().isEmpty()) {
|
||||
System.out.println("社員名が空のため設定できませんでした");
|
||||
return;
|
||||
|
||||
}
|
||||
|
||||
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;
|
||||
}
|
||||
|
||||
//部署ID
|
||||
public String getIdDepartment() {
|
||||
return idDepartment;
|
||||
}
|
||||
|
||||
public void setIdDepartment(String idDepartment) {
|
||||
this.idDepartment = idDepartment;
|
||||
}
|
||||
|
||||
//社員データ件数を取得
|
||||
public static int getEmpCount() {
|
||||
return empCount;
|
||||
}
|
||||
|
||||
//社員IDが一致するか確認
|
||||
public boolean isMatchID(String id) {
|
||||
return this.idEmployee != null && this.idEmployee.equals(id);
|
||||
}
|
||||
|
||||
//社員情報を文字列として返す
|
||||
@Override
|
||||
public String toString() {
|
||||
|
||||
return this.getIdEmployee() + "\t"
|
||||
+ this.getNmEmployee() + "\t"
|
||||
+ this.getKnEmployee() + "\t"
|
||||
+ this.getMailAddress() + "\t"
|
||||
+ this.getPassword() + "\t"
|
||||
+ this.getIdDepartment();
|
||||
|
||||
}
|
||||
|
||||
//CSV形式で返す
|
||||
@Override
|
||||
public String toCSV() {
|
||||
|
||||
return this.getIdEmployee() + ","
|
||||
+ this.getNmEmployee() + ","
|
||||
+ this.getKnEmployee() + ","
|
||||
+ this.getMailAddress() + ","
|
||||
+ this.getPassword() + ","
|
||||
+ this.getIdDepartment();
|
||||
}
|
||||
|
||||
//社員IDを返す
|
||||
@Override
|
||||
public String getPrimaryKeyValue() {
|
||||
return this.getIdEmployee();
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,53 +1,250 @@
|
||||
|
||||
public class Main {
|
||||
|
||||
public static void main(String[] args) {
|
||||
// TODO 自動生成されたメソッド・スタブ
|
||||
|
||||
EmployeeData[] Employees = new EmployeeData[5];
|
||||
|
||||
Employees[0] = new EmployeeData();
|
||||
Employees[1] = new EmployeeData();
|
||||
Employees[2] = new EmployeeData();
|
||||
Employees[3] = new EmployeeData();
|
||||
Employees[4] = new EmployeeData();
|
||||
//Day3_5段階目:BaseData型で社員を作成
|
||||
// BaseData employee = new EmployeeData(
|
||||
// "10000",
|
||||
// "山田龍也",
|
||||
// "ヤマダタツヤ",
|
||||
// "yamada@hoge.jp",
|
||||
// "aaa",
|
||||
// "10"
|
||||
// );
|
||||
|
||||
Employees[0].idEmployee = "10000";
|
||||
Employees[0].nmEmployee = "山田龍也";
|
||||
Employees[0].knEmployee = "ヤマダタツヤ";
|
||||
Employees[0].mailAddress = "yamada@hoge.jp";
|
||||
Employees[0].password = "aaa";
|
||||
Employees[0].idDepartment = "10";
|
||||
// System.out.println(employee.toCSV());
|
||||
// System.out.println(employee.getPrimaryKeyValue());
|
||||
|
||||
Employees[1].idEmployee = "10001";
|
||||
Employees[1].nmEmployee = "高橋準";
|
||||
Employees[1].knEmployee = "タカハシジュン";
|
||||
Employees[1].mailAddress = "jtaka@hoge.jp";
|
||||
Employees[1].password = "bbb";
|
||||
Employees[1].idDepartment = "10";
|
||||
//Day3_5段階目:BaseData型の配列を作成
|
||||
BaseData[] Employees = new EmployeeData[5];
|
||||
|
||||
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[0] = new EmployeeData(
|
||||
"10000",
|
||||
"山田龍也",
|
||||
"ヤマダタツヤ",
|
||||
"yamada@hoge.jp",
|
||||
"aaa",
|
||||
"10"
|
||||
);
|
||||
|
||||
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[1] = new EmployeeData(
|
||||
"10001",
|
||||
"高橋準",
|
||||
"タカハシジュン",
|
||||
"jtaka@hoge.jp",
|
||||
"bbb",
|
||||
"10"
|
||||
);
|
||||
|
||||
Employees[4].idEmployee = "10004";
|
||||
Employees[4].nmEmployee = "三宅武";
|
||||
Employees[4].knEmployee = "ミヤケタケシ";
|
||||
Employees[4].mailAddress = "miya@hoge.jp";
|
||||
Employees[4].password = "eee";
|
||||
Employees[4].idDepartment = "13";
|
||||
Employees[2] = new EmployeeData(
|
||||
"10002",
|
||||
"麻枝史明",
|
||||
"マエダフミアキ",
|
||||
"fmak@hoge.jp",
|
||||
"ccc",
|
||||
"11"
|
||||
);
|
||||
|
||||
Employees[3] = new EmployeeData(
|
||||
"10003",
|
||||
"丸戸章介",
|
||||
"マルトショウスケ",
|
||||
"marusyo@hoge.jp",
|
||||
"ddd",
|
||||
"12"
|
||||
);
|
||||
|
||||
Employees[4] = new EmployeeData(
|
||||
"10004",
|
||||
"三宅武",
|
||||
"ミヤケタケシ",
|
||||
"miya@hoge.jp",
|
||||
"eee",
|
||||
"13"
|
||||
);
|
||||
|
||||
//社員+部署をまとめる配列
|
||||
BaseData[] allData = new BaseData[11];
|
||||
|
||||
//
|
||||
for (int i = 0; i < Employees.length; i++) {
|
||||
allData[i] = Employees[i];
|
||||
}
|
||||
|
||||
//部署データ6件
|
||||
DepartmentData dept1 = new DepartmentData();
|
||||
dept1.setIdDepartment("10");
|
||||
dept1.setNmDepartment("役員");
|
||||
|
||||
allData[5] = dept1;
|
||||
|
||||
DepartmentData dept2 = new DepartmentData();
|
||||
dept2.setIdDepartment("11");
|
||||
dept2.setNmDepartment("人事・総務部");
|
||||
|
||||
allData[6] = dept2;
|
||||
|
||||
DepartmentData dept3 = new DepartmentData();
|
||||
dept3.setIdDepartment("12");
|
||||
dept3.setNmDepartment("経理部");
|
||||
|
||||
allData[7] = dept3;
|
||||
|
||||
DepartmentData dept4 = new DepartmentData();
|
||||
dept4.setIdDepartment("13");
|
||||
dept4.setNmDepartment("システム開発事業部");
|
||||
|
||||
allData[8] = dept4;
|
||||
|
||||
DepartmentData dept5 = new DepartmentData();
|
||||
dept5.setIdDepartment("14");
|
||||
dept5.setNmDepartment("教育事業部");
|
||||
|
||||
allData[9] = dept5;
|
||||
|
||||
DepartmentData dept6 = new DepartmentData();
|
||||
dept6.setIdDepartment("15");
|
||||
dept6.setNmDepartment("営業企画部");
|
||||
|
||||
allData[10] = dept6;
|
||||
|
||||
//6段階目
|
||||
//全データ表示
|
||||
// for (int i = 0; i < allData.length; i++) {
|
||||
// System.out.println(allData[i]);
|
||||
// }
|
||||
|
||||
//7段階目:instanceofで件数を数える
|
||||
// int employeeCount = 0;
|
||||
// int departmentCount = 0;
|
||||
//
|
||||
// for(int i = 0; i < allData.length; i++) {
|
||||
// if(allData[i] instanceof EmployeeData) {
|
||||
// employeeCount++;
|
||||
// }
|
||||
//
|
||||
// if(allData[i] instanceof DepartmentData) {
|
||||
// departmentCount++;
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// System.out.println("社員データ" + employeeCount + "件");
|
||||
// System.out.println("部署データ" + departmentCount + "件");
|
||||
|
||||
//8段階目
|
||||
//全社員のメールアドレスを表示
|
||||
// for(int i = 0; i < allData.length; i++) {
|
||||
// if(allData[i] instanceof EmployeeData) {
|
||||
// EmployeeData employeeData = (EmployeeData) allData[i];
|
||||
//
|
||||
// System.out.println(employeeData.getMailAddress());
|
||||
// }
|
||||
// }
|
||||
|
||||
//部署名から社員を検索
|
||||
String targetDepartmentId = null;
|
||||
|
||||
for(int i = 0; i < allData.length;i++) {
|
||||
if(allData[i] instanceof DepartmentData) {
|
||||
DepartmentData departmentData = (DepartmentData) allData[i];
|
||||
|
||||
if(departmentData.getNmDepartment().equals("システム開発事業部")) {
|
||||
|
||||
targetDepartmentId = departmentData.getIdDepartment();
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
for (int i = 0; i < allData.length; i++) {
|
||||
if(allData[i] instanceof EmployeeData) {
|
||||
EmployeeData employeeData = (EmployeeData) allData[i];
|
||||
|
||||
if(employeeData.getIdDepartment().equals(targetDepartmentId)) {
|
||||
|
||||
System.out.println(employeeData.getNmEmployee() + "\t" + employeeData.getMailAddress());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Employees[0].setIdEmployee("10000");
|
||||
// Employees[0].setNmEmployee("山田龍也");
|
||||
// Employees[0].setKnEmployee("ヤマダタツヤ");
|
||||
// Employees[0].setMailAddress("yamada@hoge.jp");
|
||||
// Employees[0].setPassword("aaa");
|
||||
// Employees[0].setIdDepartment("10");
|
||||
|
||||
// System.out.println("10000を検索します");
|
||||
// System.out.println(Employees[0].isMatchID("10000"));
|
||||
|
||||
// Employees[1].setIdEmployee("10001");
|
||||
// Employees[1].setNmEmployee("高橋準");
|
||||
// Employees[1].setKnEmployee("タカハシジュン");
|
||||
// Employees[1].setMailAddress("jtaka@hoge.jp");
|
||||
// Employees[1].setPassword("bbb");
|
||||
// Employees[1].setIdDepartment("10");
|
||||
|
||||
// Employees[2].setIdEmployee("10002");
|
||||
// Employees[2].setNmEmployee("麻枝史明");
|
||||
// Employees[2].setKnEmployee("マエダフミアキ");
|
||||
// Employees[2].setMailAddress("fmak@hoge.jp");
|
||||
// Employees[2].setPassword("ccc");
|
||||
// Employees[2].setIdDepartment("11");
|
||||
|
||||
// Employees[3].setIdEmployee("10003");
|
||||
// Employees[3].setNmEmployee("丸戸章介");
|
||||
// Employees[3].setKnEmployee("マルトショウスケ");
|
||||
// Employees[3].setMailAddress("marusyo@hoge.jp");
|
||||
// Employees[3].setPassword("ddd");
|
||||
// Employees[3].setIdDepartment("12");
|
||||
|
||||
// Employees[4].setIdEmployee("10004");
|
||||
// Employees[4].setNmEmployee("三宅武");
|
||||
// Employees[4].setKnEmployee("ミヤケタケシ");
|
||||
// Employees[4].setMailAddress("miya@hoge.jp");
|
||||
// Employees[4].setPassword("eee");
|
||||
// Employees[4].setIdDepartment("13");
|
||||
|
||||
//5人分の社員情報を表示
|
||||
// for (int i = 0; i < Employees.length; i++) {
|
||||
// System.out.println(Employees[i]);
|
||||
//
|
||||
// }
|
||||
//社員データの件数を表示
|
||||
// System.out.println("現在の社員データ件数:" + EmployeeData.getEmpCount() + "件");
|
||||
|
||||
//社員ID検索機能
|
||||
// Scanner scanner = new Scanner(System.in);
|
||||
|
||||
// while(true) {
|
||||
// System.out.println("検索したい社員IDを入力してください(終了する場合は0)");
|
||||
// String id = scanner.nextLine();
|
||||
|
||||
// if(id.equals("0")) {
|
||||
// System.out.println("システムを終了します");
|
||||
// break;
|
||||
// }
|
||||
|
||||
// boolean found = false;
|
||||
|
||||
// for (int i = 0; i < Employees.length; i++) {
|
||||
//
|
||||
// if(Employees[i].getPrimaryKeyValue().equals(id)) {
|
||||
// System.out.println(Employees[i]);
|
||||
// found = true;
|
||||
// break;
|
||||
// }
|
||||
|
||||
|
||||
|
||||
// }
|
||||
//
|
||||
// if(found == false) {
|
||||
// System.out.println("該当する社員が見つかりませんでした");
|
||||
// }
|
||||
// }
|
||||
// Employees[0].showInfo();
|
||||
//
|
||||
// System.out.println(Employees.idEmployee);
|
||||
// System.out.println(Employees.nmEmployee);
|
||||
// System.out.println(Employees.knEmployee);
|
||||
@@ -55,10 +252,6 @@ public class Main {
|
||||
// System.out.println(Employees.password);
|
||||
// System.out.println(Employees.idDepartment);
|
||||
|
||||
for (int i = 0; i < Employees.length; i++) {
|
||||
Employees[i].showInfo();
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -1,20 +1,41 @@
|
||||
//
|
||||
//public abstract class Shape {
|
||||
//
|
||||
// private String name;
|
||||
//
|
||||
// public Shape(String name) {
|
||||
// this.name = name;
|
||||
//
|
||||
// }
|
||||
//
|
||||
// public abstract double area();
|
||||
// //return 0.0;
|
||||
//
|
||||
//
|
||||
//
|
||||
// public void showInfo() {
|
||||
// //System.out.println(this.name + "の面積は" + this.area() + "です");
|
||||
//
|
||||
// }
|
||||
public class Shape {
|
||||
|
||||
public abstract class Shape {
|
||||
|
||||
//フィールド作成
|
||||
private String name;
|
||||
|
||||
|
||||
//コンストラクタ作成
|
||||
public Shape(String name) {
|
||||
this.name = name;
|
||||
|
||||
}
|
||||
|
||||
public abstract double area();
|
||||
//return 0.0;
|
||||
|
||||
|
||||
|
||||
public void showInfo() {
|
||||
//System.out.println(this.name + "の面積は" + this.area() + "です");
|
||||
|
||||
|
||||
//メソッド作成
|
||||
double area() {
|
||||
return 0.0;
|
||||
}
|
||||
|
||||
//メソッド作成
|
||||
void showInfo() {
|
||||
//出力
|
||||
System.out.println(this.name + "の面積は" + this.area() + "です");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user