$30 off During Our Annual Pro Sale. View Details »

Java Lab

Java Lab

LeoNguyen.com

July 11, 2013
Tweet

More Decks by LeoNguyen.com

Other Decks in Programming

Transcript

  1. LeoNguyen.com

  2. Outline - Lab 01: An introduction to Java - Lab

    02: Java Language - Lab 03: Class and Relationship - Lab 04: Exception and debugging - Lab 05: Thread - Lab 06: Input/Output - Lab 07: Generic programming and Collections
  3. Github https://github.com/leonguyen/JavaLab

  4. Lab 01 An introduction to Java

  5. Outline - Download and install JDK - Write a Helloworld

    program - Install and use Eclipse to write a Java program - Debugging Programs in Eclipse
  6. Exercise 1 Download and install JDK

  7. JDK & JRE

  8. Task 1 - Download JDK - Goto Java download site

    http://www.oracle. com/technetwork/java/javase/downloads/index.html
  9. Task 1 - Download JDK (cont) - Select Java Platform

    (JDK), choose your operation platform (eg Window X86) and download it
  10. Task 2 - Install JDK - Run the downloaded installer,

    which installs both the JDK (Java Development Kit) and JRE (Java Runtime). By default the JDK and JRE will be installed into directories C:\Program Files\Java
  11. Task 3 - Config PATH environment variables - Windows Operating

    System searches the current directory and the directories listed in the PATH environment variable for executable programs invoked from the CMD shell. It helps programmer can compile Java code in CMD shell. - Click the "Start" button > "Control Panel" > "System" > (Vista/7 only) "Advanced system settings"
  12. Task 3 - Config PATH .. (cont)

  13. Task 4 - Verify the JDK Installation - Launch a

    CMD shell > type java –version to check that JDK is properly installed and display its version, and javac to check Path work properly too.
  14. Exercise 2 Write a Helloworld program

  15. Task 1 - Open your editor - For example: Notepad++

  16. Task 2 - Write your code - Type this code

    bellow to editor window
  17. Task 2 - Write your code (cont) - Save the

    code in a file with the name Helloworld.java - Note: File name must same as class name.
  18. Task 3 - Compile and run on command-line - Launch

    a CMD shell > type javac to compile the source code and java to run the program using the JDK runtime
  19. Exercise 3 Install and use Eclipse to write a Java

    program
  20. Task 1 - Download Eclipse - Download Eclipse from http://www.eclipse.org/downloads.

    For beginners, choose the minimal Eclipse IDE for Java Developers. - Unzip the downloaded file into a directory of your choice.
  21. Task 2 - Launch Eclipse - Open eclipse.exe in the

    Eclipse installed directory - Choose an appropriate directory for your workspace
  22. Task 3 - Create a new Java Project - Choose

    "File" menu > "New" > "Java project"
  23. Task 4 - Write a Java program - In the

    "Package Explorer" (left panel) > Right-click on "JavaLab" (or use the "File" menu) > New > Class
  24. Task 4 - Write a Java program (cont) - Enter

    the following codes
  25. Task 5 - Compile and Execute - To run the

    program, right-click anywhere on the source file "HelloWorld.java" (or from the "Run" menu) > Choose "Run As" > "Java Application".
  26. Exercise 4 Debugging Programs in Eclipse

  27. Task 1 - Create project and write a simple program

    - Create a new class named Debug and enter the following code.
  28. Task 2 - Set an Initial Breakpoint - Set a

    breakpoint at main() method by double-clicking on the left- margin of the line containing main().
  29. Task 3 - Debug - Right click anywhere on the

    source code (or from the "Run" menu) > "Debug As" > "Java Application" > choose "Yes" to switch into "Debug" perspective Step-Over and Watch the Variables and Outputs.
  30. Lab 02 Java Language 01

  31. Outline - Relational & Logical Operators - Types - Scanner

    object - If/else - Switch case - Command-Line Arguments
  32. Outline (cont) - OddEvenSum - Compute PI - Do While

    statement - Array - Loops and conditional statement - Nested loop - Break label - Continue label - Array Sort - Reverse String - Array of String
  33. Exercise 1 Relational & Logical Operators

  34. Task 1 - Create a RelationalLogicalOpTest class - Enter the

    following code.
  35. Task 2 - Execute your program - Choose "Run As"

    > "Java Application".
  36. Exercise 2 Types

  37. Task 1 - Create a TypesMinMax class - Enter the

    following code.
  38. Task 2 - Execute your program - Choose "Run As"

    > "Java Application".
  39. Exercise 3 Scanner object

  40. Task 1 - Create a ScannerTest class - Enter the

    following code.
  41. Task 2 - Execute your program - Choose "Run As"

    > "Java Application".
  42. Exercise 4 If/else

  43. Task 1 - Create a Mark class - Enter the

    following code.
  44. Task 2 - Execute your program - Choose "Run As"

    > "Java Application".
  45. Exercise 5 Switch case

  46. Task 1 - Create a Month class - Enter the

    following code.
  47. Task 2 - Execute your program - Choose "Run As"

    > "Java Application".
  48. Exercise 6 Command-Line Arguments

  49. Task 1 - Create a Arithemetic class - Enter the

    following code.
  50. Task 2 - Execute your program - Choose "Run As"

    > "Java Application".
  51. Lab 02 (cont) Java Language 02

  52. Exercise 1 OddEvenSum

  53. Task 1 - Create a OddEvenSum class - Enter the

    following code.
  54. Task 2 - Execute your program - Choose "Run As"

    > "Java Application".
  55. Exercise 2 Compute PI

  56. Task 1 - Create a ComputePI class - Enter the

    following code.
  57. Task 2 - Execute your program - Choose "Run As"

    > "Java Application".
  58. Exercise 3 Do While statement

  59. Task 1 - Create a DoWhile class - Enter the

    following code.
  60. Task 2 - Execute your program - Choose "Run As"

    > "Java Application".
  61. Exercise 4 Array

  62. Task 1 - Create a Arraytest class - Enter the

    following code.
  63. Task 2 - Execute your program - Choose "Run As"

    > "Java Application".
  64. Exercise 5 Loops and conditional statement

  65. Task 1 - Create a PrimeList class - Enter the

    following code.
  66. Task 2 - Execute your program - Choose "Run As"

    > "Java Application".
  67. Exercise 6 Nested loop

  68. Task 1 - Create a PrintPattern class - Enter the

    following code.
  69. Task 2 - Execute your program - Choose "Run As"

    > "Java Application".
  70. Exercise 7 Break label

  71. Task 1 - Create a JavaGoto class - Enter the

    following code.
  72. Task 2 - Execute your program - Choose "Run As"

    > "Java Application".
  73. Exercise 8 Continue label

  74. Task 1 - Create a ContinueLabel class - Enter the

    following code.
  75. Task 2 - Execute your program - Choose "Run As"

    > "Java Application".
  76. Exercise 9 Array Sort

  77. Task 1 - Create a ArrayBubleSort class - Enter the

    following code.
  78. Task 2 - Execute your program - Choose "Run As"

    > "Java Application".
  79. Exercise 10 Reverse String

  80. Task 1 - Create a ReverString class - Enter the

    following code.
  81. Task 2 - Execute your program - Choose "Run As"

    > "Java Application".
  82. Exercise 11 Array of String

  83. Task 1 - Create a DayofWeek class - Enter the

    following code.
  84. Task 2 - Execute your program - Choose "Run As"

    > "Java Application".
  85. Lab 03 Class

  86. Outline - Booking Room - Project assignment

  87. What is OOP

  88. Classes and Objects

  89. Lab 03 (cont) Class

  90. Exercise 1 Booking Room

  91. Class diagram

  92. Task 1 - Create Date class - Enter the following

    code.
  93. Task 2 - Create Time class - Enter the following

    code.
  94. Task 3 - Create BookingRoomclass - Enter the following code.

  95. Task 3 - Create BookingRoomclass (cont) - Enter the following

    code.
  96. Task 3 - Create BookingRoomclass (cont) - Enter the following

    code.
  97. Task 3 - Create BookingRoomclass (cont) - Enter the following

    code.
  98. Task 4 - Write a Program class - Enter the

    following code.
  99. Task 5 - Execute your program - Enter the following

    code.
  100. Exercise 2 Project assignment

  101. Class diagram

  102. Task 1 - Create Teacher class - Enter the following

    code.
  103. Task 1 - Create Teacher class (cont) - Enter the

    following code.
  104. Task 2 - Create Student class - Enter the following

    code.
  105. Task 2 - Create Student class (cont) - Enter the

    following code.
  106. Task 3 - Write a Program class - Enter the

    following code.
  107. Task 4 - Execute your program - Enter the following

    code.
  108. Lab 04 Exception

  109. Outline - Exception - Try-cath-finally - Creating Your Own Exception

    Classes - Assertion
  110. Exercise 1 Exception

  111. Diagram - MobilePhone class to store mobile phone numbers and

    send a messages to one of of numbers store in the array. - PhoneTest class to demonstrate exception handling.
  112. Task 1 - Create MobilePhone class - Enter the following

    code.
  113. Task 1 - Create MobilePhone class (cont) - Enter the

    following code.
  114. Task 2 - Create PhoneTest program - Enter the following

    code.
  115. Task 3 - Execute your program - Enter the following

    code.
  116. Exercise 2 Try-cath-finally

  117. Task 1 - Create TryCatchFinally program - Enter the following

    code.
  118. Task 2 - Execute your program - Choose "Run As"

    > "Java Application".
  119. Exercise 3 Creating Your Own Exception Classes

  120. Task 1 - Create MyException class - Enter the following

    code.
  121. Task 2 - Create MyExceptionTest program - Enter the following

    code.
  122. Task 3 - Execute your program - Choose "Run As"

    > "Java Application".
  123. Exercise 4 Assertion

  124. Task 1 - Create AssertionTest program - Enter the following

    code.
  125. Task 2 - Execute your program - Choose "Run As"

    > "Java Application".
  126. Exercise 5 Account in a Bank

  127. Diagram

  128. Diagram (cont) The management of the A Bank is looking

    at automation as a means to save time and effort required in their work. In order to achieve this, the management has planned to computerize the following transactions: • Creating a new account • Withdrawing money from an account • Depositing money in an account The CEO of the company and a team of experts have chosen your company to provide a solution for the same. Consider yourself to be a part of the team that implements the solution for designing the application.
  129. Diagram (cont) Create an application using exceptions and assertions to

    implement the transactions. The application should consist of the following classes. 1. Account.java 2. Account Test.java 3. InsufficientFundException.java 4. NegativeAmountException.java Each class has a specific purpose and functionality. The descriptions of each class are as follows.
  130. Task 1 - Create Account class (The Account class represents

    an actual bank account. It stores the following details of a bank account) • customerName • accountNumber • accountbalance • void displayAccountDetails() : This method displays the details of the account
  131. Task 1 - Create Account class (cont) • void withdraw()

    : This method is used to withdraw money from an account. This method accepts the account number and the amount to be withdrawn from the account. The method then searches in the array of accounts for the account number. Use assertions for checking whether the account number and the amount to be withdrawn are positive. Also use an assertion to check if the array of accounts contains a minimum of one account record. The method also throws the user-defined exception InsufficientFund***ception in case the amount to be withdrawn exceeds • void deposit() :This method is used to deposit money in an account. The account number and the amount to be deposited in the account is accepted from the user. Use an assertion to check whether the account number is positive. The method searches for the account number and deposits the amount in the account if it exists. The displayAccountDetails() method is called if the operation succeeds. Use appropriate try catch blocks to handle all the possible exceptions that can be thrown due to the user inputs. A user-defined exception is thrown if the account number does not exist.
  132. Task 2 - Create AccountTest class (The AccountTest class is

    a java main class used to test the Account class. It creates an instance of the Account class and displays the following menu of options to the user) · Create a new account · Withdraw Cash · Deposit cash · Exit The user can select any of the options and a corresponding method is invoked on the instance of the Bank class. Use an assertion to check for the control-flow invariant in case the user types an invalid option. The application exits when the Exit option is selected.
  133. Task 3 - Create InsufficientFundException class - This is a

    user-defined exception class derived from the base class Exception. This exception is thrown when the user tries to withdraw more money than the current account balance.
  134. Task 4 - Create NegativeAmountException class - This is a

    user-defined exception class derived from the base class Exception. This exception is thrown when the user tries to withdraw or deposit a negative amount.
  135. Lab 05 Thread

  136. Outline - Use the Thread class - Implement the Runable

    Interface - Using join() to wait for threads to finish - Thread priority - Synchronization - Dining Philosopher
  137. Exercise 1 Use the Thread class

  138. Task 1 - Create a RunThread class - Enter the

    following code.
  139. Task 2 - Main program - Enter the following code.

  140. Task 3 - Execute your program - Choose "Run As"

    > "Java Application".
  141. Exercise 2 Implement the Runable Interface

  142. Task 1 - Create a RunThread1 class - Enter the

    following code.
  143. Task 2 - Main program - Enter the following code.

  144. Task 3 - Execute your program - Choose "Run As"

    > "Java Application".
  145. Exercise 3 Using join() to wait for threads to finish

  146. Task 1 - Create a MyThread class - Enter the

    following code.
  147. Task 2 - Main program - Enter the following code.

  148. Task 3 - Execute your program - Choose "Run As"

    > "Java Application".
  149. Exercise 4 Thread priority

  150. Task 1 - Create Clicker class - Enter the following

    code.
  151. Task 2 - Main program - Enter the following code.

  152. Task 3 - Execute your program - Choose "Run As"

    > "Java Application".
  153. Exercise 5 Synchronization

  154. Unsynchronized and synchronized

  155. Task 1 - Create CountPrimesThread class - Enter the following

    code.
  156. Task 2 - Main program - Enter the following code.

  157. Task 2 - Main program (cont) - Enter the following

    code.
  158. Task 3 - Execute your program - Choose "Run As"

    > "Java Application".
  159. Exercise 6 Dining Philosopher

  160. Concept

  161. Task 1 - Create ChopStick class - Enter the following

    code.
  162. Task 2 - Create Philosopher class - Enter the following

    code.
  163. Task 2 - Create Philosopher class (cont) - Enter the

    following code.
  164. Task 2 - Main program - Enter the following code.

  165. Task 3 - Execute your program - Choose "Run As"

    > "Java Application".
  166. Lab 06 Input / Output

  167. Stream - Most fundamental I/O in Java is based on

    streams - Reading information into a program - Writing information from a program
  168. java.io package

  169. Outline - Read a file - BufferedReader - Write a

    file - BufferedWriter - Write a file - FileOutputStream - List the contents of a directory (Recursively) - Copying a file without Buffering - Copying a file with a Programmer-Managed Buffer - Copying a file with Buffered Streams - Best Copier - InputStreamReader and OutputStreamWriter - BufferedReader and BufferedWriter - PipedReader and PipedWriter - Serializable - ObjectOutputStream
  170. Exercise 1 Read a file - BufferedReader

  171. Task 1 - Create ReadFileBuffered program - The simplest and

    most common-used method - BufferedReader.
  172. Task 2 - Execute your program - Choose "Run As"

    > "Java Application".
  173. Exercise 2 Write a file - BufferedWriter

  174. Task 1 - Create WriteFileBuffered program - BufferedWriter is a

    character streams class to handle the character data. Unlike bytes stream (convert data into bytes), you can just write the strings, arrays or characters data directly to file.
  175. Task 2 - Execute your program - Choose "Run As"

    > "Java Application".
  176. Exercise 3 Write a file - FileOutputStream

  177. Task 1 - Create WriteFileStream program - FileOutputStream is a

    bytes stream class that’s used to handle raw binary data. To write the data to file, you have to convert the data into bytes and save it to file.
  178. Task 2 - Execute your program - Choose "Run As"

    > "Java Application".
  179. Exercise 4 List the contents of a directory (Recursively)

  180. Task 1 - Create ListDirectoryRecusive program - Enter the following

    code.
  181. Task 2 - Execute your program - Choose "Run As"

    > "Java Application".
  182. Exercise 5 Copying a file without Buffering

  183. Task 1 - Create FileCopyNoBuffer class - Enter the following

    code.
  184. Task 2 - Execute your program - Choose "Run As"

    > "Java Application".
  185. Exercise 6 Copying a file with a Programmer-Managed Buffer

  186. Task 1 - Create FileCopyUserBuffer class - Enter the following

    code.
  187. Task 2 - Execute your program - Choose "Run As"

    > "Java Application".
  188. Exercise 7 Copying a file with Buffered Streams

  189. Task 1 - Create FileCopyBuffered class - Enter the following

    code.
  190. Task 2 - Execute your program - Choose "Run As"

    > "Java Application".
  191. Exercise 8 Best Copier

  192. Task 1 - Create FileCopyUserBufferBest class - Enter the following

    code.
  193. Task 2 - Execute your program - Choose "Run As"

    > "Java Application".
  194. Exercise 9 InputStreamReader and OutputStreamWriter

  195. Task 1 - Create UnicodeFileIO program - Enter the following

    code.
  196. Task 2 - Execute your program - Choose "Run As"

    > "Java Application".
  197. Exercise 10 BufferedReader and BufferedWriter

  198. Task 1 - Create UnicodeFileIOBuffered program - Enter the following

    code.
  199. Task 2 - Execute your program - Choose "Run As"

    > "Java Application".
  200. Exercise 11 PipedReader and PipedWriter

  201. Task 1 - Create pReader class - Enter the following

    code.
  202. Task 2 - Create pWriter class - Enter the following

    code.
  203. Task 3 - Main program - Enter the following code.

  204. Task 4 - Execute your program - Choose "Run As"

    > "Java Application".
  205. Exercise 12 Serializable - ObjectOutputStream

  206. Task 1 - Create SerializedObject class - Enter the following

    code.
  207. Task 2 - Create SerializedObject class - Enter the following

    code.
  208. Task 3 - Execute your program - Choose "Run As"

    > "Java Application".
  209. Lab 07 Generic

  210. Outline - Generic class and Wildcard - Student List -

    ArrayList - Employee Management - LinkedList - Set - Map
  211. Exercise 1 Generic class and Wildcard

  212. Task 1 - Create Box class - Enter the following

    code.
  213. Task 2 - Create the program - Enter the following

    code.
  214. Task 3 - Execute your program - Choose "Run As"

    > "Java Application".
  215. Task 4 - Create A, B, C class - Enter

    the following code.
  216. Task 5 - Create BoxB, BoxC class - Enter the

    following code.
  217. Task 6 - Create Test BoxB, BoxC program - Choose

    "Run As" > "Java Application".
  218. Task 7 - Execute your program - Choose "Run As"

    > "Java Application".
  219. Exercise 2 Student List

  220. Student List

  221. Task 1 - Create Student class - Enter the following

    code.
  222. Task 2 - Create StudentList class - Enter the following

    code.
  223. Task 3 - Create the program - Enter the following

    code.
  224. Task 4 - Execute your program - Choose "Run As"

    > "Java Application".
  225. Exercise 3 ArrayList

  226. Task 1 - Create ExArrayList program - Enter the following

    code.
  227. Task 2 - Execute your program - Choose "Run As"

    > "Java Application".
  228. Exercise 4 Employee Management

  229. Task 1 - Create Employee class - Enter the following

    code.
  230. Task 2 - Create HREmpoyee class - Enter the following

    code.
  231. Task 3 - Create the program - Enter the following

    code.
  232. Task 4 - Execute your program - Choose "Run As"

    > "Java Application".
  233. Task 5 - Create EmpoyeeDetail class - Enter the following

    code.
  234. Task 6 - Edit the program - Enter the following

    code.
  235. Task 7 - Execute your program - Choose "Run As"

    > "Java Application".
  236. Exercise 5 LinkedList

  237. Task 1 - Create ExLinkedList program - Enter the following

    code.
  238. Task 1 - Create ExLinkedList program (cont) - Enter the

    following code.
  239. Task 1 - Create ExLinkedList program (cont) - Enter the

    following code.
  240. Task 2 - Execute your program - Enter the following

    code.
  241. Exercise 6 Set

  242. Task 1 - Create ListDirectoryRecusive class - Enter the following

    code.
  243. Task 2 - Execute your program - Enter the following

    code.
  244. Exercise 7 Map

  245. Task 1 - Create ExMap program - Enter the following

    code.
  246. Task 1 - Create ExMap program (cont) - Enter the

    following code.
  247. Task 2 - Execute your program - Enter the following

    code.