9 Commits

Author SHA1 Message Date
2c6742fd26 2日目_段階3完了 2026-09-18 10:56:38 +09:00
9780db9a8f ミッション課題 2026-09-18 10:28:27 +09:00
439556d4cc Day3課題2
q5の1~3まで終了
2026-09-17 13:55:31 +09:00
012cbcd562 3日目_1段階 2026-09-16 15:59:09 +09:00
f4acecff05 1日目_段階4_完了 2026-09-15 16:12:18 +09:00
cdf731795f 一日目_段階3_完了 2026-09-15 15:50:41 +09:00
c82f9ca678 2日目_段階1_完了 2026-09-15 14:36:27 +09:00
7559a7dfa7 段階2完了いたしました。 2026-09-14 16:36:18 +09:00
43567c0e0c 1段階目完了 2026-09-14 15:14:17 +09:00
19 changed files with 450 additions and 1 deletions

6
.classpath Normal file
View File

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

1
.gitignore vendored
View File

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

17
.project Normal file
View File

@@ -0,0 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>java-cui-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

@@ -3,6 +3,22 @@ public class BasicCheck1 {
public static void main(String[] args) {
// TODO 自動生成されたメソッド・スタブ
// Book book = new Book();
// book.title = "吾輩は猫である";
// book.author ="夏目漱石";
// book.price = 800;
Book book1 = new Book();
System.out.println(book1.title);
System.out.println(book1.author);
System.out.println(book1.price);
Book book2 = new Book("銀河鉄道の夜","宮沢賢治", 500);
System.out.println(book2.title);
System.out.println(book2.author);
System.out.println(book2.price);
}

View File

@@ -0,0 +1,36 @@
public class BasicCheck2 {
public static void main(String[] args) {
// Student student = new Student(3,"a");
//Student型のstudentを宣言、インスタンスを代入する
Student student1 = new Student(1,"鈴木一郎");
Student student2 = new Student(2, "田中花子");
Student student3 = new Student(3,"佐藤次郎");
// student1.studentId = 1;
// student1.name = "鈴木一郎";
// //studentIDに1,nameに鈴木一郎を代入
//
// student2.studentId = 2;
// student2.name ="田中花子";
//
// student3.studentId = 3;
// student3.name ="佐藤次郎";
//
//studentのprintProfileメソッドを呼び出す
student1.printProfile();
student2.printProfile();
student3.printProfile();
}
}
//
//System.out.print("学籍番号"+student.studentId);
//System.out.print("名前:" + student.name);

View File

@@ -0,0 +1,53 @@
public class BasicCheck3 {
public static void main(String[] args){
Item[] items = new Item[3];
items[0] = new Item();
items[0].setName("ノート");
items[0].setPrice(80);
items[0].setStock(50);
items[1] = new Item();
items[1].setName("ノート");
items[1].setPrice(120);
items[1].setStock(30);
items[2] = new Item();
items[2].setName("ノート");
items[2].setPrice(60);
items[2].setStock(100);
for(int i = 0; i < items.length; i++ )
{
items[i].sell(5);
}
System.out.println("在庫");
for(int i = 0; i < items.length; i ++) {
//items[i]をprintlnに渡すとitemクラスのtoStringが自動で呼ばれる
System.out.println(items[i]);
// System.out.println("商品名" + items[i].name+ "価格" + items[i].price +"在庫" + items[i].stock);
// System.out.println("価格" + items[i].price);
// System.out.println("在庫" + items[i].stock);
}
// Item 0 = new Item("ノート", 120, 50);
}
}

View File

@@ -1,4 +1,24 @@
public class Book {
public String title;
public String author;
public int price;
//引数なしコンストラクタ
public Book() {
this.title = "タイトル未設定";
this.author = "著者未設定";
this.price = 0;
// System.out.println("コンストラクタが呼び出されました");
}
//引数ありコンストラクタ
public Book(String title, String author, int price) {
// System.out.println("引数なしのコンストラクタが呼び出されました");
this.title = title;
this.author = author;
this.price = price;
}
}

21
em-oop/src/Circle.java Normal file
View File

@@ -0,0 +1,21 @@
public class Circle extends Shape { //shapeクラスを継承する
private double radius; //radius: 半径 フィールドradius (double型、private)
public Circle(double radius) { //コンストラクタpub 引数dou/raを受け取る
super("円"); //"円"呼び出し 文字列
this.radius = radius; //radiusフィールドにも引数の値を代入する。
}
public double area() { //Overrideは 子クラスで!
return Math.PI * radius * radius;
}
public void showInfo(){
super.showInfo();
System.out.println("(半径:" + this.radius + ")");
}
}

View File

@@ -0,0 +1,14 @@
public class Day3Check1 {
public static void main(String[] args) {
Circle circle = new Circle(2);
circle.area();
circle.showInfo();
// Rectangle rectangle = new Rectangle(2);
// rectangle.area();
}
}

View File

@@ -0,0 +1,22 @@
public class Day3Check2 {
public static void main(String[] args) {
//Rect-クラスをもとにrect-のインスタンスつくる
//3,4をRectangleのコンストラクタに渡す
Rectangle rectangle = new Rectangle(3, 4);
//Rect-はShapeを継承しているため親クラスのshowInfoメソッドを使える
rectangle.showInfo();
//JaGrクラスをもとにインスタンスをつくる
//変数の型はGreetingインタフェース型にしている
Greeting greeting = new JapaneseGreeting();
//greeetingのhelloメソッドよびだす
//実際に入っているインスタンスはJaGrなのでJaGrで作ったhello()が実行される
System.out.println(greeting.hello());
}
}

View File

@@ -0,0 +1,15 @@
public class Day3Check3 {
public static void main(String[] args) {
//Shape型の変数にCircleのインスタンスを代入
Shape shape1 = new Circle(2);
//円の情報を表示
shape1.showInfo();
//Shape型の変数にRectangleのインスタンスを代入
Shape shape2 = new Rectangle(3, 4);
//四角形の情報を表示
shape2.showInfo();
}
}

View File

@@ -0,0 +1,21 @@
public class EmployeeData {
public static void main(String args[]) {
String idEmployee;
String nmEmployee;
String knEmployee;
String mailAddress;
String password;
String idDepartment;
}
// public EmployeeData() {
// this.idEmployee = "";
// }
public void showinfo() {
System.out.println();
}
}

4
em-oop/src/Greeting.java Normal file
View File

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

54
em-oop/src/Item.java Normal file
View File

@@ -0,0 +1,54 @@
public class Item {
//フィールドを宣言・外から触れないようにprivate
private String name;
private int price;
private int stock;
//nameを取得するgetter
public String getName() {
return name;
}
//nameを設定するsetter
public void setName(String name) { //item="ノート"はもう使えない。item[0].setName("ノート")にしている
this.name = name;
}
//priceを取得するgetter
public int getPrice() {
return price;
}
//priceを設定するsetter
public void setPrice(int price) {
this.price = price;
}
//stockを取得するgetter
public int getStock() {
return stock;
}
public void setStock(int stock) {
this.stock = stock;
}
// Item(String name, int price, int stock){
// this.name = name;
// this.price = price;
// this.stock = stock;
// }
//売れた数を在庫から引く
public void sell(int amount) {
this.setStock(this.getStock() - amount);
}
//Itemの情報を文字列として返す
@Override
public String toString() {
return getName() + "" + getPrice() + "円(残り" + getStock() + "個)";
}
}

View File

@@ -0,0 +1,13 @@
//JaGrクラスを作る、implements GrによってGreetingインターフェースを実装する
public class JapaneseGreeting implements Greeting {
//Grインターフェースで定義されているhello()メソッドをこのクラスに実装する
@Override
public String hello() {
//hello()が呼び出されたらString型の文字列を呼び出し元に返す
return "こんにちは";
}
}

25
em-oop/src/Main.java Normal file
View File

@@ -0,0 +1,25 @@
public class Main {
public static void main(String[] args) {
EmployeeData employee = new EmployeeData() ;
String idEmployee = "10000";
String nmEmployee = "山田龍也";
String knEmployee = "ヤマダタツヤ";
String mailAddress = "yamada@hoge.jp";
String password = "aaa";
String idDepartment = "10";
// System.out.println(employee);
System.out.println(idEmployee);
System.out.println(nmEmployee);
System.out.println(knEmployee);
System.out.println(mailAddress);
System.out.println(password);
System.out.println(idDepartment);
}
}

22
em-oop/src/Rectangle.java Normal file
View File

@@ -0,0 +1,22 @@
public class Rectangle extends Shape {
private double width;
private double height; {
}
public Rectangle(double width, double height) {
super("四角形");
this.width = width;
this.height = height;
}
public double area() {
return width * height;
}
// public void showInfo(){
// super.showInfo();
// System.out.println("(半径:" + this.area + ")");
// }
}

36
em-oop/src/Shape.java Normal file
View File

@@ -0,0 +1,36 @@
public abstract class Shape {
private String name; //フィールドname ・privateにしなきゃいけない
// public double area;
// public int radius;
public Shape() {
}
public Shape(String name) {
this.name = name; //Circleが"円"を呼び出すための文字列をいれるところ
}
public abstract double area();{ //メソッドarea 引数なし・戻り値double 中身return0.0;
// return 0.0;
}
// @Override
public void showInfo(){ //メソッドshowinfo 引数戻り値なし・中身はsyso
System.out.println(this.name + "の面積は" + this.area() + "です");
// System.out.println("(半径:" + this.radius + ")");
System.out.println("四角形" + "の面積は" + this.area() + "です。");
}
// @Override
// public void showInfo(){
//
// }
}

53
em-oop/src/Student.java Normal file
View File

@@ -0,0 +1,53 @@
public class Student {//クラス新規作成
int studentId; //フィールドを宣言 int
String name; //String
static int studentCount = 0; //生徒が何人作られたかを数えるための、クラス全体で共有するフィールド
void printProfile() {//メソッドを宣言・以下の内容をsysoで出力
// for(int i = 0; i <= 3; i++) {
System.out.println("学籍番号:" + this.studentId + " 名前:" + this.name);
// }
// System.out.println("学籍番号:" + this.studentId + " 名前:" + this.name);
}
public Student(int studentId, String name) { //コンストラクタを追加
this.studentId = studentId; //渡された引数をそれぞれ対応するフィールドに代入する
this.name = name;
studentCount++;
}
public static int getStudentCount() {
// studentCount++;
return studentCount;
}
}
// public static void main(String[] args) {
// Student s = new Student(1,"鈴木一郎");
// s.printProfile();
//
//
// public Student(int studentId, String name) {
// student.studentId = 1;