Skip to content
forked from yedhink/KTU-Java

Learn Java easily. A collection of simple programs primarly focussed on the KTU syllabus for Java

License

Notifications You must be signed in to change notification settings

yadhu98/KTU-Java

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

 /$$                                                     /$$   /$$   /$$                     
| $$                                                    | $$  /$$/  | $$                     
| $$        /$$$$$$   /$$$$$$   /$$$$$$  /$$$$$$$       | $$ /$$/  /$$$$$$   /$$   /$$       
| $$       /$$__  $$ |____  $$ /$$__  $$| $$__  $$      | $$$$$/  |_  $$_/  | $$  | $$       
| $$      | $$$$$$$$  /$$$$$$$| $$  \__/| $$  \ $$      | $$  $$    | $$    | $$  | $$       
| $$      | $$_____/ /$$__  $$| $$      | $$  | $$      | $$\  $$   | $$ /$$| $$  | $$       
| $$$$$$$$|  $$$$$$$|  $$$$$$$| $$      | $$  | $$      | $$ \  $$  |  $$$$/|  $$$$$$/       
|________/ \_______/ \_______/|__/      |__/  |__/      |__/  \__/   \___/   \______/          
                                                                                             
                                                                                             
                                                                                             
                            /$$$$$                                                           
                           |__  $$                                                           
                              | $$  /$$$$$$  /$$    /$$  /$$$$$$                             
                              | $$ |____  $$|  $$  /$$/ |____  $$                            
                         /$$  | $$  /$$$$$$$ \  $$/$$/   /$$$$$$$                            
                        | $$  | $$ /$$__  $$  \  $$$/   /$$__  $$                            
                        |  $$$$$$/|  $$$$$$$   \  $/   |  $$$$$$$                            
                         \______/  \_______/    \_/     \_______/                              
                                                                                             
                                                                                             
                                                                                             
 /$$      /$$ /$$   /$$     /$$             /$$$$$$$$                                     /$$
| $$  /$ | $$|__/  | $$    | $$            | $$_____/                                    | $$
| $$ /$$$| $$ /$$ /$$$$$$  | $$$$$$$       | $$        /$$$$$$   /$$$$$$$  /$$$$$$       | $$
| $$/$$ $$ $$| $$|_  $$_/  | $$__  $$      | $$$$$    |____  $$ /$$_____/ /$$__  $$      | $$
| $$$$_  $$$$| $$  | $$    | $$  \ $$      | $$__/     /$$$$$$$|  $$$$$$ | $$$$$$$$      |__/
| $$$/ \  $$$| $$  | $$ /$$| $$  | $$      | $$       /$$__  $$ \____  $$| $$_____/          
| $$/   \  $$| $$  |  $$$$/| $$  | $$      | $$$$$$$$|  $$$$$$$ /$$$$$$$/|  $$$$$$$       /$$
|__/     \__/|__/   \___/  |__/  |__/      |________/ \_______/|_______/  \_______/      |__/  

Made with ❤ by yours truly

Acknowledgement

I would like to start by thanking my teacher Ms.Divya John for giving me the best introduction to the Java world.

Introduction

This repo consists of my work on Java and the simple programs which i had done inorder to learn Java.
To be specific my aim was to familiarize with the APJ Abdul Kalam Technological University's (initially Kerala Technological University(KTU)) syllabus for Java.
Created this repository with the aim of helping out my friends and others to understand the basics of Java and to understand its scope by doing some programs.

Requirements

  1. Java (Obviously) --> Install Java
  2. Java SE Development Kit(JDK) --> Install JDK
  3. For coding make use of IDEs like IntelliJ
    or Text Editors like Sublime Text
    or the classic and powerful command line editor Vim which i use. ¯\_(ツ)_/¯

How to use my repositiory?

Assuming that you've already installed the requirements and it is in a working condition. Then:-

  1. Fork the repository(optional)
  2. Clone/Download the files into your local machine
    For Linux Users :-
    Set up git in your local machine
    From the Clone with HTTPs section, copy the clone URL for the repository.
    Then from command line create a clone in your local machine by:-

    git clone url

    For Other Users :-
    Follow this documentation

Content

In the programs that i've done , i have covered and most importantly used concepts such as :

1)Classes and Objects, 2)Operators and their Precedence, 3)Packages, 4)Method Overiding and Overloading, 5)Static Instances, 6)Threads, 7)String, 8)Streams and IO, 9)Exception Handling, 10)AWT, 11)Swing, 12)File Handling, 13)Event Hadnling, 14)Data Structures, 15)Interfaces.

A bit about what each directory in my repo has to offer

1) EastKtuMath
	└──── Numerical Integration using Trapezoidal or Simpsons Methods
	└──── Get all the math steps as output (optional)
	└──── Streams for IO 
	└──── An exquisite expression parser included within
	└──── And yes you guessed it right! I used to do all my math assignements this way. :D

2) Threads
	└──── By Runnable Interface 
	└──── By Extending Thread Class
	└──── Runnable Interface in Main
	└──── Synchronization
	└──── Some fine practice problems

3) EventHandling
	└──── Creates a simple login Graphical User Interface(GUI)
	└──── Covers basics of java.awt and some of Swing
	└──── Learn basics of Listeners 
	└──── Basics from this required in upcoming programs

4) Overloading and Overriding
	└──── Learn the basics of Overloading,Overriding
	└──── Dynamic Method Dispatching 
	└──── What's super() and what is "this"? You will see
	└──── Basics of jump statements
	└──── Interfaces and Implementation
	└──── Basics of Packages
	└──── File Handling basics

5) S3CsSgpa      
	└──── Well? Want to apply what you've learnt? This is your opportunity. 
	└──── Creates a simple GUI to find your SGPA
	└──── Sorting 
	└──── Data Structures 
	└──── Provides a great idea on javax.swing(the 'x' matters :p) 
	└──── Love designing? Play with java.awt.Color

What's next?

Now what you waiting for? Compile all the *.java files and run it.
If you're using an IDE like Intellij then i suggest you follow this documentation.
For all others, the most easiest way would be to fire up your Terminal Emulator or Command Line(cmd) for Windows users and change directory (eg:- cd S3CsSgpa) into the one of the directories in my repo.
Then compile into the same directory (which the "." represents) by :

javac -d . *.java

After creating the compiled .class file, just run it using (avoid the .class extension) :

java classWhichConsistsOfMainMethod

What if it's part of a Package? No problemo. After compiling , Run :

java nameOfPackage.filename

Overviews

Your SGPAs a click away...

Contribute

Have you been looking for open source repositories to contribute? Look no further! You have come to the right place. Try and complete the TODO list. Let's work together. :)

TODO list

  • Java Database Connectivity(JDBC) -> Basics and Implementaion
  • Make the Graphical User Interfaces look better
  • Applets -> Undone since it's deprecated from JDK 9
  • Basics and exmaples of abstract keyword
  • 2-D array and examples
  • Standalone examples for Operators and their Precedence

Contact

Having issues in the program? Open up an issue in the issues counter, so that i could know about it. Feel free to contact me via Linkedin to clear your doubts.

Credits

Without Vim and Bash this project wouldn't have become a reality. Well thanks to Bram Moolenaar. Oracle Java Documentaion , tutorialspoint were also great references. Last but not the least , i would like to mention Arch Linux for providing me with such a smooth sailing workflow -> "makepkg! Not war".

License

This project is licensed under the MIT License - see the LICENSE.md file for details

About

Learn Java easily. A collection of simple programs primarly focussed on the KTU syllabus for Java

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 100.0%