Friday, July 29, 2022

Arrays of Primitive Data Types

An array is a collection of similar data types. Array is a container object that hold values of homogenous type. It is also known as static data structure because size of an array must be specified at the time of its declaration.

An array can be either primitive or reference type. It gets memory in heap area. Index of array starts from zero to size-1.

Array Declaration

Syntax :

datatype[] identifier;
or
datatype identifier[];

Both are valid syntax for array declaration. But the former is more readable.

Example :

int[] arr;
char[] arr;
short[] arr;
long[] arr;
int[][] arr; //two dimensional array.

Initialization of Array

new operator is used to initialize an array.

Example :

int[] arr = new int[10];    //10 is the size of array.
or
int[] arr = {10,20,30,40,50};

Accessing array element

As mention ealier array index starts from 0. To access nth element of an array. Syntax

arrayname[n-1];

Example : To access 4th element of a given array

int[] arr={10,20,30,40};
System.out.println("Element at 4th place"+arr[3]);
The above code will print the 4th element of array arr on console.

foreach or enhanced for loop

J2SE 5 introduces special type of for loop called foreach loop to access elements of array. Using foreach loop you can access complete array sequentially without using index of array. Let us see an exapmle of foreach loop.

class Arraydemo
{
public static void main(String[] args)
  {
    int[] arr={10,20,30,40};
	for(int x:arr)
	{
	System.out.println(x);
	}
   }
}
Output:
10
20
30
40

Wednesday, July 13, 2022

BCA Object Oriented Programming in Java(OOP) Syllabus

This page contains Syllabus of Object Oriented Programming in Java of BCA.

TitleObject Oriented Programming in Java
Short NameOOP
Course codeCACS204
Nature of courseTheory + Practical
Semesterthird-semester
Full marks60 + 20 + 20
Pass marks24 + 8 + 8
Credit Hrs3
Elective/CompulsaryCompulsary

 Units and Unit Content

Course Description

This course covers preliminary concepts of object-oriented approach in programming with basic skills using Java. Control structures, Classes, methods and argument passing and iteration; graphical user interface basics Programming and documentation style.

Course Objectives 

The general objectives of this course are to provide fundamental concepts of Object Oriented Programming and make students familiar with Java environment and its applications.

1. Introduction to Java
teaching hours: 2 hrs

Definition, History of Java, The Internet and Java's Place of IT, Applications and Applets, Java Virtual Machine, Byte Code-not an Executable code, Procedure Oriented vs. Object-Oriented Programming, Compiling and Running a Simple Program, Setting up your Computer for Java Environment, Writing a program, Compiling, Interpreting and Running the Program, Handling Common Errors. 

2. Tokens, Expressions and Control Structures
teaching hours: 5 hrs

Primitive Data Types: Integers, Floating-Point types, Characters, Booleans; User Defined Data Types, Declarations, Constants, Identifiers, Literals, Type Conversion and Casting, Variables: Variable Definition and Assignment, Default Variable Initializations;  Command-Line Arguments, Arrays of Primitive Data Types, Comment Syntax, Garbage Collection, Expressions, Using Operators: Arithmetic, Bitwise, Relational, Logical, Assignment, Conditional, Shift, Ternary, Auto-increment and Auto-decrement, Using Control Statements(Branching: if, switch; Looping: while, do-while, for; Jumping statements: break, continue and return)

3. Object Oriented Programming Concepts
teaching hours: 9 hrs

Fundamentals of Classes: A  Simple Class, Creating Class Instances, Adding methods to  a class, Calling Functions/Methods, Abstraction, Encapsulation, Using 'this' Keyword, Constructors, Default constructors, More on methods: Passing by Value,by Reference, Access Control, Methods that Return Values, Polymorphism and Method Overloading, Recursion; Nested and Inner Classes

4. Inheritance & Packaging
teaching hours: 3 hrs

Inheritance: Using 'extends' keyword, Subclasses and Superclasses, 'super' keyword usage. Overriding Methods, Dynamic Method Dispatch; The Object class, Abstract and Final Classes, Package: Access Control; Interfaces: Defining an Interface, Implementing and applying interfaces.

5. Handling Error / Exceptions
teaching hours: 2 hrs

Basic Exceptions, Proper use of exceptions, User defined Exceptions, Catching Exception: try, catch; Throwing and re-throwing: throw, throws; Cleaning up using the finally clause.

6. Handling Strings
teaching hours: 2 hrs

Creation, Concatenation and Conversion of a String, Changing Case, Character Extraction, String Comparision, Searching Strings, Modifying Strings, String Buffer.

7. Threads
teaching hours: 7 hrs

Create/Instantiate/Start New Threads: Extending java.lang.Thread, Implementingbjava.lang.Runnable Interface; Understand Thread Execution, Thread Priorities, Synchronization, Inter-Thread Communication, Deadlock.

8. I/O and Streams
teaching hours: 2 hrs

java.io package, Files and directories, Streams and Character Streams; Reading/Writing Console Input/Output, Reading and Writing files, The Serialization Interface, Serialization & Deserialization.

9. Understanding Core Packages
teaching hours: 3 hrs

Using java.lang Package: java.lang.Math, Wrapper classes and associated methods (Number, Double, Float; Integer, Byte; Short, Long; Character, Boolean); Using java.util package: Core classes (Vector, Stack, Dictionary, Hashtable, Enumerations, Random Number Generation).

10. Holding Collection of Data
teaching hours: 3 hrs

Arrays And Collection Classes/Interfaces, Map/List/Set Implementations: Map Interface, List Interface, Set Interface, Collection Classes: Array List, Linked List, Hash Set and Tree Set, Accessing Collections/Use of An Iterator, Comparator.

11. Java Applications
teaching hours: 8 hrs

About AWT & Swing, About JFrame (a top level window in Swing), Swing components (JLabel, About text component like JTextField, JButton, Event Handling in Swing Applications, Layout Management using FlowLayout, Border Layout, Grid Layout, Using JPanel, Choice components like JCheck Box, JRadio Button, Borders components, JCombo Box & its events, JList & its events with MVC patterns, Key & Mouse Event Handling, Menus in swing, JText Area, Dialog boxes in swing, JTable for Displaying Data in Tabular form, MDI using JDesktop Pane & JInternal Frame, Using IDE like Netbeans, JBuilder for building java applications using Drag & Drop), Adapter classes.

12. Introduction to Java Applets
teaching hours: 1 hrs

Definition, Applet lifecycle methods, Build a simple applet, Using Applet Viewer, Adding Controls: Animation Concepts.

13. Database Programming using JDBC
teaching hours: 2 hrs

Using Connection, Statement & Result Set Interfaces for Manipulating Data with the Databases.


Text Books                        

1. Deitel & Dietel. -Java: How to-pikigrarn-. 9th Edition. TearsorrEducation. 2011, ISBN: 9780273759168      

2. Herbert Schildt. "Java: The CoriviaeReferi4.ic e 61 Seventh Edition. McGraw -Hill 2006, 1SBN; 0072263857

Reference Books 

1. Bruce Eckel, -Thinking in Java", 4111 Edition, Prentice Hall, 2006, ISBN: 0- 13-187248-6

2. Cay Horstmann and Grazy Cornell, "Core Java Volume 1-Fundamentals", Ninth edition, Prentice Hall, 2012, ISBN: 978-0137081899

3. E. Ralagurusan-iy, "Programming with Java: A Primer", 4th Edition, Tata McGraw Hill Publication. India,

techguruspeaks

  Core Java programming Introduction to Java Java Features Writing a Simple Java Program Java Keywords and Comments Variables, Identifiers ...