In your Solutions to Pinters a Book of Abstract Algebra Chapter 8 Exercise H3 i can not understand in step 5 you get (ab)(cd)=(dac)(abd). Can you show me in some detail how to get that result please?
In: Advanced Math
C++ Programming
1) What is the feature that makes a base class an abstract class?
2) When designing a class hierarchy involving classes A and B, what are the two questions that must be asked to determine whether class B should be derived from class A?
In: Computer Science
Using the linked list abstract data type “Queue ADT”, write a menu dirven user interfece to teach each of the operations in the ADT. Any errors discovered during the processing should be printed as a part of the test result. Please Use C++ language.
In: Computer Science
I am about to start my undergraduate thesis, I need an interesting topic related to Marketing. Due to coronavirus I have not many resources. Describe how the content and abstract would be. And how will be the research method to accomplish? and some recommendations if it is porssible
In: Operations Management
java programming
You will be given two interfaces and two abstract classes, FileTextReader, FileTextWriter, AbstractFileMonitor, and AbstractDictionary. Your job is to create two classes the first class should be named FileManager, the second class should be named Dictionary. The FileManager will implement the interfaces FileTextReader and FileTextWriter and extend the clas AbstractFileMonitor. Your class signature would look something like the following:
public class FileManager extends AbstractFileMonitor implements FileTextReader, FileTextWriter{...
The constructor signature of the FileManager should look like the following:
public FileManager(String filePath){...
The Dictionary will extend the abstract class AbstractDictionary. Your class signature would look something like the following:
public class Dictionary extends AbstractDictionary {...
The constructor signature of the Dictionary should look like the following:
public Dictionary(String path, FileManager fileManager) throws IOException {...
Please read the programmatic documentation of the two interfaces and abstract classes to gain an understanding of what each function should do. This assignment will test your knowledge of reading and writing to a text file, implementing interfaces, extending abstract classes, throwing exceptions and working with collections specifically sets.
This project is accompanied by two test classes, ManagerTest, and DictionaryTest. They will test the functionality of the functions in the interfaces and the abstract methods of classes. Its recommended that you implement the FileManager before working on the AbstractDictionary.
Abstract Dictionary
package homework;
import java.io.IOException;
import java.util.Objects;
import java.util.Set;
* A class that holds a collection of words read from a text
file. The collection of words is used in the methods of this
class
* methods provided in this class.
public abstract class AbstractDictionary
{
private final FileTextReader
FILE_READER;
private final Set ALL_WORDS;
/**
* Creates an abstract dictionary of words using the
text file at the specified path.
* @param path a path to a text file containing a
dictionary of words
* @param dictionaryFileReader the FileReader used to
read from the text file at the specified path
* @throws IOException thrown if there is a problem
reading the file at the path
*/
public AbstractDictionary(String path,
FileTextReader dictionaryFileReader) throws IOException {
Objects.requireNonNull(dictionaryFileReader, "The File reader can
not be null");
Objects.requireNonNull(path, "The
path can not be null");
FILE_READER = dictionaryFileReader;
ALL_WORDS =
FILE_READER.getAllLines(path);
}
/**
* Returns a set of all the words contained in the
dictionary text file.
* @return a set containing all the words in the
dictionary file.
*/
public Set getAllWords(){
return ALL_WORDS;
}
/**
* Counts the number of words in this Dictionary that
start with the specified prefix and have a length that is equal or
greater
* than the specified size. If size the specified size
is less than 1 then word size is not taken into account.
* @param prefix the prefix to be found
* @param size the length that the word must equal or
be greater than. If a value less than 1 is specified, all words
regardless of their
* characters size should be considered. In other words
if the size parameter is < 1 word size is disregarded in the
calculations.
* @param ignoreCase if true this will ignore case
differences when matching the strings. If false this
considers
* case differences when matching the strings
* @return The number of words that start with the
specified prefix
* @throws IllegalArgumentException if the specified
string is null or empty (Meaning contains no characters or only
white space or blank)
*/
public abstract int countWordsThatStartWith(String prefix, int size, boolean ignoreCase) throws IllegalArgumentException;
/**
* Tests if this Dictionary contains at least one word
with a length equal to or greater than the specified size that
starts with the specified prefix.
* If size the specified size is less than 1 then word
size is not taken into account.
* @param prefix the prefix to be found
* @param size the length that the word must equal or
be greater than. If a value less than 1 is specified, all words
regardless of their
* characters size should be considered. In other words
if the size parameter is < 1 word size is disregarded in the
calculations.
* @param ignoreCase if true this will ignore case
differences when matching the strings. If false this
considers
* case differences when matching the strings
* @return The number of words that start with the
specified prefix
* @throws IllegalArgumentException if the specified
string is null or empty (Meaning contains no characters or only
white space)
*/
public abstract boolean
containsWordsThatStartWith(String prefix, int size, boolean
ignoreCase) throws IllegalArgumentException;
* Returns a set of all the words within in this
Dictionary that start with the specified prefix and have a length
that is equal or greater
* than the specified size. If size the specified size
is less than 1 then word size is not taken into account.
* @param prefix the prefix to be found
* @param size the length that the word must equal or
be greater than. If a value less than 1 is specified, all words
regardless of their
* characters size should be considered. In other words
if the size parameter is < 1 word size is disregarded in the
calculations.
* @param ignoreCase if true this will ignore case
differences when matching the strings. If false this
considers
* case differences when matching the strings
* @return A list of all strings that start with the
specified prefix
* @throws IllegalArgumentException if the specified
string is null or empty (Meaning contains no characters or only
white space)
public abstract Set
getWordsThatStartWith(String prefix, int size, boolean ignoreCase)
throws IllegalArgumentException;
}
AbstractFileMonitor
package homework;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.security.DigestInputStream;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
* A class with methods to monitor a text file.
public abstract class AbstractFileMonitor {
private MessageDigest messageDigest;
private int currentCheckSum;
private boolean hasChanged = false;
private long nextUpateTime = 0;
public AbstractFileMonitor(String path){
setFilePath(path);
}
* Updates the variables that correspond to the file
being monitored
* This function has been throttled such that it will
only update values every 250 ms. In other words successive calls to
this
* function in time intervals that are less than 250 ms
will yield no change.
* @throws IOException Thrown if any type of I/O
exception occurs while writing to the file
* @throws IllegalStateException If the {@link
#setFile(String)} method in not invoked with a proper file prior to
invocation of this
* @throws NoSuchAlgorithmException If the computer's
OS is missing the SHA-256 hashing algorithm
* method. In other words if no file is currently set
to be monitored.
public void update() throws IOException,
IllegalStateException, NoSuchAlgorithmException {
if(messageDigest ==
null){
messageDigest =
MessageDigest.getInstance("SHA-256");
}
if(nextUpateTime >
System.currentTimeMillis()) {
hasChanged =
false;
return;
}
nextUpateTime =
System.currentTimeMillis() + 250;
File file = new
File(getFilePath());
if(!file.exists())
return;
try (DigestInputStream dis = new DigestInputStream(new
FileInputStream(getFilePath()), messageDigest)) {
while (dis.read() != -1) ;
messageDigest = dis.getMessageDigest();
}
StringBuilder result = new StringBuilder();
for (byte b : messageDigest.digest()) {
result.append(String.format("%02x", b));
}
hasChanged = currentCheckSum !=
result.toString().hashCode();
currentCheckSum = result.toString().hashCode();
}
* Tests if the file being monitored has changed since
the last time {@link #update()} was invoked
public boolean hasChanged(){
return hasChanged;
}
public abstract void setFilePath(String path);
public abstract String getFilePath() throws
IllegalStateException;
}
FileTextReader
package homework;
import java.io.IOException;
import java.util.Collection;
import java.util.List;
import java.util.Set;
public interface FileTextReader{
public String readText(String path) throws
IOException;
* @throws IOException Thrown if any type of I/O
exception occurs while writing to the file
public Set getAllLines(String path) throws
IOException;
* @throws IOException Thrown if any type of I/O
exception occurs while writing to the file
public String getLastLine(String path) throws
IOException;
}
FileTextWriter
package homework;
import java.io.IOException;
public interface FileTextWriter {
* @throws IOException Thrown if any type of I/O
exception occurs while writing to the file
* @throws IllegalArgumentException if the specified
string is null or empty (Meaning contains no characters or only
white space)
public void writeToFile(String string,
String path) throws IOException,
IllegalArgumentException;
}
In: Advanced Math
java programming
You will be given two interfaces and two abstract classes, FileTextReader, FileTextWriter, AbstractFileMonitor, and AbstractDictionary. Your job is to create two classes the first class should be named FileManager, the second class should be named Dictionary. The FileManager will implement the interfaces FileTextReader and FileTextWriter and extend the clas AbstractFileMonitor. Your class signature would look something like the following:
public class FileManager extends AbstractFileMonitor implements FileTextReader, FileTextWriter{...
The constructor signature of the FileManager should look like the following:
public FileManager(String filePath){...
The Dictionary will extend the abstract class AbstractDictionary. Your class signature would look something like the following:
public class Dictionary extends AbstractDictionary {...
The constructor signature of the Dictionary should look like the following:
public Dictionary(String path, FileManager fileManager) throws IOException {...
Please read the programmatic documentation of the two interfaces and abstract classes to gain an understanding of what each function should do. This assignment will test your knowledge of reading and writing to a text file, implementing interfaces, extending abstract classes, throwing exceptions and working with collections specifically sets.
This project is accompanied by two test classes, ManagerTest, and DictionaryTest. They will test the functionality of the functions in the interfaces and the abstract methods of classes. Its recommended that you implement the FileManager before working on the AbstractDictionary.
Abstract Dictionary
package homework;
import java.io.IOException;
import java.util.Objects;
import java.util.Set;
* A class that holds a collection of words read from a text
file. The collection of words is used in the methods of this
class
* methods provided in this class.
public abstract class AbstractDictionary
{
private final FileTextReader
FILE_READER;
private final Set ALL_WORDS;
/**
* Creates an abstract dictionary of words using the
text file at the specified path.
* @param path a path to a text file containing a
dictionary of words
* @param dictionaryFileReader the FileReader used to
read from the text file at the specified path
* @throws IOException thrown if there is a problem
reading the file at the path
*/
public AbstractDictionary(String path,
FileTextReader dictionaryFileReader) throws IOException {
Objects.requireNonNull(dictionaryFileReader, "The File reader can
not be null");
Objects.requireNonNull(path, "The
path can not be null");
FILE_READER = dictionaryFileReader;
ALL_WORDS =
FILE_READER.getAllLines(path);
}
/**
* Returns a set of all the words contained in the
dictionary text file.
* @return a set containing all the words in the
dictionary file.
*/
public Set getAllWords(){
return ALL_WORDS;
}
/**
* Counts the number of words in this Dictionary that
start with the specified prefix and have a length that is equal or
greater
* than the specified size. If size the specified size
is less than 1 then word size is not taken into account.
* @param prefix the prefix to be found
* @param size the length that the word must equal or
be greater than. If a value less than 1 is specified, all words
regardless of their
* characters size should be considered. In other words
if the size parameter is < 1 word size is disregarded in the
calculations.
* @param ignoreCase if true this will ignore case
differences when matching the strings. If false this
considers
* case differences when matching the strings
* @return The number of words that start with the
specified prefix
* @throws IllegalArgumentException if the specified
string is null or empty (Meaning contains no characters or only
white space or blank)
*/
public abstract int countWordsThatStartWith(String prefix, int size, boolean ignoreCase) throws IllegalArgumentException;
/**
* Tests if this Dictionary contains at least one word
with a length equal to or greater than the specified size that
starts with the specified prefix.
* If size the specified size is less than 1 then word
size is not taken into account.
* @param prefix the prefix to be found
* @param size the length that the word must equal or
be greater than. If a value less than 1 is specified, all words
regardless of their
* characters size should be considered. In other words
if the size parameter is < 1 word size is disregarded in the
calculations.
* @param ignoreCase if true this will ignore case
differences when matching the strings. If false this
considers
* case differences when matching the strings
* @return The number of words that start with the
specified prefix
* @throws IllegalArgumentException if the specified
string is null or empty (Meaning contains no characters or only
white space)
*/
public abstract boolean
containsWordsThatStartWith(String prefix, int size, boolean
ignoreCase) throws IllegalArgumentException;
* Returns a set of all the words within in this
Dictionary that start with the specified prefix and have a length
that is equal or greater
* than the specified size. If size the specified size
is less than 1 then word size is not taken into account.
* @param prefix the prefix to be found
* @param size the length that the word must equal or
be greater than. If a value less than 1 is specified, all words
regardless of their
* characters size should be considered. In other words
if the size parameter is < 1 word size is disregarded in the
calculations.
* @param ignoreCase if true this will ignore case
differences when matching the strings. If false this
considers
* case differences when matching the strings
* @return A list of all strings that start with the
specified prefix
* @throws IllegalArgumentException if the specified
string is null or empty (Meaning contains no characters or only
white space)
public abstract Set
getWordsThatStartWith(String prefix, int size, boolean ignoreCase)
throws IllegalArgumentException;
}
AbstractFileMonitor
package homework;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.security.DigestInputStream;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
* A class with methods to monitor a text file.
public abstract class AbstractFileMonitor {
private MessageDigest messageDigest;
private int currentCheckSum;
private boolean hasChanged = false;
private long nextUpateTime = 0;
public AbstractFileMonitor(String path){
setFilePath(path);
}
* Updates the variables that correspond to the file
being monitored
* This function has been throttled such that it will
only update values every 250 ms. In other words successive calls to
this
* function in time intervals that are less than 250 ms
will yield no change.
* @throws IOException Thrown if any type of I/O
exception occurs while writing to the file
* @throws IllegalStateException If the {@link
#setFile(String)} method in not invoked with a proper file prior to
invocation of this
* @throws NoSuchAlgorithmException If the computer's
OS is missing the SHA-256 hashing algorithm
* method. In other words if no file is currently set
to be monitored.
public void update() throws IOException,
IllegalStateException, NoSuchAlgorithmException {
if(messageDigest ==
null){
messageDigest =
MessageDigest.getInstance("SHA-256");
}
if(nextUpateTime >
System.currentTimeMillis()) {
hasChanged =
false;
return;
}
nextUpateTime =
System.currentTimeMillis() + 250;
File file = new
File(getFilePath());
if(!file.exists())
return;
try (DigestInputStream dis = new DigestInputStream(new
FileInputStream(getFilePath()), messageDigest)) {
while (dis.read() != -1) ;
messageDigest = dis.getMessageDigest();
}
StringBuilder result = new StringBuilder();
for (byte b : messageDigest.digest()) {
result.append(String.format("%02x", b));
}
hasChanged = currentCheckSum !=
result.toString().hashCode();
currentCheckSum = result.toString().hashCode();
}
* Tests if the file being monitored has changed since
the last time {@link #update()} was invoked
public boolean hasChanged(){
return hasChanged;
}
public abstract void setFilePath(String path);
public abstract String getFilePath() throws
IllegalStateException;
}
FileTextReader
package homework;
import java.io.IOException;
import java.util.Collection;
import java.util.List;
import java.util.Set;
public interface FileTextReader{
public String readText(String path) throws
IOException;
* @throws IOException Thrown if any type of I/O
exception occurs while writing to the file
public Set getAllLines(String path) throws
IOException;
* @throws IOException Thrown if any type of I/O
exception occurs while writing to the file
public String getLastLine(String path) throws
IOException;
}
FileTextWriter
package homework;
import java.io.IOException;
public interface FileTextWriter {
* @throws IOException Thrown if any type of I/O
exception occurs while writing to the file
* @throws IllegalArgumentException if the specified
string is null or empty (Meaning contains no characters or only
white space)
public void writeToFile(String string, String
path) throws IOException, IllegalArgumentException;
}
We need to create that two classes.
In: Computer Science
what is the Symbolic Learning? what is advantage and disadvantage for Symbolic Learning? and what is advantage and disadvantage for Symbolic Learning in python? where we can use it? why we use it ? provide abstract and conclusion on symbolic learning? and provide three example on symbolic learning in Python.
In: Computer Science
write a Case study about Metro Dubai.
Include the sustainable / eco-friendly transportation system.
Report must include:
Abstract, Introduction and objectives.
History and project details.
Impact of the sustainable / Eco-friendly approach ( advantages and disadvantages )
Conclusion and your opinion on such practice.
In: Civil Engineering
I am about to start my undergraduate thesis, I need an interesting topic related to business Administration. I would like to have any recommendation, preferably something with Marketing, Describe how the content and abstract would be. And how will be the research method to accomplish?
In: Economics
#3 A collection represents a group of objects, known as its elements. Some collections allow duplicate elements and others do not. Some are ordered and others unordered. Create an Interface MyCollection which is maximum general (abstract) collection possible. (java oop)-> laboratory work
In: Computer Science