Foundation & BasicBeginner

Core Java Foundation

Programming logic, Java syntax, OOP, arrays, strings, exceptions, collections, file handling, debugging and a mini-project.

Talk to a counsellor about Core Java Foundation

Fees, batch dates and timings are shared by a counsellor. No payment is needed to ask.

What you will cover
  • Programming logic
  • Java syntax
  • OOP
  • arrays
  • strings
  • exceptions
  • collections
  • file handling
  • debugging
  • a mini-project

Topic list from the institute's programme record.

Certification

Certificate terms for this programme are confirmed by the institute at admission. Any ADIVAS course-completion certificate is an institute certificate; it is not a university degree, an externally accredited qualification or a vendor certification (such as AWS or Microsoft) unless the institute states so in writing.

Curriculum 0.1 · Draft: written for ADIVAS and awaiting academic review and approval. Topics and weeks may change before your batch starts.

Your skill trail

You move through 5 stations. Each week builds one skill you can show, not just a topic you have heard.

  1. Thinking like a programmer

    Turn problems into steps and write, compile and run first Java programs with variables and input.

    • Week 1 Logic, algorithms and the first program
    • Week 2 Variables, data types and input
  2. Control and data

    Use conditions, loops, methods, arrays and Strings to solve everyday data problems.

    • Week 3 Decisions and loops
    • Week 4 Methods and arrays
    • Week 5 Strings and text processing
  3. Object-oriented Java

    Model real things as classes and objects and reuse code through inheritance and interfaces.

    • Week 6 Classes and objects
    • Week 7 Inheritance, polymorphism and interfaces
  4. Reliable code

    Handle exceptions and debug systematically with stack traces and test cases.

    • Week 8 Exceptions and debugging
  5. Data and mini-project

    Store data in collections and files and deliver a working menu-driven application.

    • Week 9 Collections
    • Week 10 File handling and the mini-project
  6. Contact and Expense Manager (console)

    Your project, reviewed by a trainer.

The ADIVAS mastery ladder: how each skill is recognised
  1. Explored You have seen the idea and tried a first example.
  2. Practising You can do it with hints and keep improving.
  3. Proficient You complete the weekly practical task correctly on your own.
  4. Proven You apply it in a project reviewed by your trainer.

Skill-level tracking is being added to the learner workspace. Your trainer already reviews weekly practical work.

What you will be able to do

  • Break a problem into clear steps and express it as an algorithm before coding.
  • Compile and run Java programs using variables, operators, conditions and loops.
  • Write methods and use arrays and Strings to process lists of data.
  • Design classes with fields, constructors and methods, and apply inheritance and interfaces.
  • Handle errors with try/catch and find bugs using stack traces and test cases.
  • Choose between ArrayList, HashSet and HashMap for a given data problem.
  • Read and write text files and build a small menu-driven mini-project.

Who it suits

  • School Class 11-12 students who enjoy problem solving and want a first real programming language with no prior experience.
  • College Diploma and degree students who need solid Java fundamentals for lab work, internships and later advanced courses.
  • Professional Career changers and working adults who want to start programming in Java through hands-on practice.

Prerequisites: Comfortable using a computer and typing. Basic school-level mathematics. No programming experience needed. Tools: JDK (a current long-term-support release), IntelliJ IDEA Community Edition or VS Code with Java extensions, Command line (javac and java), Git (basic use), Plain text editor for data files.

Weekly plan

Thinking like a programmer Weeks 1–2

Week 1: Logic, algorithms and the first program

Theory
  • Algorithms, flowcharts and pseudocode
  • How Java works: source file, javac, bytecode, JVM
  • Structure of a Java program and System.out.println
Lab
Install the JDK and an IDE, write Hello.java, compile with javac, run with java, then deliberately remove a semicolon and read the compiler error.
Homework
Write pseudocode for finding the largest of three numbers and for billing a shop purchase.
Deliverable
Hello.java printing your name, course and city, plus a one-page pseudocode sheet.
Weekly checkpoint
Sequence the compile-and-run steps; read three short snippets and state their output.
You will be able to
Break a problem into clear steps and express it as an algorithm before coding. Compile and run Java programs using variables, operators, conditions and loops.

Week 2: Variables, data types and input

Theory
  • int, double, char, boolean and String
  • Arithmetic, comparison and logical operators; integer division and type casting
  • Reading input with Scanner
Lab
Build a fee calculator that reads a course fee and discount percent and prints the payable amount and the 18% GST on it.
Homework
Write a program converting a temperature from Celsius to Fahrenheit and another that splits a total number of seconds into hours, minutes and seconds.
Deliverable
Two small programs with commented code and three sample runs each.
Weekly checkpoint
Predict outputs involving integer division, casting and operator precedence.
You will be able to
Compile and run Java programs using variables, operators, conditions and loops.
Control and data Weeks 3–5

Week 3: Decisions and loops

Theory
  • if, else if, switch
  • for, while and do-while loops
  • break, continue and nested loops
Lab
Write a marks-to-grade program, a multiplication table printer, a digit-sum program and a number-triangle pattern.
Homework
Write a program that prints all prime numbers up to a limit entered by the user.
Deliverable
A menu-free grade and pattern program set with test inputs listed.
Weekly checkpoint
Trace a nested loop by hand and fix an off-by-one loop bug.
You will be able to
Compile and run Java programs using variables, operators, conditions and loops.

Week 4: Methods and arrays

Theory
  • Declaring methods, parameters and return values
  • One-dimensional arrays and traversal
  • Two-dimensional arrays and method reuse
Lab
Store marks of five students in an array, then write separate methods for total, average, highest and a linear search by value.
Homework
Write a method that reverses an array and another that counts how many elements are above the average.
Deliverable
A marks-analysis program organised into at least four methods.
Weekly checkpoint
Predict output of array code; find the cause of an ArrayIndexOutOfBoundsException.
You will be able to
Write methods and use arrays and Strings to process lists of data.

Week 5: Strings and text processing

Theory
  • String methods: length, charAt, substring, indexOf, toUpperCase
  • String immutability, equals versus ==
  • StringBuilder and simple text validation
Lab
Write a palindrome checker, a vowel counter, a word counter and a mobile number validator (10 digits starting with 6-9).
Homework
Write a program that masks a card or phone number leaving only the last four digits visible.
Deliverable
A text-utility program with five tested methods.
Weekly checkpoint
Match String methods to results; debug an equals versus == comparison.
You will be able to
Write methods and use arrays and Strings to process lists of data.
Object-oriented Java Weeks 6–7

Week 6: Classes and objects

Theory
  • Class, object, fields and methods
  • Constructors, this, and access modifiers
  • Encapsulation with private fields, getters and setters; static members
Lab
Model a BankAccount class with deposit and withdraw that rejects overdrafts, then create several accounts in a main method.
Homework
Model a Student class with name, three marks and a method that returns the grade.
Deliverable
BankAccount and Student classes with a test main method and printed output.
Weekly checkpoint
Identify fields versus methods in a class diagram; predict output of object code with static counters.
You will be able to
Design classes with fields, constructors and methods, and apply inheritance and interfaces.

Week 7: Inheritance, polymorphism and interfaces

Theory
  • extends, super and method overriding
  • Polymorphism and abstract classes
  • Interfaces and when to choose them
Lab
Build Employee with Manager and Developer subclasses that compute salary differently, then process them through one Employee array.
Homework
Define a Payable interface and make Employee and Vendor both implement it.
Deliverable
A small class hierarchy with a polymorphic report printing all salaries.
Weekly checkpoint
Predict which overridden method runs; choose between inheritance and an interface for a case.
You will be able to
Design classes with fields, constructors and methods, and apply inheritance and interfaces.
Reliable code Weeks 8

Week 8: Exceptions and debugging

Theory
  • try, catch, finally and common exception types
  • throw, throws and custom exceptions
  • Reading stack traces, IDE debugger and writing test cases
Lab
Make a safe number-input routine that survives bad input, then use the IDE debugger on a deliberately buggy average method and write five test cases for it.
Homework
Add a custom InsufficientBalanceException to BankAccount and write test cases for its edge cases.
Deliverable
A debugging log listing three bugs, their cause, the fix and the test that proves it.
Weekly checkpoint
Order try/catch/finally output; locate a bug from a stack trace.
You will be able to
Handle errors with try/catch and find bugs using stack traces and test cases.
Data and mini-project Weeks 9–10

Week 9: Collections

Theory
  • ArrayList and iteration
  • HashSet for uniqueness and HashMap for key-value lookup
  • Sorting with Collections.sort and simple generics
Lab
Build a contact book: store names in an ArrayList, reject duplicate phone numbers with a HashSet and look up contacts with a HashMap.
Homework
Count how often each word occurs in a sentence using a HashMap.
Deliverable
A contact-book program with add, search and list features.
Weekly checkpoint
Choose the right collection for four scenarios; predict output of a HashMap counting loop.
You will be able to
Choose between ArrayList, HashSet and HashMap for a given data problem.

Week 10: File handling and the mini-project

Theory
  • Reading and writing text files with BufferedReader, FileWriter and try-with-resources
  • Designing a menu-driven console application
  • Presenting and reviewing code
Lab
Add save-to-file and load-from-file to the contact book, then finish the mini-project with a menu, input validation and exception handling.
Homework
Prepare a two-minute demo and a README listing features and known limits.
Deliverable
The finished mini-project with source code, sample data file and README.
Weekly checkpoint
Practical review: run the project, add a record, restart and confirm the data persists.
You will be able to
Read and write text files and build a small menu-driven mini-project.

Sample lessons

Week 6

Classes and objects: modelling a bank account

A class is a blueprint that describes what something has (fields) and what it can do (methods). An object is one real thing built from that blueprint. Encapsulation means keeping fields private and allowing changes only through methods that check the rules, so an account can never be given a negative balance by mistake. This is how larger Java programs stay safe and easy to change.

Class (blueprint)

  • Fields: name, balance
  • Methods: deposit, withdraw
  • Written once

Objects (real accounts)

  • Account A: Meena, 1200
  • Account B: Karthik, 800
  • Created many times with new

Step by step

  1. List the data a bank account holds: holder name and balance.
  2. Declare private fields and a constructor that sets them.
  3. Write deposit(amount) that adds only positive amounts.
  4. Write withdraw(amount) that refuses when the balance is too low.
  5. In main, create two objects and call the methods to see that each keeps its own balance.

In real life

A UPI app keeps each customer's balance inside a protected account record. You cannot edit the balance directly; you can only call actions like send or receive, and the app checks the rules each time.

Worked example

Problem. An account has balance 1000. Predict the balance after deposit(500), withdraw(2000) and withdraw(300), where withdraw rejects overdrafts.

Solution. After deposit: 1500. withdraw(2000) is rejected because 2000 > 1500, so the balance stays 1500. withdraw(300) succeeds: 1200.

Common mistakes

  • Making fields public so any code can set an invalid balance.
  • Forgetting that each object has its own fields; static fields are shared by all objects.

Try it yourself

  • Add a method that applies 4% yearly interest and returns the new balance.
  • Create three accounts and print the one with the highest balance.

Week 8

Exceptions: keeping a program alive on bad input

An exception is Java's way of reporting that something went wrong while the program runs, such as dividing by zero or typing letters where a number is expected. If nothing handles it, the program stops with a stack trace. A try block holds risky code, a catch block decides what to do, and finally runs cleanup whatever happens. Reading the stack trace from the top tells you the exception type and the exact line to inspect.

  1. 1try: risky code runs
  2. 2Error thrown?
  3. 3catch: handle the error
  4. 4finally: cleanup always runs
  5. 5Program continues

Step by step

  1. Write code that reads a number with Integer.parseInt.
  2. Run it with the input 'abc' and read the NumberFormatException and its line number.
  3. Wrap the call in try and add a catch for NumberFormatException.
  4. Print a friendly message and ask again in a loop.
  5. Add a finally block that prints a closing line and observe when it runs.

In real life

A ticket-booking page that crashes when someone types letters in the age box would lose customers. Catching the error and showing 'Please enter digits only' keeps the booking flow alive.

Worked example

Problem. What does this print? try { int x = 10 / 0; System.out.println("A"); } catch (ArithmeticException e) { System.out.println("B"); } finally { System.out.println("C"); }

Solution. 10 / 0 throws ArithmeticException, so 'A' is skipped. The catch prints B and finally prints C. Output: B then C.

Common mistakes

  • Catching Exception everywhere and hiding the real problem with an empty catch block.
  • Placing code that depends on the risky line after it inside try, then being surprised when it is skipped.

Try it yourself

  • Write a loop that keeps asking for an age until a valid number between 1 and 120 is entered.
  • Create a custom exception named InvalidMarksException and throw it for marks above 100.

Try the questions

The same skills are asked at three levels: School (Classes 6–12), College and Professional. Switch the level and the language (English or Tamil), and say how sure you are before you check: knowing what you are unsure about is part of learning.

Classes 6–12: everyday examples, no prior knowledge. Practice only. Nothing here is graded or saved.

Question 1 / 4 · Define an algorithm

A clear list of steps for solving a problem, such as the steps to make tea, is called what?

A clear list of steps for solving a problem, such as the steps to make tea, is called what?
How sure are you?

Projects

Contact and Expense Manager (console)

Build a menu-driven Java console application for a small shop or student that stores records in a text file. Choose either a contact book or a daily expense tracker and make it robust against bad input.

Tasks

  1. Design a class (Contact or Expense) with private fields, a constructor and getters.
  2. Keep records in an ArrayList and prevent duplicates using a HashSet or HashMap.
  3. Create a menu to add, list, search and delete records and loop until the user exits.
  4. Save to and load from a text file when the program starts and ends.
  5. Handle invalid input and missing files with exceptions and clear messages.
  6. Write at least eight test cases in a table with expected results.

Sample input

Menu choice 1 (Add): name=Meena, phone=9876543210, then choice 3 (Search): Meena

Expected output

Record added message, search shows Meena 9876543210; after restart the record is still available from the file.

How it is assessed

CriterionWeight
Correct working features and menu30%
Class design and code organisation20%
Exception handling and input validation20%
File persistence15%
Test cases and README15%

Stretch challenge: Add sorting by name and a report showing the total or count per category.

How you are assessed

Each week ends with a 20-minute checkpoint of 5 to 6 questions mixing code reading, output prediction and a short debugging item, followed by one lab submission checked against listed test cases.

Practical work. Final practical: demonstrate the mini-project live, fix one seeded bug in unfamiliar code and add two test cases chosen by the trainer.

What trainers look forWeight
Correct program behaviour against test cases35%
Code readability and OOP design25%
Debugging and exception handling25%
Explanation and documentation15%

Where this can lead

  • Prepares you for junior Java practice roles and for advanced Java study such as Spring Boot.
  • Prepares you to write and debug small utilities and automate simple data tasks.
  • Gives a base for college programming labs and further study in data structures.

These describe skills you will build. ADIVAS does not guarantee jobs, placement or salary.