Go4Expert

Go4Expert (http://www.go4expert.com/)
-   Java (http://www.go4expert.com/forums/java/)
-   -   Need help JAVA programming! (http://www.go4expert.com/forums/help-java-programming-t6988/)

ngereja 24Oct2007 05:25

Need help JAVA programming!
 
Hi, i am learning java and have problem, can anyone help to solve. I have done most of the codes but i fail to remove arrors. The codes are in 8 Classes. The problem is with the class ContactExtended and Main which links other classes all together.

1. Class Company:
Code:

package phonebookoscar;

public class Company implements Item {
        private String name;
        private String phone;
        private String address;
        private String email;
        private int age;
       
        public Company() {
               
        }
       
        public Company(String name, String phone, String address, String email, int age) {
                this.name = name;
                this.phone = phone;
                this.address = address;
                this.email = email;
                this.age = age;
        }

        public String getName() {
                return name;
        }

        public String getPhone() {
                return phone;
        }
        public String getAddress(){
                return address;
        }
        public String getEmail(){
                return email;
        }
        public int getAge(){
                return age;
        }

        public String getSurname() {
                return "";
}

2. Class ContactExtended
Code:

package phonebookoscar;

public class ContactExtended extends Contact implements ExtendedItem{
        private String email = null;
        private int age = 0;
       
        public ContactExtended() {
                super();
        }
       
        public ContactExtended(String name, String surname, String phone, int age, String email){
                super(name, surname, phone);
                        this.email = email;
                        this.age = age;
        }
       
}

3. Class Item

Code:

Package phonebookoscar;

public interface Item {
        public String getName();
        public String getSurname();
        public String getPhone();
       
       
}

4. Class Contact
Code:

Package phonebookoscar;

public class Contact implements Item {
        private String name = null;
        private String surname = null;
        private String phone = null;
        private String address = null;
        private String email = null;
        private int age = 0;

        public Contact() {};

public Contact(String name, String surname, String phone, String address, String email, int age) {
                this.name = name;
                this.surname = surname;
                this.phone = phone;
                this.address = address;
                this.email = email;
                this.age = age;
        }

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

                        public String getSurname() {
                                return surname;
                        }
       
                                public void setSurname(String surname) {
                                        this.surname = surname;
                                }

                                        public String getPhone() {
                                                return phone;
                                        }
       
                                                public void setPhone(String phone) {
                                                        this.phone = phone;
                                                }
                                                        public String getAddress(){
                                                                return address;
                                                        }
                                                                public void setAddress(String address){
                                                                        this.address = address;
                                                        }
                                                                        public String getEmail(){
                                                                                return email;
                                                                        }
                                                                                public void setEmail(String email){
                                                                                        this.email = email;
                                                                                        }
                                                                                                public int getAge(){
                                                                                                        return age;
                                                                                                }
                                                                        public void setAge(int age){
                                                                                        this.age = age;
                                                                                                        }
                                                                                                       
                                                                                }

5. Class ExtendedItem

Code:

package phonebookoscar;

public interface ExtendedItem extends Item{
        public String getAddress();
        public String getEmail();
        public int getAge();
}

6. Class Keyboard

Code:

Package phonebookoscar;

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;

public class Keyboard {
        private static final BufferedReader keyboard =
                new BufferedReader(new InputStreamReader(System.in));
       
        public static String readString() {
                String line = null;
               
                try {
                        line = keyboard.readLine();
                }
                catch(IOException e) {
                        show("Error reading a string of characters.");
                }
               
                return line;
        }
       
        public static int readInteger() {
                int integer = 0;
                String line = readString();
               
                if(line != null) integer = Integer.parseInt(line);
               
                return integer;
        }
       
        public static float readFloat() {
                float real = 0.0f;
                String line = readString();
               
                if(line != null) real = Float.parseFloat(line);
                       
                return real;
        }
       
        public static double readDouble() {
                double real = 0.0;
                String line = readString();
               
                if(line != null) real = Double.parseDouble(line);
                       
                return real;
        }
       
        private static void show(String line) {
                System.err.println(line);
        }
}

7. Class PhoneBook
Code:

package phonebookoscar;

public class PhoneBook {
        private static final int SIZE = 100;
        private int nContacts = 0;
        private Item contacts[] = new Item[SIZE];

        public PhoneBook() {}

        public Item getContactAt(int position) {
                Item contact = new Contact();
                if(position >= 0 && position < nContacts)
                        contact = contacts[position];
                return contact;
        }

        public int getNContacts() {
                return nContacts;
        }

        public Item searchForName(String name) {
                Item contact = null;
                int position = 0;
                while((contact == null) && position < nContacts) {
                        if(contacts[position].getName().equals(name))
                                contact = contacts[position];
                        else position++;
                }
                if(contact == null) contact = new Contact();
                return contact;
        }

        public void addContact(Item contact) {
                if(nContacts < SIZE)
                        contacts[nContacts++] = contact;
        }
}

8. Class Main
Code:

package phonebookoscar;

public class Main {
        private static final int EXIT = 0;
        private static final int ADD = 1;
        private static final int LIST = 2;
        private static final int SEARCH = 3;
        private static final int ADD_NEW_COMPANY = 4;
        private static final int SEARCH_ADDRESS = 5;
        private static final int SEARCH_EMAIL = 6;
        private static final int SEARCH_AGE = 7;
        private PhoneBook phoneBook = new PhoneBook();
       
        public void menu() {
                System.out.println("");
                System.out.println("1. Add a new contact to the phone book.");
                System.out.println("2. List all contacts in the phone book.");
                System.out.println("3. Search a contact for name.");
                System.out.println("4. Add a new company");
                System.out.println("5. Searh a contact for address.");
                System.out.println("6. Search a contact for email.");
                System.out.println("7. Seach a contact for age.");
                System.out.println("0. Exit.");
                System.out.print("Choose an option:");
        }
       
        public void doAdd() {
                System.out.print("Name: ");
                String name = Keyboard.readString();
                System.out.print("Surname: ");
                String surname = Keyboard.readString();
                System.out.print("Phone number: ");
                String phone = Keyboard.readString();
                System.out.print("Address:");
                String address = Keyboard.readString();
                System.out.print("Email:");
                String email = Keyboard.readString();
                System.out.print("Age:");
                String age = Keyboard.readString();
                phoneBook.addContact(new Contact(name, surname, phone,address,email,age));
        }
       
        public void doAddNewCompany() {
                System.out.print("Name: ");
                String name = Keyboard.readString();
                System.out.print("Phone number: ");
                String phone = Keyboard.readString();
                System.out.print("Address");
                String address = Keyboard.readString();
                System.out.print("Email");
                String email = Keyboard.readString();
                System.out.print("Age");
                String age = Keyboard.readString();
               
                phoneBook.addContact(new Company(name, phone, address, email, age));
        }
       
        public void doList() {
                int nContacts = phoneBook.getNContacts();
                Item contact;
                for(int i = 0; i < nContacts; i++) {
                        contact = phoneBook.getContactAt(i);
                        System.out.println("Name: " + contact.getName());
                        System.out.println("Surname: " + contact.getSurname());
                        System.out.println("Phone: " + contact.getPhone());
                        System.out.println("Address: " + contact.getAddress());
                        System.out.println("Email: " + contact.getEmail());
                        System.out.println("Age: " + contact.getAge());
                       
                }
        }
       
        public void doSearch() {
                System.out.print("Name to search for: ");
                String name = Keyboard.readString();
                Item contact = phoneBook.searchForName(name);
                System.out.println("Name: " + contact.getName());
                System.out.println("Surname: " + contact.getSurname());
                System.out.println("Phone: " + contact.getPhone());
                System.out.println("Address: " + contact.getAddress());
                System.out.println("Email: " + contact.getEmail());
                System.out.println("Age: " + contact.getAge());
        }
       
        public void doAction(int action) {
                switch(action) {
                case ADD :
                        doAdd();
                        break;
                case LIST :
                        doList();
                        break;
                case SEARCH :
                        doSearch();
                        break;
                case ADD_NEW_COMPANY:
                        doAddNewCompany();
                        break;
                case EXIT :
                        System.out.println("Bye!!");
                        break;
                default :
                        System.out.println("The option is not valid.");
                        break;
                }
        }
       
        public void go() {
                int option;
                do {
                        menu();
                        option = Keyboard.readInteger();
                        doAction(option);
                }while(option != EXIT);
        }
       
        public static void main(String args[]) {
                Main main = new Main();
                main.go();
        }
}


rizwan6feb 29Oct2007 17:17

Re: Need help JAVA programming!
 
What is the problem?

ngereja 29Oct2007 18:55

Re: Need help JAVA programming!
 
the problem is to link the rest of classes with the Main Class. i get stack here!


All times are GMT +5.5. The time now is 21:06.