This commit is contained in:
ldy
2026-03-01 23:18:55 -05:00
commit 67f753a5d1
3087 changed files with 218259 additions and 0 deletions

View File

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

View File

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

@@ -0,0 +1,2 @@
eclipse.preferences.version=1
encoding/<project>=UTF-8

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -0,0 +1,24 @@
public class Airplane implements Flyer{
private String name;
//constructor
public Airplane(String name) {
this.name = name;
}
//methods override
@Override
public String getName() {return this.name;}
@Override
public boolean canFly() {return true;}
//test
public static void testAirplane() {
Airplane a = new Airplane("Aircar");
System.out.println(a.getName() == "Aircar");
System.out.println(a.canFly() == true);
System.out.println(a.isDangerous() == false);
}
}

View File

@@ -0,0 +1,21 @@
public abstract class Animal {
//instance variable
private String name;
//constructor
public Animal(String name) {
this.name = name;
}
//methods
public String getName() {return this.name;}
//abstract methods
public abstract int getLegs();
public abstract boolean canFly();
//test
public static void testAnimal() {}
}

View File

@@ -0,0 +1,24 @@
public abstract class Bird extends Animal implements Flyer{
//instance variable
private int numOfEggs;
//constructor
public Bird(String name, int numOfEggs) {
super(name);
this.numOfEggs = numOfEggs;
}
//methods
public int getNumOfEggs() {return this.numOfEggs;}
//methods override
@Override
public int getLegs() {return 2;}
@Override
public abstract boolean canFly();
//test
public static void testBird() {}
}

View File

@@ -0,0 +1,24 @@
public class Dog extends Animal{
//constructor
public Dog(String name) {
super(name);
}
//methods override
@Override
public int getLegs() {return 4;}
@Override
public boolean canFly() {return false;}
//test
public static void testDog() {
Dog d = new Dog("Nice Doggy");
// The getName method is inherited from Animal.
// The getLegs and canFly methods come from Dog itself.
System.out.println(d.getName() == "Nice Doggy");
System.out.println(d.getLegs() == 4);
System.out.println(d.canFly() == false);
}
}

View File

@@ -0,0 +1,7 @@
public interface Flyer {
public String getName();
public boolean canFly();
//make its default value = false, therefore, only class ostrich needs override it
public default boolean isDangerous() {return false;}
}

View File

@@ -0,0 +1,22 @@
public class Magpie extends Bird{
//constructor
public Magpie(String name) {
super(name, 6);
}
//method
@Override
public boolean canFly() {return true;}
//test
public static void testMagpie() {
Magpie m = new Magpie("Maggie");
System.out.println(m.getName() == "Maggie");
System.out.println(m.getLegs() == 2);
System.out.println(m.getNumOfEggs() == 6);
System.out.println(m.canFly() == true);
System.out.println(m.isDangerous() == false);
}
}

View File

@@ -0,0 +1,25 @@
public class Ostrich extends Bird{
//constructor
public Ostrich(String name) {
super(name, 10);
}
//methods override
@Override
public boolean canFly() {return false;}
@Override
public boolean isDangerous() {return true;}
//test
public static void testOstrich() {
Ostrich o = new Ostrich("Ossie");
System.out.println(o.getName() == "Ossie");
System.out.println(o.getLegs() == 2);
System.out.println(o.getNumOfEggs() == 10);
System.out.println(o.canFly() == false);
System.out.println(o.isDangerous() == true);
}
}

View File

@@ -0,0 +1,31 @@
public class Pegasus extends Bird{
//constructor
public Pegasus(String name) {
super(name, 0);
}
//methods override
@Override
public int getLegs() {return 4;}
@Override
public boolean canFly() {return true;}
@Override
public int getNumOfEggs() {
System.out.println("Pegasi do not lay eggs!"); //message
return 0;
}
//test
public static void testPegasus() {
Pegasus p = new Pegasus("Peggie");
System.out.println(p.getName() == "Peggie");
System.out.println(p.getLegs() == 4);
System.out.println(p.getNumOfEggs() == 0); // Message printed here.
System.out.println(p.canFly() == true);
System.out.println(p.isDangerous() == false);
}
}

View File

@@ -0,0 +1,14 @@
public class Start {
public static void main(String[] args) {
Animal.testAnimal();
Dog.testDog();
Bird.testBird();
Magpie.testMagpie();
Ostrich.testOstrich();
Pegasus.testPegasus();
Airplane.testAirplane();
}
}