What are the two ways you can define a class that can instantiate thread objects in Java? Briefly explain why should you use one way over the other? code example

Example: threads java

// Copy and test
// They run simultaneously

public static void main(String[] args) {
  		// How to create a thread
        Thread thread = new Thread(new Runnable() {
            @Override
			// Loop running in thread
            public void run() {
                for (int i = 0; i < 20; i++) {
                    System.out.println("Printing plus " + i + " in a worker thread.");
                    try {
                        Thread.sleep(1000);
                    } catch(Exception e) {
                        e.printStackTrace();
                    }
                }
            }
        });
        thread.start();
  		// Loop running in main thread 
        for (int j = 0; j < 20 ; j++) {
            System.out.println("Printing plus " + j + " in a main thread.");
            try {
                Thread.sleep(900);
            } catch(Exception e) {
                e.printStackTrace();
            }
        }
        }

Tags:

Java Example