GithubHelp home page GithubHelp logo

yedhink / ktu-java Goto Github PK

View Code? Open in Web Editor NEW
12.0 2.0 15.0 2.01 MB

Learn Java easily. A collection of simple programs primarily focusing on the KTU syllabus for Java

License: MIT License

Java 99.44% HTML 0.56%
java jdk9 awt swing-gui javafx-application simple-programs ktu learn-java

ktu-java's Introduction

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

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 SE Development Kit(JDK) --> Install JDK
  2. 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 above 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
    Then from command line create a clone in your local machine by:-
    git clone https://github.com/yedhink/KTU-Java.git
    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. Applet
  12. Swing
  13. File Handling
  14. Event Handling
  15. Data Structures
  16. Interfaces
  17. Arrays
  18. JDBC

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)
	└──── Creates an Applet program to add 2 numbers 
	└──── Covers basics of java.awt,java.applet and some of Swing
	└──── Learn basics of Listeners and Events
	└──── 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

6) Data Types And Operators     
	└──── Must needed basics. Dont miss this one.  
	└──── Different Data Types  
	└──── Type Casting  
	└──── Parsing Data Types  
	└──── Assignment  
	└──── Arithmetic
	└──── Unary
	└──── Relational
	└──── TypeComparison 
	└──── Bitwise 
	└──── Conditional 

7) 2darray      
	└──── Learn inputting into a 2d Array 
	└──── Addition of Matrices 
	└──── Multiplication of Matrices 

8) Loops      
	└──── The name itself suggests what this offers :p 
	└──── For loops
	└──── if-else-if statements 

9) Abstract Keyword      
	└──── What is the "abstract" keyword? 
	└──── An example to explain in detail.

10) JDBCTemplate      
	└──── Java Database Connectivity 
	└──── Basics of mysql 
	└──── Basics of JDBC 
	└──── Reading and writing from DB 

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. It's important to stick on to the Contribution guidelines while contributing. 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 if you have any questions.

Credits

Oracle Java Documentation, tutorialspoint were great references.

License

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

Spread the word

Liked the project? Just give it a star ⭐ and spread the word!

ktu-java's People

Contributors

kurianbenoy avatar leomv55 avatar yadhu98 avatar yedhink avatar yedhukrishnan avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

ktu-java's Issues

Add Loop based programs

Since loops are also part of KTU syllabus in Module 1.
Add a set of programs to practise concepts of Loops

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.