Skip to content

Bare bones #4

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 2 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 19 additions & 0 deletions pom.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>

<groupId>armstrong.alexandra</groupId>
<artifactId>Reusing_Classes_Labs</artifactId>
<version>1.0-SNAPSHOT</version>
<dependencies>
<!-- https://mvnrepository.com/artifact/junit/junit -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
</dependency>

</dependencies>
</project>
39 changes: 39 additions & 0 deletions src/main/java/armstrong/alexandra/Reusing_Classes_1.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
package armstrong.alexandra;

import java.util.*;

/**
* Created by alexandraarmstrong on 1/18/17.
*/
public class Reusing_Classes_1 extends ArrayList {
public static void main(String[] args){
int [] arr = {1, 2, 3, 4, 5, 6, 7, 8};
int k = 4;

for (int x : arr){
System.out.print(x);
}

count(arr, k);

for (int x : arr){
System.out.print(x);
}
}

public static int[] rotate(int[] arr){
int temp = arr[0];
for(int i = 0; i < arr.length - 1; i++){
arr[i] = arr[i + 1];
}
arr[arr.length - 1] = temp;
return arr;
}

public static int[] count(int[] arr, int k){
for(int i = 0; i < k; i++) {
rotate(arr);
}
return arr;
}
}
135 changes: 135 additions & 0 deletions src/main/java/armstrong/alexandra/Reusing_Classes_2.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,135 @@
package armstrong.alexandra;

/**
* Created by alexandraarmstrong on 1/18/17.
*/
public class Reusing_Classes_2 {
public static void main(String[] args){
Human dude = new Human();
Human dudette = new Human();
SuperHuman superDude = new SuperHuman();
SuperHuman superDudette = new SuperHuman();

dude.setAddress("423 west west street, Boring DE 19830");
dudette.setGender("Male");

superDude.setGender("Male");
superDude.setAbility("Talking");

System.out.println(dude.address);
System.out.println(dudette.gender);
System.out.println(superDude.gender);
System.out.println(superDude.ability);

}
}

class Human{
String name;
int age;
String gender;
String occupation;
String address;

public String getName(){
return name;
}

public void setName(String name){
this.name = name;
}

public void printName(){
System.out.println(name);
}

public int getAge() {
return age;
}

public void setAge(int age) {
this.age = age;
}

public void printAge(){
System.out.println(age);
}

public String getGender() {
return gender;
}

public void setGender(String gender) {
this.gender = gender;
}

public void printGender(){
System.out.println(gender);
}

public String getOccupation() {
return occupation;
}

public void setOccupation(String occupation) {
this.occupation = occupation;
}

public void printOccupation(){
System.out.println(occupation);
}

public String getAddress() {
return address;
}

public void setAddress(String address) {
this.address = address;
}

public void printAddress(){
System.out.println(address);
}
}

class SuperHuman extends Human{
boolean good;
String heroName;
String ability;

public boolean isGood() {
return good;
}

public void setGood(boolean good) {
this.good = good;
}

public void printGood(){
System.out.println(good);
}

public String getHeroName() {
return heroName;
}

public void setHeroName(String heroName) {
this.heroName = heroName;
}

public void printHeroName(){
System.out.println(heroName);
}

public String getAbility() {
return ability;
}

public void setAbility(String ability) {
this.ability = ability;
}

public void printAbility(){
System.out.println(ability);
}
}
73 changes: 73 additions & 0 deletions src/main/java/armstrong/alexandra/Reusing_Classes_3.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
package armstrong.alexandra;

import java.util.ArrayList;
import java.util.HashMap;

/**
* Created by alexandraarmstrong on 1/18/17.
*/
public class Reusing_Classes_3 {
public static void main(String[] args){
Inventory inventory = new Inventory();
Product apple = new Product(0.20, "Apple", 42);
Product banana = new Product(0.05, "Banana", 184);
Product pear = new Product(0.40, "Pear", 28);

inventory.addInventory(apple.getId(), apple);
inventory.addInventory(banana.getId(), banana);
inventory.addInventory(pear.getId(), pear);

System.out.println(inventory.oneItemTotalValue("Pear"));

apple.setQuantity(18);

System.out.println(apple.getQuantity());


}
}

class Product{
double price;
String id;
int quantity;

Product(double price, String id, int quantity){
this.price = price;
this.id = id;
this.quantity = quantity;
}

public double getPrice() {
return price;
}

public String getId() {
return id;
}

public int getQuantity() {
return quantity;
}

public void setQuantity(int quantity) {
this.quantity = quantity;
}
}

class Inventory{

HashMap<String, Product> inventory = new HashMap<String, Product>();

public HashMap<String, Product> getInventory() {
return inventory;
}

public void addInventory(String name, Product item) {
inventory.put(name, item);
}

public double oneItemTotalValue(String name){
return inventory.get(name).price * inventory.get(name).quantity;
}
}
54 changes: 54 additions & 0 deletions src/main/java/armstrong/alexandra/Reusing_Classes_4.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
package armstrong.alexandra;

/**
* Created by alexandraarmstrong on 1/18/17.
*/
public class Reusing_Classes_4 {
public static void main(String[] args){
CheckingAccount ca = new CheckingAccount();
SavingsAccount sa = new SavingsAccount();
BusinessAccount ba = new BusinessAccount();

ca.credit(126);
ca.debit(43);

ba.credit(65);
ba.debit(10);

sa.credit(9384);
sa.debit(45);

System.out.println("Business Account balance " + ba.getBalance());
System.out.println("Savings Account balance " + sa.getBalance());
System.out.println("Checking Account balance " + ca.getBalance());

}
}

abstract class BankAccount{
double balance;

public double getBalance() {
return balance;
}

public void debit(double amount) {
balance -= amount;
}

public void credit(double amount) {
balance += amount;
}
}

class CheckingAccount extends BankAccount{

}

class SavingsAccount extends BankAccount{

}

class BusinessAccount extends BankAccount{

}
28 changes: 28 additions & 0 deletions src/test/java/armstrong/alexandra/Reusing_Classes_1Test.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
package armstrong.alexandra;

import org.junit.Test;

import static junit.framework.TestCase.assertEquals;
import static org.junit.Assert.assertArrayEquals;

/**
* Created by alexandraarmstrong on 1/18/17.
*/
public class Reusing_Classes_1Test {
@Test
public void rotateTest(){
int[] arr = {1, 2, 3, 4};
int[] expected = {2, 3, 4, 1};
int[] actual = Reusing_Classes_1.rotate(arr);
assertArrayEquals(expected, actual);
}

@Test
public void countTest(){
int[] arr = {1, 2, 3, 4};
int k = 2;
int[] expected = {3, 4, 1, 2};
int[] actual = Reusing_Classes_1.count(arr, k);
assertArrayEquals(expected, actual);
}
}
7 changes: 7 additions & 0 deletions src/test/java/armstrong/alexandra/Reusing_Classes_2Test.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
package armstrong.alexandra;

/**
* Created by alexandraarmstrong on 1/18/17.
*/
public class Reusing_Classes_2Test {
}
7 changes: 7 additions & 0 deletions src/test/java/armstrong/alexandra/Reusing_Classes_3Test.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
package armstrong.alexandra;

/**
* Created by alexandraarmstrong on 1/18/17.
*/
public class Reusing_Classes_3Test {
}
7 changes: 7 additions & 0 deletions src/test/java/armstrong/alexandra/Reusing_Classes_4Test.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
package armstrong.alexandra;

/**
* Created by alexandraarmstrong on 1/18/17.
*/
public class Reusing_Classes_4Test {
}