In: Computer Science
Define a class named Document that contains a member variable of type String named text that stores any textual content for the document. Create a method named toString() that returns the text field and also include a method to set this value. Next, define a class for Email that is derived from Document and includes member variables for the sender, recipient, and title of an email message. Implement appropriate accessor and mutator methods. The body of the email message should be stored in the inherited variable text. Redefine the toString() method to concatenate all text fields. Similarly, define a class for File that is derived from Document and includes a member variable for the pathname. The textual contents of the file should be stored in the inherited variable text. Redefine the toString() method to concatenate all text fields. Finally, create several sample objects of type Email and File in your main method. Test your objects by passing them to the following method ContainsKeyword() that returns true if the object contains the specified keyword in the text property. public static boolean ContainsKeyword(Document docObject, String keyword) { if (docObject.toString().indexOf(keyword,0) >= 0) return true; return false; }
NOTE:I have included comments too for your understanding.
Please run the class named: TestFile.java
CODE:
TestFile.java
public class TestFile extends Document{
//path variable
String path="C\file.txt";
/*
* contains method to check whether a keyword is there
or not.
*/
public static boolean ContainsKeyword(Document
docObject, String keyword) {
if
(docObject.toString().indexOf(keyword,0) >= 0){
return
true;
}else{
return
false;
}
}
/*
* this is main method to run the class
*/
public static void main(){
Email tstEml = new Email();
//Document object
Document dc=new Document();
tstEml.setText("hi");
//Set sender mail
tstEml.setSender("[email protected]");
//set recipient mail.
tstEml.setRecipient("[email protected]");
//set title.
tstEml.setTitle("This is chegg
assignment,I am doing for you.");
//Invoking the method to check
whether a keyword id there or not.
ContainsKeyword(dc,"hi");
}
}
Email.java
/*
* Email class
*/
public class Email extends Document {
//Email varaibles..
String sender;
String recipient;
String text;
String title;
//Doc object initialization..
Document doc=new Document();
//setters and getters..
public String getSender() {
return sender;
}
public String toString(){
return text+doc.text;
}
public void setSender(String sender) {
this.sender = sender;
}
public String getRecipient() {
return recipient;
}
public void setRecipient(String recipient) {
this.recipient = recipient;
}
public String getText() {
return text;
}
public void setText(String text) {
this.text = text;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
}
Document.java
/*
* Document class
*/
public class Document {
String text;
public String toString(String text){
return text.toString();
}
//Setters and getters.
private String getText() {
return text;
}
public void setText(String text) {
this.text = text;
}
}