Object Oriented Programming Through Java (Cs305es)
Object Oriented Programming Through Java (Cs305es)
THROUGH JAVA
Proficiency
Program Outcomes (PO) Level
assessed by
PO1 Engineering knowledge: Apply the knowledge of
Assignments,
mathematics, science, engineering fundamentals, and an
3 Tutorials, Mock
engineering specialization to the solution of complex
Tests
engineering problems.
PO2 Problem analysis: Identify, formulate, review research
literature, and analyze complex engineering problems Assignments,
reaching substantiated conclusions using first principles 3 Tutorials, Mock
of mathematics, natural sciences, and engineering Tests
sciences.
PO3 Design/development of solutions: Design solutions for
complex engineering problems and design system
Assignments,
components or processes that meet the specified needs
3 Tutorials, Mock
with appropriate consideration for the public health and
Tests
safety, and the cultural, societal, and environmental
considerations.
PO4 Conduct investigations of complex problems: Use
research-based knowledge and research methods
including design of experiments, analysis and -
interpretation of data, and synthesis of the information to
provide valid conclusions.
PO5 Modern tool usage: Create, select, and apply appropriate
techniques, resources, and modern engineering and IT
tools including prediction and modeling to complex -
engineering activities with an understanding of the
limitations.
PO6 The engineer and society: Apply reasoning informed by
the contextual knowledge to assess societal, health, safety, Assignments,
legal and cultural issues and the consequent 3 Tutorials, Mock
responsibilities relevant to the professional engineering Tests --
practice.
PO7 Environment and sustainability: Understand the impact
of the professional engineering solutions in societal and Assignments,
2
environmental contexts, and demonstrate the knowledge Tutorials,
of, and need for sustainable development.
PO8 Ethics: Apply ethical principles and commit to
professional ethics and responsibilities and norms of the 1 Assignments
engineering practice.
PO9 Individual and team work: Function effectively as an
individual, and as a member or leader in diverse teams, - --
and in multidisciplinary settings.
PO10 Communication: Communicate effectively on complex - --
engineering activities with the engineering community
and with society at large, such as, being able to
comprehend and write effective reports and design
documentation, make effective presentations, and give
Proficiency
Program Outcomes (PO) Level
assessed by
and receive clear instructions.
PO11 Project management and finance: Demonstrate
knowledge and understanding of the engineering and
management principles and apply these to one’s own - --
work, as a member and leader in a team, to manage
projects and in multidisciplinary environments.
PO12 Life-long learning: Recognize the need for, and have the
preparation and ability to engage in independent and life- Assignments,
2
long learning in the broadest context of technological Tutorials
change.
-:
1: Slight 2: Moderate 3: Substantial
Non
(Low) (Medium) (High)
e
Proficiency
Program Specific Outcomes (PSO) Level assessed
by
PSO1 Software Development and Research Ability: Ability to
understand the structure and development methodologies of Lectures,
software systems. Possess professional skills and knowledge Assignme
of software design process. Familiarity and practical nts,
3
competence with a broad range of programming language and Tutorials,
open source platforms. Use knowledge in various domains to Mock
identify research gaps and hence to provide solution to new Tests
ideas and innovations.
PSO2 Lectures,
Foundation of mathematical concepts: Ability to apply the
Assignme
acquired knowledge of basic skills, principles of computing,
nts,
mathematical foundations, algorithmic principles, modeling 3
Tutorials,
and design of computer- based systems in solving real world
Mock
engineering Problems.
Tests
PSO3 Successful Career: Ability to update knowledge continuously
in the tools like Rational Rose, MATLAB, Argo UML, R
Lectures,
Language and technologies like Storage, Computing,
2 Assignme
Communication to meet the industry requirements in creating
nts
innovative career paths for immediate employment and for
higher studies.
1: Slight 2: Moderate - : None
(Low) (Medium) 3: Substantial (High)
VII. SYLLABUS:
UNIT – I
Object-oriented thinking- A way of viewing world – Agents and Communities, messages
and methods, Responsibilities, Classes and Instances, Class Hierarchies- Inheritance, Method
binding, Overriding and Exceptions, Summary of Object-Oriented concepts. Java buzzwords,
An Overview of Java, Data types, Variables and Arrays, operators, expressions, control
Statements, Introducing classes, Methods and Classes, String handling.
Inheritance– Inheritance concept, Inheritance basics, Member access, Constructors, Creating
Multilevel hierarchy, super uses, using final with inheritance, Polymorphism-ad hoc
Polymorphism, pure polymorphism, method overriding, abstract classes, Object class, forms
of inheritance- specialization, specification, construction, extension, limitation, combination,
benefits of inheritance, costs of inheritance.
UNIT II
Packages- Defining a Package, CLASSPATH, Access protection, importing packages.
Interfaces- defining an interface, implementing interfaces, Nested interfaces, applying
interfaces, variables in interfaces and extending interfaces.
Stream based I/O(java.io) – The Stream classes-Byte streams and Character streams,
Reading console Input and Writing Console Output, File class, Reading and writing Files,
Random access file operations, The Console class, Serialization, Enumerations, auto boxing,
generics.
UNIT – III
Exception handling - Fundamentals of exception handling, Exception types, Termination or
resumptive models, Uncaught exceptions, using try and catch, multiple catch clauses, nested
try statements, throw, throws and finally, built- in exceptions, creating own exception sub
classes.
Multithreading- Differences between thread-based multitasking and process-based
multitasking, Java thread model, creating threads, thread priorities, synchronizing threads,
inter thread communication.
UNIT -IV
The Collections Framework (java.util)- Collections overview, Collection Interfaces, The
Collection classes- Array List, Linked List, Hash Set, Tree Set, Priority Queue, Array Deque.
Accessing a Collection via an Iterator, Using an Iterator, The For-Each alternative, Map
Interfaces and Classes, Comparators, Collection algorithms, Arrays, The Legacy Classes and
Interfaces- Dictionary, Hashtable ,Properties, Stack, Vector
More Utility classes, String Tokenizer, Bit Set, Date, Calendar, Random, Formatter, Scanner
UNIT – V
GUI Programming with Swing – Introduction, limitations of AWT, MVC architecture,
components, containers. Understanding Layout Managers, Flow Layout, Border Layout, Grid
Layout, Card Layout, Grid Bag Layout.
Event Handling- The Delegation event model- Events, Event sources, Event Listeners,Event
classes, Handling mouse and keyboard events, Adapter classes, Inner classes,Anonymous
Inner classes.
A Simple Swing Application, Applets – Applets and HTML, Security Issues, Applets and
Applications, passing parameters to applets. Creating a Swing Applet, Painting in Swing, A
Paint example, Exploring Swing Controls- JLabel and Image Icon, JText Field, The Swing
Buttons- JButton, JToggle Button, JCheck Box, JRadio Button, JTabbed Pane, JScroll Pane,
JList, JCombo Box, Swing Menus, Dialogs.
SUGGESTED BOOKS:
TEXT BOOKS:
1. Java The complete reference, 9th edition, Herbert Schildt, McGraw Hill Education
(India) Pvt. Ltd
2. Understanding Object-Oriented Programming with Java, updated edition, T. Budd,
Pearson Education
REFERENCE BOOKS:
1. An Introduction to programming and OO design using Java, J. Nino and F.A. Hosch,
John Wiley & sons.
2. Introduction to Java programming, Y. Daniel Liang, Pearson Education.
3. Object Oriented Programming through Java, P. Radha Krishna, Universities Press.
4. Programming in Java, S. Malhotra, S. Chudhary, 2nd edition, Oxford Univ. Press.
5. Java Programming and Object oriented Application Development, R. A. Johnson,
Cengage Learning.
NPTEL Web Course: http://nptel.ac.in/courses/106106147/3