Sep 24, 2023
CS 145 - Java 2-Data Structures Credits: 5
A continuation of CS& 141 . Uses Java language to cover topics such as classes and interfaces, inheritance, basic design principles, exceptions, stream I/O, user interfaces, recursion, elementary data structures and associated algorithms (lists, queues, stacks, trees); and introduces performance analysis and implementation trade-offs. Successful completion of the course gives students the tools they need to construct substantial computer programs and understand computers and software. Provides a good foundation for further study in computer science and engineering.
Enrollment Requirement: CS& 141 and MATH& 151 or higher with grades of 2.5 or higher.
Satisfies Requirement: Natural Science
Course Fee: $25.00
Students who successfully complete this class will be able to:
- Employ advanced inheritance concepts in programming to link common data types together and simplify their construction.
- Create and use abstract classes in programming applications to solve computer science problems.
- Solve computer science by the programming application of the Java collections classes, interfaces and methods.
- Design, implement, and test the implementation of relationships among objects using a class hierarchy and inheritance.
- Compare and contrast the notions of overloading and overriding methods in an object-oriented language.
- Describe the concept of recursion and implement, test, and debug simple recursive functions and procedures.
- Provide detailed and accurate descriptions of various physical systems.
- Solve multi-step problems in physical analysis.
- Identify pertinent elements of physical systems and problems.
- Design meaningful experiments and clearly report their conclusions.
- Interpret scientific data including the results of experiments designed by others.
- Apply mathematical tools to the solution of complex problems.
- Use electronic and numerical instruments as tools for investigation and analysis.
- Critical Thinking - Critical thinking finds expression in all disciplines and everyday life. It is characterized by an ability to reflect upon thinking patterns, including the role of emotions on thoughts, and to rigorously assess the quality of thought through its work products. Critical thinkers routinely evaluate thinking processes and alter them, as necessary, to facilitate an improvement in their thinking and potentially foster certain dispositions or intellectual traits over time.
- Quantitative and Symbolic Reasoning - Quantitative Reasoning encompasses abilities necessary for a student to become literate in today’s technological world. Quantitative reasoning begins with basic skills and extends to problem solving.
Add to Portfolio (opens a new window)