per person /

Free

Home Courses

Java Technologies

Java Technologies

Teacher

Sashi Bhusan Maharana

Category

Core Courses

Course Attendees

Still no participant

Course Reviews

Still no reviews

Course Name: Java Technologies

Code (Credit):  CUTM1031 (2-1-1)

Course Objectives

  • Understand fundamentals of programming such as variables, conditional and iterative execution, methods, etc.
  • Understand fundamentals of object-oriented programming in Java, including defining classes, invoking methods, using class libraries, etc.
  • Be aware of the important topics and principles of software development
  • Have the ability to write a computer program to solve specified problems
  • Have the ability to write a computer program to solve specified problems
  • Be able to use the Java SDK environment to create, debug and run simple Java programs

Learning Outcomes

  • Use an integrated development environment to write, compile, run, and test simple object-oriented Java programs
  • Read and make elementary modifications to Java programs that solve real-world problems
  • Identify and fix defects the common safety issues in code
  • Document a Java program using Javadoc
  • Use a version control system to track source code in a project
  • Qualify confidently any interview process where Java is the requirement

Course Syllabus

Module-I: Introduction to Java (8 Hr)
Features and Installation, Java Programming Basics, Decision Making and Looping, Class and Object, Inheritance

Practice 1 (1 Hr)

Practice 2 (1 Hr)

 

Module-II: Package and Safe Code (5 Hr)
Interfaces, Packages and Access Protection, Exception Handling (Fault Tolerant Programming)

Practice 3 (1 Hr)

 

Module-III: Collection and Threads (5 Hr)
ArrayList, Vector, Set, Map, Multi-threaded Programming, Synchronization

Practice 4 (1 Hr)

 

Module-IV: Language and Utility Packages (5 Hr)
String Handling, Wrappers, Runtime Memory Management, Cloning, Calendar, Date and Time Facilities, Scanner, Internationalization

Practice 5 (1 Hr)

Practice 6 (1 Hr)

 

Module-V: Input/ Output and Applets (5 Hr)
Byte and Character Stream I/O, Persistence, Applet: Architecture, Skeleton, and Implementation

Practice 7 (1 Hr)

Practice 8 (1 Hr)

 

Module-VI: GUI Programming (5 Hr)
AWT: Container, Components, Layout Managers, Event Handling

Practice 9 (1 Hr)

Practice 10 (1 Hr)

 

Module-VII: Networking and Advanced (5 Hr)
Networking Fundamental, Client-Server Communication, Remote Method Invocation (RMI), Java Virtual Machine (JVM) Tuning, Java Profiler

Practice 11 (1 Hr)

Practice 12 (1 Hr)

 

References
Text Book(s):
1. Java The Complete Reference, Fifth Edition, C25 Herbert Schildt, McGraw-Hills

 

Reference Book(s):
1. Murach’s Java Programming, 5th Edition, Joel Murach, Mike Murach & Associates, 2011, ISBN-78-1-943872-07-7
2. Introduction to Java Programming, Comprehensive, 10th ed., Y. Daniel Liang, 2014. ISBN-10: 0133813460, ISBN-13: 9780133813463

 

Online Source(s):
1. https://docs.oracle.com/javase/tutorial/java/index.html
2. https://www.programiz.com/java-programming
3. https://marcus-biel.com/

 

Software/Tool(s): Java 8, Eclipse IDE
Online Compiler: https://ideone.com/
Online Coding Practice: https://www.hackerrank.com/

 

Projects
However, not limited to:
1. Chat application
2. Text Editor application
3. GUI based Scientific Calculator
4. Paint application
5. Slambook
(*PROJECTS WILL BE ASSIGNED TO STUDENTS' GROUPS ON DAY-1 AND REVIEWS MAY COMMENCE BEYOND CLASS HOURS)

Monitoring:
Credit will be received only on making an honest effort. It is expected that students will finish watching all the lecture videos and complete all challenge problems by the end of each lecture week.
Borrowing code from other sources is allowed only with proper attribution and credit given to the original author(s).

Session Plan

Session 1 (Module-I)

Topic:
Introduction to Java and Java programming Environment, Features of Java- Object Oriented Programming

 

Activity:
Lecture, Demonstration (Eclipse IDE with Java 8)

 

Quiz:
https://chortle.ccsu.edu/Java5/Notes/chap05/fillBlankCh05.html

 

Practice programs to be picked from "Java Technologies-I-Common Programs" list

 

Online Assignment:
https://www.programiz.com/java-programming/examples

 

Online Quiz:
https://www.sanfoundry.com/java-questions-answers-quiz/

 

Video:
https://marcus-biel.com/java-course-introduction/

 

Textbook:
Page No: 9-15, 18, 19

 

Notes:
JT-I-Mod-I

Session 2 (Module-I)

Session 3 (Module-I)

Session 4 (Module-I)

Practice 1 (Module-I)

Session 5 (Module-I)

Topic:
Concept of Objects and Classes

 

Activity:
Lecture, Demonstration (Eclipse IDE with Java 8)

 

Quiz:

https://chortle.ccsu.edu/Java5/Notes/chap25/chap25quizRev2.html

https://chortle.ccsu.edu/Java5/Notes/chap09C/chap09CquizRev2.html

 

Practice programs to be picked from "Java Technologies-I-Common Programs" list

 

Online Assignment:
https://www.programiz.com/java-programming/examples

 

Online Quiz:
https://www.sanfoundry.com/java-questions-answers-quiz/

 

Video:

https://www.youtube.com/watch?v=tazwzyMRwcM&list=PLrKBFf87Cy9CHAyhX9l0rhktvg3pCG5R5&index=19

https://www.youtube.com/watch?v=tazwzyMRwcM&list=PLrKBFf87Cy9CHAyhX9l0rhktvg3pCG5R5&index=19

Textbook:
Page No: 130-144

 

Notes:
JT-I-Mod-I

Session 6 (Module-I)

Topic:
Constructor, overloading

 

Activity:
Lecture, Demonstration (Eclipse IDE with Java 8)

 

Quiz:

https://chortle.ccsu.edu/Java5/Notes/chap34A/fillBlankCh34.html

 

Practice programs to be picked from "Java Technologies-I-Common Programs" list

 

Online Assignment:
https://www.programiz.com/java-programming/examples

 

Online Quiz:
https://www.sanfoundry.com/java-questions-answers-quiz/

 

Video:

https://www.youtube.com/watch?v=6UfXKx2Q59Q&list=PLrKBFf87Cy9CHAyhX9l0rhktvg3pCG5R5&index=26

 

Textbook:
Page No: 145-148

 

Notes:
JT-I-Mod-I

Session 7 (Module-I)

Topic:
Inheritance

 

Activity:
Lecture, Demonstration (Eclipse IDE with Java 8)

 

Quiz:

https://chortle.ccsu.edu/Java5/Notes/chap50/chap50quizRev2.html

https://chortle.ccsu.edu/Java5/Notes/chap35/fillBlankCh35.html

 

Practice programs to be picked from "Java Technologies-I-Common Programs" list

 

Online Assignment:
https://www.programiz.com/java-programming/examples

 

Online Quiz:
https://www.sanfoundry.com/java-questions-answers-quiz/

 

Video:

https://marcus-biel.com/access-and-non-access/

 

Textbook:
Page No: 190-208

 

Notes:
JT-I-Mod-I

Session 8 (Module-I)

Topic:
Method overriding, Dynamic Method Dispatch

 

Activity:
Lecture, Demonstration (Eclipse IDE with Java 8)

 

Quiz:

https://chortle.ccsu.edu/Java5/Notes/chap34B/chap34BquizRev2.html

https://chortle.ccsu.edu/Java5/Notes/chap52/chap52quizRev2.html

 

Practice programs to be picked from "Java Technologies-I-Common Programs" list

 

Online Assignment:
https://www.programiz.com/java-programming/examples

 

Online Quiz:
https://www.sanfoundry.com/java-questions-answers-quiz/

 

Video:

https://www.youtube.com/watch?v=Ov8amkjkyH8&list=PLrKBFf87Cy9CHAyhX9l0rhktvg3pCG5R5&index=32

 

Textbook:
Page No: 208-209, 211-216

 

Notes:
JT-I-Mod-I

Practice 2 (Module-II)

Session 9 (Module-II)

Topic:
Interface, Implementing Interfaces, Variables in Interfaces, Interfaces can be extended

 

Activity:
Lecture, Demonstration (Eclipse IDE with Java 8)

 

Quiz:

https://chortle.ccsu.edu/Java5/Notes/chap53/chap53quizRev2.html

 

Practice programs to be picked from "Java Technologies-I-Common Programs" list

 

Online Assignment:
https://www.programiz.com/java-programming/examples

 

Online Quiz:
https://www.sanfoundry.com/java-questions-answers-quiz/

 

Video:

https://www.youtube.com/watch?v=lbVmrWqY-VA&list=PLrKBFf87Cy9CHAyhX9l0rhktvg3pCG5R5&index=41

 

Textbook:
Page No: 235-247

Session 10 (Module-II)

Topic:
Package, Access Protection

 

Activity:
Lecture, Demonstration (Eclipse IDE with Java 8)

 

Practice programs to be picked from "Java Technologies-I-Common Programs" list

 

Online Assignment:
https://www.programiz.com/java-programming/examples

 

Online Quiz:
https://www.sanfoundry.com/java-questions-answers-quiz/

 

Video:

https://www.youtube.com/watch?v=xd_pRY_SYKg&list=PLrKBFf87Cy9CHAyhX9l0rhktvg3pCG5R5&index=22

 

Textbook:
Page No: 224-234

Session 11 (Module-II)

Topic:
Excepting Handling: try & catch

 

Activity:
Lecture, Demonstration (Eclipse IDE with Java 8)

 

Quiz:

https://chortle.ccsu.edu/Java5/Notes/chap81/chap81quizRev2.html

 

Practice programs to be picked from "Java Technologies-I-Common Programs" list

 

Online Assignment:
https://www.programiz.com/java-programming/examples

 

Online Quiz:
https://www.sanfoundry.com/java-questions-answers-quiz/

 

Video:

https://marcus-biel.com/checked-unchecked-exceptions-java/

 

Textbook:

Page No: 255-262

 

Notes:

JT-I-11,12,13

Session 12 (Module-II)

Topic:
Types Checked, Unchecked exceptions, Multiple catch, throw

 

Activity:
Lecture, Demonstration (Eclipse IDE with Java 8)

 

Quiz:

https://chortle.ccsu.edu/Java5/Notes/chap81/chap81quizRev2.html

 

Practice programs to be picked from "Java Technologies-I-Common Programs" list

 

Online Assignment:
https://www.programiz.com/java-programming/examples

 

Online Quiz:
https://www.sanfoundry.com/java-questions-answers-quiz/

 

Video:

https://marcus-biel.com/checked-unchecked-exceptions-java/

 

Textbook:

Page No: 255-262

 

Notes:

JT-I-11,12,13

Session 13 (Module-II)

Topic:
throws, finally, Java’s Built in exceptions, user defined exception

 

Activity:
Lecture, Demonstration (Eclipse IDE with Java 8)

 

Practice programs to be picked from "Java Technologies-I-Common Programs" list

 

Online Assignment:
https://www.programiz.com/java-programming/examples

 

Online Quiz:
https://www.sanfoundry.com/java-questions-answers-quiz/

 

Video:

https://marcus-biel.com/checked-unchecked-exceptions-java/

 

Textbook:

Page No: 263-269

 

Notes:

JT-I-11,12,13

Practice 3 (Module-II)

Project Presentation 1 (Internal)

Session 14 (Module-III)

Session 15 (Module-III)

Topic:
Collection: Vector, and Set

 

Activity:
Lecture, Demonstration (Eclipse IDE with Java 8)

 

Practice programs to be picked from "Java Technologies-I-Common Programs" list

 

Online Assignment:
https://www.programiz.com/java-programming/examples

 

Online Quiz:
https://www.sanfoundry.com/java-questions-answers-quiz/

 

Video:

https://www.youtube.com/watch?v=d3QbptJRln4

https://marcus-biel.com/arraylist/

https://marcus-biel.com/java-collections-framework/

Session 16 (Module-III)

Topic:
Multithreading, Java Thread Model, Creating a thread, Creating Multiple threads, sleep(), Using isAlive() and join()

 

Activity:
Lecture, Demonstration (Eclipse IDE with Java 8)

 

Practice programs to be picked from "Java Technologies-I-Common Programs" list

 

Online Assignment:
https://www.programiz.com/java-programming/examples

 

Online Quiz:
https://www.sanfoundry.com/java-questions-answers-quiz/

 

Video:

https://www.youtube.com/watch?v=TCd8QIS-2KI

 

Textbook:

Page No: 275, 280-286

 

Notes:

JT-I-16,17

Session 17 (Module-III)

Topic:
Synchronization, priorities

 

Activity:
Lecture, Demonstration (Eclipse IDE with Java 8)

 

Practice programs to be picked from "Java Technologies-I-Common Programs" list

 

Online Assignment:
https://www.programiz.com/java-programming/examples

 

Online Quiz:
https://www.sanfoundry.com/java-questions-answers-quiz/

 

Video:

https://www.youtube.com/watch?v=TCd8QIS-2KI

 

Textbook:

Page No: 292-297

 

Notes:

JT-I-16,17

Session 18 (Module-III)

Topic:
wait() & notify()

 

Activity:
Lecture, Demonstration (Eclipse IDE with Java 8)

 

Practice programs to be picked from "Java Technologies-I-Common Programs" list

 

Online Assignment:
https://www.programiz.com/java-programming/examples

 

Online Quiz:
https://www.sanfoundry.com/java-questions-answers-quiz/

 

Video:

https://www.youtube.com/watch?v=TCd8QIS-2KI

 

Textbook:

Page No: 297-302

Practice 4 (Module-III)

Session 19 (Module-IV)

Topic:
Exploring java.lang:
String Handling: String constructors, String length, and character extraction, String Comparison, Modifying a string

 

Activity:
Lecture, Demonstration (Eclipse IDE with Java 8)

 

Quiz:

https://chortle.ccsu.edu/Java5/Notes/chap29/chap29quizRev2.html

https://chortle.ccsu.edu/Java5/Notes/chap49D/chap49DquizRev2.html

 

Practice programs to be picked from "Java Technologies-I-Common Programs" list

 

Online Assignment:
https://www.programiz.com/java-programming/examples

 

Online Quiz:
https://www.sanfoundry.com/java-questions-answers-quiz/

 

Video:

https://www.youtube.com/watch?v=N63JCXwdd14

 

Textbook:

Page No: 348-366

 

Notes:

JT-I-19

Session 20 (Module-IV)

Topic:
Exploring Java-lang: Simple type wrappers

 

Activity:
Lecture, Demonstration (Eclipse IDE with Java 8)

 

Practice programs to be picked from "Java Technologies-I-Common Programs" list

 

Online Assignment:
https://www.programiz.com/java-programming/examples

 

Online Quiz:
https://www.sanfoundry.com/java-questions-answers-quiz/

 

Video:

https://www.youtube.com/watch?v=8FSub9s0fB0&list=PLrKBFf87Cy9CHAyhX9l0rhktvg3pCG5R5&index=28

 

Textbook:

Page No: 380-401

 

Notes:

JT-I-20,21

Practice 5 (Module-IV)

Session 21 (Module-IV)

Topic:
Runtime memory management, Object, clone()

 

Activity:
Lecture, Demonstration (Eclipse IDE with Java 8)

 

Practice programs to be picked from "Java Technologies-I-Common Programs" list

 

Online Assignment:
https://www.programiz.com/java-programming/examples

 

Online Quiz:
https://www.sanfoundry.com/java-questions-answers-quiz/

 

Video:

https://marcus-biel.com/object-clone-method/

 

Textbook:

Page No: 403-406

 

Notes:

JT-I-20,21

Session 22 (Module-IV)

Session 23 (Module-IV)

Practice 6 (Module-IV)

Project Presentation 2 (Internal)

Session 24 (Module-V)

Topic:
Exploring java.io - 1

 

Activity:
Lecture, Demonstration (Eclipse IDE with Java 8)

 

Quiz:

https://chortle.ccsu.edu/Java5/Notes/chap21/fillBlankCh21.html

https://chortle.ccsu.edu/Java5/Notes/chap82/chap82quizRev2.html

 

Practice programs to be picked from "Java Technologies-I-Common Programs" list

 

Online Assignment:
https://www.programiz.com/java-programming/examples

 

Online Quiz:
https://www.sanfoundry.com/java-questions-answers-quiz/

 

Video:

https://www.youtube.com/watch?v=4vEBgNFvuIw&list=PLSob6gvlzsCOcH4fuxVGVPwSkhwRsfEKw

 

Textbook:

Page No: 537-546

 

Notes:

JT-I-24,25

Session 25 (Module-V)

Topic:
Exploring java.io - 2

 

Activity:
Lecture, Demonstration (Eclipse IDE with Java 8)

 

Quiz:

https://chortle.ccsu.edu/Java5/Notes/chap87/chap87quizRev2.html

 

Practice programs to be picked from "Java Technologies-I-Common Programs" list

 

Online Assignment:
https://www.programiz.com/java-programming/examples

 

Online Quiz:
https://www.sanfoundry.com/java-questions-answers-quiz/

 

Video:

https://www.youtube.com/watch?v=4vEBgNFvuIw&list=PLSob6gvlzsCOcH4fuxVGVPwSkhwRsfEKw

 

Textbook:

Page No: 537-546

 

Notes:

JT-I-24,25

Practice 7 (Module-V)

Session 26 (Module-V)

Topic:
Java Persistent

 

Activity:
Lecture, Demonstration (Eclipse IDE with Java 8)

 

Practice programs to be picked from "Java Technologies-I-Common Programs" list

 

Online Assignment:
https://www.programiz.com/java-programming/examples

 

Online Quiz:
https://www.sanfoundry.com/java-questions-answers-quiz/

 

Video:

https://www.youtube.com/watch?v=6B6vp0jZnb0

 

Textbook:

Page No: 537-546

Session 27 (Module-V)

Topic:
Exploring java.applet: Applets: Basics, Architecture, Skeleton.

 

Activity:
Lecture, Demonstration (Eclipse IDE with Java 8)

 

Quiz:

https://chortle.ccsu.edu/Java5/Notes/chap36/chap36quizRev2.html

 

Practice programs to be picked from "Java Technologies-I-Common Programs" list

 

Online Assignment:
https://www.programiz.com/java-programming/examples

 

Online Quiz:
https://www.sanfoundry.com/java-questions-answers-quiz/

 

Video:

https://www.youtube.com/watch?v=UGLWTXslfyo

 

Textbook:

Page No: 627-632

 

Notes:

JT-I-27

Session 28 (Module-V)

Topic:
Exploring java.applet:
The HTML APPLET Tag, Passing Parameters to Applets, Applet context

 

Activity:
Lecture, Demonstration (Eclipse IDE with Java 8)

 

Quiz:

https://chortle.ccsu.edu/Java5/Notes/chap37/chap37quizRev2.html

 

Practice programs to be picked from "Java Technologies-I-Common Programs" list

 

Online Assignment:
https://www.programiz.com/java-programming/examples

 

Online Quiz:
https://www.sanfoundry.com/java-questions-answers-quiz/

 

Video:

https://www.youtube.com/watch?v=UGLWTXslfyo

 

Textbook:

Page No: 643-649

 

Notes:

JT-I-28

Practice 8 (Module-V)

Session 29 (Module-VI)

Topic:
Exploring java.awt:
AWT Classes window fundamentals, component, container, panel, Window, Frame, Canvas

 

Activity:
Lecture, Demonstration (Eclipse IDE with Java 8)

 

Quiz:

https://chortle.ccsu.edu/Java5/Notes/chap55/chap55quizRev2.html

 

Practice programs to be picked from "Java Technologies-I-Common Programs" list

 

Online Assignment:
https://www.programiz.com/java-programming/examples

 

Online Quiz:
https://www.sanfoundry.com/java-questions-answers-quiz/

 

Video:

https://www.youtube.com/watch?v=8D80vZHcs0g&list=PLDN4rrl48XKoYR1H6l19hvF_8SMHGdPvk

https://www.youtube.com/watch?v=hxyzF4sp8No

 

Textbook:

Page No: 688-693

 

Notes:

JT-I-29

Session 30 (Module-VI)

Topic:
Exploring java.awt:
Creating a frame window in an Applet, working with Graphics, Control Fundamentals

 

Activity:
Lecture, Demonstration (Eclipse IDE with Java 8)

 

Quiz:

https://chortle.ccsu.edu/Java5/Notes/chap57/chap57quizRev2.html

 

Practice programs to be picked from "Java Technologies-I-Common Programs" list

 

Online Assignment:
https://www.programiz.com/java-programming/examples

 

Online Quiz:
https://www.sanfoundry.com/java-questions-answers-quiz/

 

Video:

https://www.youtube.com/watch?v=8D80vZHcs0g&list=PLDN4rrl48XKoYR1H6l19hvF_8SMHGdPvk

https://www.youtube.com/watch?v=hxyzF4sp8No

 

Textbook:

Page No: 695-704

 

Notes:

JT-I-30

Practice 9 (Module-VI)

Project Presentation 3 (Internal)

Session 31 (Module-VI)

Topic:
Exploring java.awt: Layout Managers

 

Activity:
Lecture, Demonstration (Eclipse IDE with Java 8)

 

Practice programs to be picked from "Java Technologies-I-Common Programs" list

 

Online Assignment:
https://www.programiz.com/java-programming/examples

 

Online Quiz:
https://www.sanfoundry.com/java-questions-answers-quiz/

 

Video:

https://www.youtube.com/watch?v=QzpfGV3Bf38

 

Textbook:

Page No: 763-772

 

Notes:

JT-I-31

Session 32 (Module-VI)

Topic:
Exploring java.awt: Key, Mouse, window Event Handling

 

Activity:
Lecture, Demonstration (Eclipse IDE with Java 8)

 

Quiz:

https://chortle.ccsu.edu/Java5/Notes/chap59/chap59quizRev2.html

 

Practice programs to be picked from "Java Technologies-I-Common Programs" list

 

Online Assignment:
https://www.programiz.com/java-programming/examples

 

Online Quiz:
https://www.sanfoundry.com/java-questions-answers-quiz/

 

Video:

https://www.youtube.com/watch?v=UaenPz_ERVU

 

Textbook:

Page No: 673-680

 

Notes:

JT-I-32

Session 33 (Module-VI)

Topic:
Exploring java.awt: Handling Events by Extending AWT components

 

Activity:
Lecture, Demonstration (Eclipse IDE with Java 8)

 

Practice programs to be picked from "Java Technologies-I-Common Programs" list

 

Online Assignment:
https://www.programiz.com/java-programming/examples

 

Online Quiz:
https://www.sanfoundry.com/java-questions-answers-quiz/

 

Video:

https://www.youtube.com/watch?v=UaenPz_ERVU

 

Textbook:

Page No: 790-795

 

Notes:

JT-I-33

Practice 10 (Module-VI)

Session 34 (Module-VII)

Topic:
Exploring java.net: Java Networking basics, TCP/IP

 

Activity:
Lecture, Demonstration (Eclipse IDE with Java 8)

 

Practice programs to be picked from "Java Technologies-I-Common Programs" list

 

Online Assignment:
https://www.programiz.com/java-programming/examples

 

Online Quiz:
https://www.sanfoundry.com/java-questions-answers-quiz/

 

Video:

https://www.youtube.com/watch?v=BqBKEXLqdvI

https://www.youtube.com/watch?v=-xKgxqG411c

 

Textbook:

Page No: 587-596

 

Notes:

JT-I-34

Session 35 (Module-VII)

Topic:
Exploring java.net: Client-Server interaction

 

Activity:
Lecture, Demonstration (Eclipse IDE with Java 8)

 

Practice programs to be picked from "Java Technologies-I-Common Programs" list

 

Online Assignment:
https://www.programiz.com/java-programming/examples

 

Online Quiz:
https://www.sanfoundry.com/java-questions-answers-quiz/

 

Video:

https://www.youtube.com/watch?v=BqBKEXLqdvI

https://www.youtube.com/watch?v=-xKgxqG411c

 

Textbook:

Page No: 587-596

 

Notes:

JT-I-35

Practice 11 (Module-VII)

Session 36 (Module-VII)

Topic:
Exploring java.rmi: Understanding Remote Method Invocation

 

Activity:
Lecture, Demonstration (Eclipse IDE with Java 8)

 

Practice programs to be picked from "Java Technologies-I-Common Programs" list

 

Online Assignment:
https://www.programiz.com/java-programming/examples

 

Online Quiz:
https://www.sanfoundry.com/java-questions-answers-quiz/

 

Video:

https://www.youtube.com/watch?v=X-bL0S8b6C4

 

Web resource:
https://mkyong.com/java/java-rmi-hello-world-example/

 

Notes:

JT-I-36

Session 37 (Module-VII)

Topic:
Java Virtual Machine: JVM Tuning

 

Activity:
Lecture, Demonstration (Eclipse IDE with Java 8)

 

Practice programs to be picked from "Java Technologies-I-Common Programs" list

 

Online Assignment:
https://www.programiz.com/java-programming/examples

 

Online Quiz:
https://www.sanfoundry.com/java-questions-answers-quiz/

 

Video:

https://www.youtube.com/watch?v=bspS-uTK0IM

 

Web resource:
https://backstage.forgerock.com/knowledge/kb/article/a35746010

Session 38 (Module-VII)

Topic:
Java Profile

 

Activity:
Lecture, Demonstration (Eclipse IDE with Java 8)

 

Practice programs to be picked from "Java Technologies-I-Common Programs" list

 

Online Assignment:
https://www.programiz.com/java-programming/examples

 

Online Quiz:
https://www.sanfoundry.com/java-questions-answers-quiz/

 

Video:

https://www.youtube.com/watch?v=nUcAZzF_ft0

https://www.youtube.com/watch?v=032aTGa-1XM

 

Web resource:
https://www.baeldung.com/java-profilers

Practice 12 (Module-VII)

Project Presentation - Final (Internal)

List of Practices

Practice 1 (Module-I)

Program-1:

Write a program that computes the standard deviation of a set of floating point numbers that the user enters. First the user says how many numbers N are to follow. Then the program asks for and reads in each floating point number. Finally it writes out the standard deviation. The standard deviation of a set of numbers Xi is:

SD = Math.sqrt( avgSquare - avg2 )
Here, avg is the average of the N numbers, and avg2 is its square.

avgSquare is the average of Xi * Xi. In other words, this is the average of the squared value of each floating point number.

For example, if N = 4, say the numbers were:

Xi Xi * Xi
2.0 4.0
3.0 9.0
1.0 1.0
2.0 4.0

sum 8.0 18.0
Now:

avg = 8.0/4 = 2.0
avg2 = 4.0

avgSquare = 18.0/4 = 4.5

SD = Math.sqrt( 4.5 - 4.0 ) = Math.sqrt( .5 ) = 0.7071067812
To do this you will need to do several things inside the loop body for each floating point value as it comes in: add it to a sum, square it and add it to a sum of squares. Then after the loop is finished apply the formula.

 

Program-2 and Program-3:

Two suggested competitive programs to solve on HackerRank

https://www.hackerrank.com/domains/java

Practice 2 (Module-I)

Program-1:

Better encapsulation of the Goods class would call making instance variables private and using getter and setter methods to access them. A further refinement would be to make the class abstract and to define additional child classes. Here is a revised Goods class:

public abstract class GoodsSGA
{
private String description;
private double price;
private int quantity;

public GoodsSGA( String des, double pr, int quant )
{
description = des;
price = pr;
quantity = quant;
}

double getPrice()
{
return price;
}

void setPrice( double newPrice)
{
price = newPrice;
}

int getQuantity()
{
return quantity;
}

void setQuantity ( int newQuantity )
{
quantity = newQuantity;
}

public String toString()
{
return "item: " + description + " quantity: " + quantity + " price: " + price ;
}
}
Revise the source code for the classes Food, Toy, and Book. (Perhaps call the revised classes FoodSG, ToySG, and BookSG.) create a new class ToiletrySG for things like bubble bath. Create a new testing class, StoreSG to test your revised classes.

Note: the child classes will need to use the getter and setter methods to access the instance variables that are declared as private in GoodsSG.

 

Program-2 and Program-3:

Two suggested competitive programs to solve on HackerRank

https://www.hackerrank.com/domains/java

Practice 3 (Module-II)

Program-1:

User-Friendly Division Practice:

Put in a loop so that the user is repeatedly asked for the numerator and the divisor. For each set of data, the program prints out the result, or an informative error message if there is a problem (division by zero or poor input data).
The program continues looping, even if there is a problem Exit the loop when data entered for the numerator start with characters "q" or "Q". Don't print out an error message in this case.
Don't ask for the divisor if the user just asked to quit.
Here is sample output from one run:

Enter the numerator: 12
Enter the divisor: 4
12 / 4 is 3

Enter the numerator: 12
Enter the divisor : 0
You can't divide 12 by 0

Enter the numerator: glarch
You entered bad data.
Please try again.

Enter the numerator: quit
You will need to use the method charAt() from the String class.

 

Program-2 and Program-3:

Two suggested competitive programs to solve on HackerRank

https://www.hackerrank.com/domains/java

Practice 4 (Module-III)

Program-1:

In mathematics, several operations are defined on sets. The union of two sets A and B is a set that contains all the elements that are in A together with all the elements that are in B. The intersection of A and B is the set that contains elements that are in both A and B. The difference of A and B is the set that contains all the elements of A except for those elements that are also in B.
Suppose that A and B are variables of type set in Java. The mathematical operations on A and B can be computed using methods from the Set interface. In particular:
A.addAll(B) computes the union of A and B; A.retainAll(B) computes the intersection of A and B; and A.removeAll(B) computes the difference of A and B. (These operations change the contents of the set A, while the mathematical operations create a new set without changing A, but that difference is not relevant to this exercise.)
For this exercise, you should write a program that can be used as a “set calcula-
tor” for simple operations on sets of non-negative integers. (Negative integers are not allowed.) A set of such integers will be represented as a list of integers, separated by commas and, optionally, spaces and enclosed in square brackets. For example: [1,2,3] or [17, 42, 9, 53,108]. The characters +, *, and - will be used for the union, intersection, and difference operations. The user of the program will type in lines of input containing two sets, separated by an operator. The program should perform the operation and print the resulting set.

Here are some examples:
Input Output
------------------------- -------------------
[1, 2, 3] + [3, 5, 7] [1, 2, 3, 5, 7]
[10,9,8,7] * [2,4,6,8] [8]
[ 5, 10, 15, 20 ] - [ 0, 10, 20 ] [5, 15]
To represent sets of non-negative integers, use sets of type TreeSet<Integer>. Read the user’s input, create two TreeSets, and use the appropriate TreeSet method to perform the requested operation on the two sets. Your program should be able to read and process any number of lines of input. If a line contains a syntax error, your program should not crash. It should report the error and move on to the next line of input. (Note: To print out a Set, A, of Integers, you can just say System.out.println(A). We’ve chosen the syntax for sets to be the same as that used by the system for outputting a set.)

 

Program-2 and Program-3:

Two suggested competitive programs to solve on HackerRank

https://www.hackerrank.com/domains/java

Practice 5 (Module-IV)

Program-1:

Password Checker:

Write a program that repeatedly asks the user for a proposed password until the user enters an acceptable password. When the user enters an acceptable password, the program writes a message and exits.

Acceptable passwords:

Are at least 7 characters long.
Contain both upper and lower case alphabetic characters. Contain at least 1 digit. The logic of this program can be quite tricky. Hint: use toUpperCase(), toLowerCase, and equals(). You will also need nested ifs.

Here is a run of the program:

Enter your password:
snowflake
That password is not acceptable.

Enter your password:
SnowFlake
That password is not acceptable.

Enter your password:
snowflake47
That password is not acceptable.

Enter your password:
Snowflake47
Acceptable password.

 

Program-2 and Program-3:

Two suggested competitive programs to solve on HackerRank

https://www.hackerrank.com/domains/java

Practice 6 (Module-IV)

Program-1:

Secret Code:

A text message has been encoded by replacing each character of the message with an integer. Each integer is an index into a key-phrase that contains all the lower case letters of the alphabet as well as the space character. The key-phrase may contain the same character in several locations. The encoded text is series of integers, like this:

35 10 10 33 9 24 3 17 41 8 3 20 51 16 38 44 47 32 33 10 19 38 35 28 49
To decode the message, look up each integer in the key-phrase and output the corresponding character. For example, say that the key-phrase is this (the index of each character has been written above it):

111111111122222222223333333333444444444455
0123456789012345678901234567890123456789012345678901
six perfect quality black jewels amazed the governor
using each integer from the encoded text as an index into the phrase results in the decoded message:

attack the bridge at dawn

Write a program that decodes a secret message contained in a text file. The first line of the text file contains the key-phrase. Then the file contains a sequence of integers, each of which indexes the key-phrase. Find the character corresponding to each integer and output the secret message. Note if a character character such as 'e' occurs several places in the key-phrase it may be encoded as different integers in different parts of the secret message.

(The recipient of the secret message gets only the file of integers and must put the key-phrase at the top of the file.) For example, here is the contents of a secret message file ready for the program:

six perfect quality black jewels amazed the governor
35 10 10 33 9 24 3 17 41 8 3 20 51 16 38 44 47 32 33 10 19 38 35 28 49

Here is a sample run of the program:

C:\> java Decode < secretFile.txt

attack the bridge at dawn
You will need the charAt() method of String.

Here is another secret message file, with key-phrase inserted, that you can use to test your program:

six perfect quality black jewels amazed the governor
31 16 2 3 4 42 48 7 27 9 10 43 12 13 35 15 1 40 18 3
20 15 33 23 24 32 26 29 28 27 21 31 25 14 34 14 36
42 38 19 40 41 27 3 44 50 46 42 48 49 50 6

 

Program-2 and Program-3:

Two suggested competitive programs to solve on HackerRank

https://www.hackerrank.com/domains/java

Practice 7 (Module-V)

Program-1:

Stop Word Remover:

Write a program that reads in a file of text, perhaps the text of a novel. The program copies the same text to an output file, except that all the useless words such as "the", "a", and "an" are removed. (Decide on what other words you with to remove. The list of words removed is called a stop list.) Do this by reading the text file token by token using hasNext() and next(), but only writing out tokens not on the stop list.

Prompt the user for the names of the input and output files.

Fairly Easy: The output file will have only N tokens per line. Do this by counting tokens as you output them. N will be something like 10 or 12.

Improved Program: Preserve the line structure of the input file. Do this by reading each line using nextLine() and then creating a new Scanner for that line. (Look at the on-line documentation for Scanner.) With each line's Scanner, use hasNext() and next() to scan through its tokens.

Harder: Write out no more than N characters per line. N will be something like 50. Do this by keeping count of the number of characters written out per line. The length() method of String will be useful. If X characters has already been written to the current line, and if X plus the length of the current token exceeds N, then start a new line.

 

Program-2 and Program-3:

Two suggested competitive programs to solve on HackerRank

https://www.hackerrank.com/domains/java

Practice 8 (Module-V)

Program-1:

E-Mail Address Extractor:

Write a program that scans a text file for possible e-mail addresses. Addresses look like this:

someone@somewhere.net

Read tokens from the input file one by one using hasNext() and next(). With the default delimiters of Scanner, an entire e-mail address will be returned as one token. Examine each token using the indexOf() method of String. If a token contains an at sign @ followed some characters later by a period, regard it as a possible e-mail address and write it to the output file.

Programs such as this scan through web pages looking for e-mail addresses that become the targets of spam. Because of this, many web pages contain disguised e-mail addresses that can't easily be automatically extracted.

 

Program-2 and Program-3:

Two suggested competitive programs to solve on HackerRank

https://www.hackerrank.com/domains/java

Practice 9 (Module-VI)

Program-1:

User-friendly Fat Calculator, with Advice:

Further modify the calories from fat calculator so that it includes another TextField that will be set with the text "Too many fat calories" if the percentage of calories from fat is equal or greater than 30 percent, or to "Healthy amount of fat" if the percentage is less than that.

 

Program-2 and Program-3:

Two suggested competitive programs to solve on HackerRank

https://www.hackerrank.com/domains/java

Practice 10 (Module-VI)

Program-1:

Three Button Monte:

Write a program to implement a game:

There are three buttons in the frame. Two of the buttons cause the program to quit using System.exit(0); the remaining button changes the frame to green (a win!) The winning button is different each time the game is played.
The easy way to do this (although it seems unfair to the user) treats each button the same way. The actionPerformed() method does not check which button was clicked. When any button is clicked, the method picks a random integer from 0 to 2 and performs the "winning" action if the integer happens to be 0. Otherwise, it performs the "losing" action. To the user, it seems like there is a "winning" button and two "losing" buttons. But, in fact, it does not matter which button was clicked.

This is similar to some electronic gambling devices in casinos, where it appears to the user that there are "winning moves" and "losing moves" but in fact the machine actually ignores what the user has done and just declares a "win" every now and then, according to predetermined odds.

You will need the Random class:

Random randNum = new Random(); // create a Random number object

. . .

int someInt = randNum.nextInt(3); // someInt gets a number from 0 to 2

 

Program-2 and Program-3:

Two suggested competitive programs to solve on HackerRank

https://www.hackerrank.com/domains/java

Practice 11 (Module-VII)

Content Delivery with Networking:

Write a Client-Server program where the client queries with a name of file and the server delivers the content of requested files to the client over the network.
(Improve the program by making the server multi-threaded)

Practice 12 (Module-VII)

Greet the user with Remote Method Invocation:

Write a program using RMI, where the user invokes a method on remote object with username as parameter and receives a greeting message based on time of the day along with username.

Our Main Teachers

Sashi Bhusan Maharana

Faculty, Dept. of Computer Science & Engineering, SoET
VIEW PROFILE

Assistant Professor and Head, Department of Computer Science & Engineering, Paralakhemundi campus.   About me Experienced in both Application Development (Android and Web) and Teaching/Training. 11+ years of experience in Academia and University IT Development which includes development, and testing of modules. Worked extensively in development, design, requirement analysis and testing of projects. Strong interpersonal […]