19 Commits

Author SHA1 Message Date
06dedc4519 個人開発の修正です 2026-09-24 16:53:41 +09:00
83691c5691 2日目段階7です 2026-09-24 15:28:04 +09:00
a7ab96fe7d 3日目段階6です 2026-09-24 14:38:36 +09:00
434cf3e643 3日目段階5です 2026-09-24 13:26:05 +09:00
32a194f04c 3日目段階4です 2026-09-24 13:16:31 +09:00
f33c62d2db 3日目段階3です 2026-09-24 12:38:19 +09:00
314824d53e 1日目段階9です 2026-09-24 11:29:47 +09:00
7216162522 1日目段階7,8です 2026-09-24 09:44:50 +09:00
07a204e760 2日目段階6です 2026-09-18 12:59:07 +09:00
27bbe22c0d 2日目段階5です 2026-09-18 12:52:05 +09:00
b6f3df93ed 2日目段階2~4です 2026-09-18 11:34:35 +09:00
90ac263e9c 3日目段階2です 2026-09-16 17:07:23 +09:00
bafd218505 3日目段階1です 2026-09-16 15:54:10 +09:00
6284d105e5 2日目段階1です 2026-09-15 16:40:14 +09:00
04dfa16363 1日目段階6です 2026-09-15 15:38:24 +09:00
75e148e07d 1日目段階5です。 2026-09-15 14:42:05 +09:00
7801e6afa8 一日目の段階4です。 2026-09-15 14:31:38 +09:00
910a102d72 段階2です。 2026-09-14 15:21:51 +09:00
e7f0dfff43 段階1です。 2026-09-14 15:00:59 +09:00
23 changed files with 297 additions and 250 deletions

1
.gitignore vendored
View File

@@ -25,3 +25,4 @@ hs_err_pid*
replay_pid* replay_pid*
/.metadata/ /.metadata/
/bin/

View File

@@ -1,6 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry kind="src" path="src"/>
<classpathentry kind="output" path="bin"/>
</classpath>

2
em-oop/.gitignore vendored
View File

@@ -1,2 +0,0 @@
/bin/
/.metadata/

View File

@@ -1,17 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>em-oop</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.jdt.core.javabuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.jdt.core.javanature</nature>
</natures>
</projectDescription>

View File

@@ -1,9 +1,8 @@
public abstract class BaseData { public abstract class BaseData {
//抽象メソッドを宣言
public abstract String toString(); public abstract String toString();
public abstract String toCSV(); public abstract String toCSV();
public abstract String getPrimaryKeyValue(); public abstract String getPrimaryKeyValue();
} }

View File

@@ -2,21 +2,16 @@
public class BasicCheck1 { public class BasicCheck1 {
public static void main(String[] args) { public static void main(String[] args) {
//Book book = new Book();
Book book1 = new Book();
Book book2 = new Book("銀河鉄道の夜", "宮沢賢治", 500);
// book.title = "吾輩は猫である"; // book.title = "吾輩は猫である";
// book.author = "夏目漱石"; // book.author = "夏目漱石";
// book.price = 800; // book.price = 800;
//System.out.println(book.title); System.out.println(book1.title +"\n"+ book1.author +"\n"+ book1.price);
//System.out.println(book.author); System.out.println(book2.title +"\n"+ book2.author +"\n"+ book2.price);
//System.out.println(book.price);
//引数なし
Book book1 = new Book();
//引数あり
Book book2 = new Book("銀河鉄道の夜", "宮沢賢治", 500);
} }

View File

@@ -1,21 +1,26 @@
public class BasicCheck2 { public class BasicCheck2 {
public static void main(String[] args) { public static void main(String[] args) {
//変数宣言 // TODO 自動生成されたメソッド・スタブ
Student students = new Student(); Student student1 = new Student(1, "鈴木一郎");
//代入
//student.studentId = 1;
//student.name = "鈴木一郎";
//student.printProfile();
Student students1 = new Student(1, "鈴木一郎"); // student1.studentId = 1;
Student students2 = new Student(2, "田中花子"); // student1.name = "鈴木一郎";
Student students3 = new Student(3, "佐藤次郎"); student1.printProfile();
students1.printProfile(); Student student2 = new Student(2, "田中花子");
students2.printProfile();
students3.printProfile();
System.out.println("現在の生徒数:" + Student.getstudentCount() + "人"); student2.printProfile();
Student student3 = new Student(3, "佐藤次郎");
student3.printProfile();
Student.getStudentCount();{
System.out.println("現在の生徒数:" + Student.studentCount + "人");
} }
}
} }

View File

@@ -2,34 +2,51 @@
public class BasicCheck3 { public class BasicCheck3 {
public static void main(String[] args) { public static void main(String[] args) {
//配列3件分 // TODO 自動生成されたメソッド・スタブ
Item[] items = new Item[3];
//newインスタンス代入
items[0] = new Item();
items[0].setName("ノート");
items[0].setPrice(120);
items[0].setStock(50);
items[1] = new Item();
items[1].setName("消しゴム");
items[1].setPrice(80);
items[1].setStock (30);
items[2] = new Item();
items[2].setName("鉛筆");
items[2].setPrice(60);
items[2].setStock(100);
//for文残り数の引き算 Item[] items = new Item[3];
for (int i = 0; i <= 2 ; i++) {
Item item0 = new Item();
Item item1 = new Item();
Item item2 = new Item();
items[0] = item0;
items[1] = item1;
items[2] = item2;
item0.setName("ノート");
item0.setPrice(120);
item0.setStock(50);
item1.setName("消しゴム");
item1.setPrice(80);
item1.setStock(30);
item2.setName("鉛筆");
item2.setPrice(60);
item2.setStock(100);
// item1.setName = "ノート";
// item1.price = 120;
// item1.stock = 50;
//
// Item item2 = new Item();
//
// item2.name = "消しゴム";
// item2.price = 80;
// item2.stock = 30;
//
// Item item3 = new Item();
//
// item3.name = "鉛筆";
// item3.price = 60;
// item3.stock = 100;
for (int i = 0; i < items.length; i++) {
items[i].sell(5); items[i].sell(5);
}
//3件出力
for (int i = 0; i <= 2 ; i++) {
System.out.println(items[i]); System.out.println(items[i]);
} }
} }

View File

@@ -1,21 +1,20 @@
public class Book { public class Book {
String title; public String title;
String author; public String author;
int price; public int price;
//コンストラクタ生成
public Book() { public Book() {
System.out.println( "タイトル未設定"); title = "タイトル未設定";
System.out.println( "著者未設定"); author = "著者未設定";
System.out.println( "0"); price = 0;
} }
//3つの引数を持つコンストラクタ生成
public Book(String title, String author, int price) { public Book(String title, String author, int price) {
System.out.println(this.title = title); this.title = title;
System.out.println(this.author = author); this.author = author;
System.out.println(this.price = price); this.price = price;
} }
} }

View File

@@ -1,21 +1,22 @@
public class Circle extends Shape { public class Circle extends Shape {
//フィールド
private double radius; private double radius;
//コンストラクタ
public Circle(double radius) { public Circle(double radius) {
super("円"); super("円");
this.radius = radius; this.radius = radius;
} }
//メソッド1
@Override @Override
public double area() { public double area() {
return Math.PI * radius * radius; return Math.PI * radius * radius;
} }
//メソッド2
@Override @Override
public void showInfo() { public void showInfo() {
super.showInfo(); super.showInfo();
System.out.println("半径:" + this.radius + ""); System.out.println("(半径:" + this.radius + ")");
} }
} }

View File

@@ -1,10 +0,0 @@
public class Day3Check1 {
public static void main(String[] args) {
//インスタンス
Circle circle = new Circle(2.0);
circle.showInfo();
}
}

View File

@@ -2,16 +2,12 @@
public class Day3Check2 { public class Day3Check2 {
public static void main(String[] args) { public static void main(String[] args) {
//インスタンス // TODO 自動生成されたメソッド・スタブ
Rectangle rect = new Rectangle(3.0,4.0); Rectangle Rectangle = new Rectangle(3, 4);
//メソッド呼び出し Rectangle.showInfo();
rect.showInfo();
//戻り値出力
//Greeting greeting = new JapaneseGreeting();
//System.out.println();
//インスタンスを代入
Greeting greeting = new JapaneseGreeting(); Greeting greeting = new JapaneseGreeting();
System.out.println(greeting.hello()); System.out.println(greeting.hello());
} }
} }

View File

@@ -3,14 +3,12 @@ public class Day3Check3 {
public static void main(String[] args) { public static void main(String[] args) {
// TODO 自動生成されたメソッド・スタブ // TODO 自動生成されたメソッド・スタブ
//インスタンスを代入
Shape shape1 = new Circle(2); Shape shape1 = new Circle(2);
//メソッド呼び出し
shape1.showInfo(); shape1.showInfo();
//インスタンスを代入
Shape shape2 = new Rectangle(3, 4); Shape shape2 = new Rectangle(3, 4);
//メソッド呼び出し
shape2.showInfo(); shape2.showInfo();
} }

View File

@@ -0,0 +1,9 @@
public class DayCheck1 {
public static void main(String[] args) {
Circle radius = new Circle(2);
radius.showInfo();
}
}

View File

@@ -0,0 +1,39 @@
public class DepartmentData extends BaseData {
private String idDepartment;
private String nmDepartment;
public DepartmentData(String idDepartment, String nmDepartment) {
setIdDepartment(idDepartment);
setNmDepartment(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 getIdDepartment() + "\t" + getNmDepartment();
}
public String toCSV() {
return getIdDepartment() + "," + getNmDepartment();
}
public String getPrimaryKeyValue() {
return getIdDepartment();
}
}

View File

@@ -1,11 +1,27 @@
public class EmployeeData extends BaseData { public class EmployeeData extends BaseData {
//フィールド宣言 private String idEmployee;
private String idEmployee;//社員ID private String nmEmployee;
private String nmEmployee;//社員名 private String knEmployee;
private String knEmployee;//社員カナ private String mailAddress;
private String mailAddress;//メールアドレス private String password;
private String password;//パスワード private String idDepartment;
private String idDepartment;//部署ID private static int empCount = 0;
EmployeeData() {
empCount = empCount + 1;
}
EmployeeData(String idEmployee, String nmEmployee, String knEmployee, String mailAddress, String password,
String idDepartment) {
setIdEmployee(idEmployee);
setNmEmployee(nmEmployee);
setKnEmployee(knEmployee);
setMailAddress(mailAddress);
setPassword(password);
setIdDepartment(idDepartment);
empCount = empCount + 1;
}
public String getIdEmployee() { public String getIdEmployee() {
return idEmployee; return idEmployee;
@@ -20,6 +36,15 @@ public class EmployeeData extends BaseData {
} }
public void setNmEmployee(String nmEmployee) { public void setNmEmployee(String nmEmployee) {
// 2日目段階8
// String stripped = nmEmployee.strip();
// int length = stripped.length();
// if (nmEmployee == null) {
// System.out.println("社員名が空のため設定できませんでした");
// }
// if (length == 0) {
// System.out.println("社員名が空のため設定できませんでした");
// } else
this.nmEmployee = nmEmployee; this.nmEmployee = nmEmployee;
} }
@@ -55,59 +80,36 @@ public class EmployeeData extends BaseData {
this.idDepartment = idDepartment; this.idDepartment = idDepartment;
} }
//メソッド追加 public static int getEmpCount() {
void showInfo() { return empCount;
System.out.println(getIdEmployee()); }
System.out.println(getNmEmployee());
System.out.println(getKnEmployee()); public static void setEmpCount(int empCount) {
System.out.println(getMailAddress()); EmployeeData.empCount = empCount;
System.out.println(getPassword());
System.out.println(getIdDepartment());
} }
//上記メソッドの書き換え
@Override @Override
public String toString() { public String toString() {
return getIdEmployee() + "\t"+ return getIdEmployee() + "\t" + getNmEmployee() + "\t" + getKnEmployee() + "\t" + getMailAddress()
getNmEmployee() + "\t"+ + "\t" + getPassword() + "\t" + getIdDepartment();
getKnEmployee() + "\t"+
getMailAddress() + "\t"+
getPassword() + "\t"+
getIdDepartment();
} }
//コンストラクタ追加(引数なし) // public boolean isMatchId(String id) {
public EmployeeData() { //
} // return idEmployee.equals(id);
//
// }
//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);
}
//メソッド2つ追加
@Override
public String toCSV() { public String toCSV() {
return getIdEmployee() + "," + getNmEmployee() + "," + getKnEmployee() + "," + getMailAddress() + "," return getIdEmployee() + "," + getNmEmployee() + "," + getKnEmployee() + "," + getMailAddress()
+ getPassword() + "," + getIdDepartment(); + "," + getPassword() + "," + getIdDepartment();
} }
@Override
public String getPrimaryKeyValue() { public String getPrimaryKeyValue() {
return this.idEmployee; return idEmployee;
} }
//メソッド追加、7段目 public static int empCount() {
public boolean isMatchID(String id) { return empCount;
return idEmployee.equals(id);
} }
} }

View File

@@ -1,3 +1,4 @@
public interface Greeting { public interface Greeting {
String hello(); String hello();
} }

View File

@@ -1,16 +1,21 @@
public class Item { public class Item {
//フィールド宣言
private String name; private String name;
private int price; private int price;
private int stock; private int stock;
//メソッド宣言 // void sell(int amount) {
void sell(int amount) { // this.stock = this.stock - amount;
this.setStock(this.getStock() - amount);
public void sell(int amount) {
setStock(this.getStock() - amount);
} }
//ゲッター、セッター設定 @Override
public String toString() {
String output = getName() + " " + getPrice() + "円 (残り" + getStock() + "個)";
return output;
}
public String getName() { public String getName() {
return name; return name;
@@ -35,8 +40,5 @@ public class Item {
public void setStock(int stock) { public void setStock(int stock) {
this.stock = stock; this.stock = stock;
} }
@Override
public String toString() {
return getName() + " " + getPrice() + "円 (残り" + getStock() + "個)";
}
} }

View File

@@ -1,7 +1,10 @@
public class JapaneseGreeting implements Greeting { public class JapaneseGreeting implements Greeting {
@Override @Override
public String hello() { public String hello() {
// TODO 自動生成されたメソッド・スタブ
return "こんにちは"; return "こんにちは";
} }
} }

View File

@@ -4,52 +4,76 @@ public class Main {
public static void main(String[] args) { public static void main(String[] args) {
// TODO 自動生成されたメソッド・スタブ // TODO 自動生成されたメソッド・スタブ
//インスタンス宣言
BaseData employee = new EmployeeData();
//配列5件分
BaseData[] employees = new BaseData[5];
//5段階目書き換え
employees[0] = new EmployeeData("10000", "山田龍也", "ヤマダタツヤ", "yamada@hoge.jp", "aaa", "10");
employees[1] = new EmployeeData("10001", "高橋準", "タカハシジュン", "jtaka@hoge.jp", "bbb", "10");
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");
//5段階目記載の処理呼び出し
//employee.showInfo();
//Day1、8段階目検索
while (true) { while (true) {
Scanner sc = new Scanner(System.in);//インスタンス化
System.out.println("検索したい社員IDを入力してください(終了する場合は0を入力)");
String id = sc.next();
System.out.println("検索したい社員IDを入力してください(終了したい場合は0)");
Scanner scanner = new Scanner(System.in);
String id = scanner.nextLine();
boolean bo = false;
BaseData[] allData = new BaseData[11];
BaseData employee = new EmployeeData("10000", "山田龍也", "ヤマダタツヤ", "yamada@hoge.jp", "aaa", "10");
BaseData employee1 = new EmployeeData("10001", "高橋準", "タカハシジュン", "jtaka@hoge.jp", "bbb", "10");
BaseData employee2 = new EmployeeData("10002", "麻枝史明", "マエダフミアキ", "fmak@hoge.jp", "ccc", "11");
BaseData employee3 = new EmployeeData("10003", "丸戸章介", "マルトショウスケ", "marusyo@hoge.jp", "ddd", "12");
BaseData employee4 = new EmployeeData("10004", "三宅武", "ミヤケタケシ", "miya@hoge.jp,eee", "eee", "13");
allData[0] = employee;
allData[1] = employee1;
allData[2] = employee2;
allData[3] = employee3;
allData[4] = employee4;
BaseData dept = new DepartmentData("10", "役員");
BaseData dept1 = new DepartmentData("11", "人事・総務部");
BaseData dept2 = new DepartmentData("12", "経理部");
BaseData dept3 = new DepartmentData("13", "システム開発事業部");
BaseData dept4 = new DepartmentData("14", "教育事業部");
BaseData dept5 = new DepartmentData("15", "営業企画部");
allData[5] = dept;
allData[6] = dept1;
allData[7] = dept2;
allData[8] = dept3;
allData[9] = dept4;
allData[10] = dept5;
// for (int i = 0; i < allData.length; i++) {
// System.out.println(allData[i]);
// }
// System.out.println("現在の社員データ件数"+ EmployeeData.getEmpCount()+ "件");
for (int i = 0; i < allData.length; i++) {
// System.out.println(employees[i]);
if (allData[i].getPrimaryKeyValue().equals(id)) {
bo = true;
System.out.println(allData[i]);
// System.out.println(employee.toCSV());
// System.out.println(employee.getPrimaryKeyValue());
}
// employees[i].isMatchId("10002");
// employees[i].isMatchId("99999");
continue;
}
if (bo == false && !id.equals("0")) {
System.out.println("該当する社員が見つかりませんでした");
}
if (id.equals("0")) { if (id.equals("0")) {
System.out.println("システムを終了します"); System.out.println("システムを終了します");
break; break;
} }
//boolean変数作成
boolean result = false;
//該当の場合
for (int i = 0; i < employees.length; i++) {
if (employees[i].getPrimaryKeyValue().equals(id)) {
result = true;
System.out.println(employees[i]);
break;
}
}
if (result == false) {
System.out.println("該当する社員が見つかりませんでした(終了する場合は0を入力)");
} }
} }
//for文
//for (int i = 0; i < employees.length; i++) {
//System.out.println(employees[i]);
//System.out.println(employees[i].toCSV());
//System.out.println(employees[i].getPrimaryKeyValue());
//employees[i].showInfo();を上記に書き換え
} }
}

View File

@@ -1,17 +1,15 @@
public class Rectangle extends Shape { public class Rectangle extends Shape {
//フィールド
private double width; private double width;
private double height; private double height;
//コンストラクタ
public Rectangle(double width, double height) { public Rectangle(double width, double height) {
super("四角形"); super("四角形");
this.width = width;
this.height = height; this.height = height;
this.width = width;
} }
//抽象メソッドのオーバーライド
@Override @Override
public double area() { public double area() {
return width * height; return width * height;

View File

@@ -1,18 +1,15 @@
public abstract class Shape { public abstract class Shape {
//フィールド宣言
private String name; private String name;
//コンストラクタ
public Shape(String name) { public Shape(String name) {
this.name = name; this.name = name;
} }
//メソッド1(抽象メソッド)
public abstract double area(); public abstract double area();
//メソッド2 public void showInfo() {
void showInfo() {
System.out.println(this.name + "の面積は" + this.area() + "です"); System.out.println(this.name + "の面積は" + this.area() + "です");
} }
} }

View File

@@ -1,28 +1,24 @@
public class Student { public class Student {
//フィールド宣言
int studentId; int studentId;
String name; String name;
//フィールド追加
static int studentCount = 0; static int studentCount = 0;
{
//メソッド宣言 studentCount++;
void printProfile() {
System.out.println("学籍番号:" + this.studentId + " 名前:" + this.name);
} }
//コントラクタ追加 Student(int studentId, String name) {
public Student(int studentId, String name) {
this.studentId = studentId; this.studentId = studentId;
this.name = name; this.name = name;
} }
public Student() {
// TODO 自動生成されたコンストラクター・スタブ
}
//コントラクタ追加 public static int getStudentCount() {
public static int getstudentCount() {
return studentCount; return studentCount;
}
void printProfile() {
System.out.println("学籍番号:" + this.studentId + " 名前:" + this.name);
} }