Introduction to Computers, Programs, and Java Basics

Introduction to Computers, Programs, and Java Basics
Slide Note
Embed
Share

A comprehensive overview of computer components, Java programming, CPU functions, memory management, and more. Explore the fundamental concepts and terminology essential for beginners in the world of technology.

  • Computers
  • Programs
  • Java Basics
  • CPU
  • Memory

Uploaded on Mar 10, 2025 | 0 Views


Download Presentation

Please find below an Image/Link to download the presentation.

The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author.If you encounter any issues during the download, it is possible that the publisher has removed the file from their server.

You are allowed to download the files provided on this website for personal or commercial use, subject to the condition that they are used lawfully. All files are the property of their respective owners.

The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author.

E N D

Presentation Transcript


  1. Chapter 1 Introduction to Computers, Programs, and Java I N T RO D U CT I O N T O J AV A P RO G RAM M I N G , T E N T H E D I T I O N , ( C) 2 0 1 5 P E ARS O N E D U CAT I O N , I N C. ALL RI G H T S RE S E RV E D AN D M O D I F I E D B Y D R. F E D A 1 ALS H AH W AN

  2. Objectives To understand computer basics, programs, and operating systems ( 1.2 1.4). To describe the relationship between Java and the World Wide Web ( 1.5). To understand the meaning of Java language specification, API, JDK, and IDE ( 1.6). To write a simple Java program ( 1.7). To display output on the console ( 1.7). To explain the basic syntax of a Java program ( 1.7). To create, compile, and run Java programs ( 1.8). To use sound Java programming style and document programs properly ( 1.9). To explain the differences between syntax errors, runtime errors, and logic errors ( 1.10). To develop Java programs using NetBeans ( 1.11). To develop Java programs using Eclipse ( 1.12). I N T RO D U CT I O N T O J AV A P RO G RAM M I N G , T E N T H E D I T I O N , ( C) 2 0 1 5 P E ARS O N E D U CAT I O N , I N C. ALL RI G H T S RE S E RV E D AN D M O D I F I E D B Y D R. F E D A 2 ALS H AH W AN

  3. What is a Computer? A computer consists of a CPU, memory, storage devices such as hard disk, floppy disk and tape, Input/output peripherals such as monitor and printer, and communication devices. B us M em ory O utput D evices C om m unication D evices Input D evices Storage D evices C PU e.g., M onitor, Printer e.g., D isk, C D , and Tape e.g., K eyboard, M ouse e.g., M odem , and N IC I N T RO D U CT I O N T O J AV A P RO G RAM M I N G , T E N T H E D I T I O N , ( C) 2 0 1 5 P E ARS O N E D U CAT I O N , I N C. ALL RI G H T S RE S E RV E D AN D M O D I F I E D B Y D R. F E D A 3 ALS H AH W AN

  4. CPU The central processing unit (CPU) is the brain of a computer. It retrieves instructions from memory and executes them. The CPU speed is measured in megahertz (MHz), with 1 megahertz equaling 1 million pulses per second. The speed of the CPU has been improved continuously. If you buy a PC now, you can get an Intel Pentium 4 Processor at 3 gigahertz (1 gigahertz is 1000 megahertz). B u s M e m o r y C P U O u t p u t D e v i c e s C o m m u n i c a t i o n D e v i c e s I n p u t D e v i c e s S t o r a g e D e v i c e s e . g . , M P r i n t e r o n i t o r , e . g . , D i s k , C D , a n d T a p e e . g . , K e y b o a r d , M o u s e e . g . , M a n d N I C o d e m , I N T RO D U CT I O N T O J AV A P RO G RAM M I N G , T E N T H E D I T I O N , ( C) 2 0 1 5 P E ARS O N E D U CAT I O N , I N C. ALL RI G H T S RE S E RV E D AN D M O D I F I E D B Y D R. F E D A ALS H AH W AN 4

  5. Memory Memory is to store data and program instructions for CPU to execute. A memory unit is an ordered sequence of bytes, each holds eight bits. A program and its data must be brought to memory before they can be executed. A memory byte is never empty, but its initial content may be meaningless to your program. The current content of a memory byte is lost whenever new information is placed in it. B u s M e m o r y C P U O u t p u t D e v i c e s C o m m u n i c a t i o n D e v i c e s I n p u t D e v i c e s S t o r a g e D e v i c e s e . g . , M P r i n t e r o n i t o r , e . g . , D i s k , C D , a n d T a p e e . g . , K e y b o a r d , M o u s e e . g . , M a n d N I C o d e m , I N T RO D U CT I O N T O J AV A P RO G RAM M I N G , T E N T H E D I T I O N , ( C) 2 0 1 5 P E ARS O N E D U CAT I O N , I N C. ALL RI G H T S RE S E RV E D AN D M O D I F I E D B Y D R. F E D A 5 ALS H AH W AN

  6. How Data is Stored? Data of various kinds, such as numbers, characters, and strings, are encoded as a series of bits (zeros and ones). Computers use zeros and ones because digital devices have two stable states, which are referred to as zero and one by convention. The programmers need not to be concerned about the encoding and decoding of data, which is performed automatically by the system based on the encoding scheme. The encoding scheme varies. For example, character J is represented by 01001010 in one byte. A small number such as three can be stored in a single byte. If computer needs to store a large number that cannot fit into a single byte, it uses a number of adjacent bytes. No two data can share or split a same byte. A byte is the minimum storage unit. M em ory address M em ory content . . . . . . 2000 2001 2002 2003 2004 01001010 01100001 01110110 01100001 00000011 Encoding for character J Encoding for character a Encoding for character v Encoding for character a Encoding for num ber 3 I N T RO D U CT I O N T O J AV A P RO G RAM M I N G , T E N T H E D I T I O N , ( C) 2 0 1 5 P E ARS O N E D U CAT I O N , I N C. ALL RI G H T S RE S E RV E D AN D M O D I F I E D B Y D R. F E D A 6 ALS H AH W AN

  7. Storage Devices Memory is volatile, because information is lost when the power is off. Programs and data are permanently stored on storage devices and are moved to memory when the computer uses them. There are three main types of storage devices: Magnetic Disk drives (hard disks and floppy disks), Optical disk drives (CD-R and CD-RW), and Magnetic Tape drives. B u s M e m o r y C P U O u t p u t D e v i c e s C o m m u n i c a t i o n D e v i c e s I n p u t D e v i c e s S t o r a g e D e v i c e s e . g . , M P r i n t e r o n i t o r , e . g . , D i s k , C D , a n d T a p e e . g . , K e y b o a r d , M o u s e e . g . , M a n d N I C o d e m , I N T RO D U CT I O N T O J AV A P RO G RAM M I N G , T E N T H E D I T I O N , ( C) 2 0 1 5 P E ARS O N E D U CAT I O N , I N C. ALL RI G H T S RE S E RV E D AN D M O D I F I E D B Y D R. F E D A 7 ALS H AH W AN

  8. Output Devices: Monitor An output device is is any device used to send data from a computer to another device or user. The monitor is an output device that displays information (text and graphics). The resolution and dot pitch determine the quality of the display. B u s M e m o r y C P U O u t p u t D e v i c e s C o m m u n i c a t i o n D e v i c e s I n p u t D e v i c e s S t o r a g e D e v i c e s e . g . , M P r i n t e r o n i t o r , e . g . , D i s k , C D , a n d T a p e e . g . , K e y b o a r d , M o u s e e . g . , M a n d N I C o d e m , I N T RO D U CT I O N T O J AV A P RO G RAM M I N G , T E N T H E D I T I O N , ( C) 2 0 1 5 P E ARS O N E D U CAT I O N , I N C. ALL RI G H T S RE S E RV E D AN D M O D I F I E D B Y D R. F E D A 8 ALS H AH W AN

  9. Monitor Resolution and Dot Pitch The screen resolution specifies the number of pixels in horizontal and vertical dimensions of the display device. Pixels(short for picture elements ) are tiny dots that form an image on the screen. A common resolution for a 17-inch screen, for example, is 1,024 pixels wide and 768 pixels high. The resolution can be set manually. The higher the resolution, the sharper and clearer the image is. resolution The dot pitch is the amount of space between pixels, measured in millimeters. The smaller the dot pitch, the sharper the display. dot pitch I N T RO D U CT I O N T O J AV A P RO G RAM M I N G , T E N T H E D I T I O N , ( C) 2 0 1 5 P E ARS O N E D U CAT I O N , I N C. ALL RI G H T S RE S E RV E D AN D M O D I F I E D B Y D R. F E D A 9 ALS H AH W AN

  10. Communication Devices A communication device is a hardware device capable of transmitting an analog or digital signal over the telephone, other communication wire, or wirelessly. A regular modem is an example of communication device that uses a phone line and can transfer data in a speed up to 56,000 bps (bits per second). A DSL (digital subscriber line) also uses a phone line and can transfer data in a speed 20 times faster than a regular modem. A cable modem uses the TV cable line maintained by the cable company. A cable modem is as fast as a DSL. Network interface card (NIC) is a device to connect a computer to a local area network (LAN). The LAN is commonly used in business, universities, and government organizations. A typical type of NIC, called 10BaseT, can transfer data at 10 mbps (million bits per second). Other examples of communication devices include Wi-Fi devices, and access points. B u s M e m o r y C P U O u t p u t D e v i c e s C o m m u n i c a t i o n D e v i c e s I n p u t D e v i c e s S t o r a g e D e v i c e s e . g . , M P r i n t e r o n i t o r , e . g . , D i s k , C D , a n d T a p e e . g . , K e y b o a r d , M o u s e e . g . , M a n d N I C I N T RO D U CT I O N T O J AV A P RO G RAM M I N G , T E N T H E D I T I O N , ( C) 2 0 1 5 P E ARS O N E D U CAT I O N , I N C. ALL RI G H T S RE S E RV E D AN D M O D I F I E D B Y D R. F E D A o d e m , 10 ALS H AH W AN

  11. Programs Computer programs, known as software, are instructions to the computer. You tell a computer what to do through programs. Without programs, a computer is an empty machine. Computers do not understand human languages, so you need to use computer languages to communicate with them. Programs are written using programming languages. I N T RO D U CT I O N T O J AV A P RO G RAM M I N G , T E N T H E D I T I O N , ( C) 2 0 1 5 P E ARS O N E D U CAT I O N , I N C. ALL RI G H T S RE S E RV E D AN D M O D I F I E D B Y D R. F E D A 11 ALS H AH W AN

  12. Programming Languages Machine Language Assembly Language High-Level Language First Generation Language(Machine Language): Machine language is a set of primitive instructions built into every computer. The instructions are in the form of binary code, so you have to enter binary codes for various instructions. Program with native machine language is a tedious process. Moreover the programs are highly difficult to read and modify. For example, to add two numbers, you might write an instruction in binary like this: 1101101010011010 I N T RO D U CT I O N T O J AV A P RO G RAM M I N G , T E N T H E D I T I O N , ( C) 2 0 1 5 P E ARS O N E D U CAT I O N , I N C. ALL RI G H T S RE S E RV E D AN D M O D I F I E D B Y D R. F E D A 12 ALS H AH W AN

  13. Programming Languages Machine Language Assembly Language High-Level Language Second Generation Language(Assembly Languages) were developed to make programming easy. Since the computer cannot understand assembly language, however, a program called assembler is used to convert assembly language programs into machine code. For example, to add two numbers, you might write an instruction in assembly code like this: ADDF3 R1, R2, R3 Assembly Language is low level language because it is machine dependent and close to machine language I N T RO D U CT I O N T O J AV A P RO G RAM M I N G , T E N T H E D I T I O N , ( C) 2 0 1 5 P E ARS O N E D U CAT I O N , I N C. ALL RI G H T S RE S E RV E D AN D M O D I F I E D B Y D R. F E D A 13 ALS H AH W AN

  14. Programming Languages Machine Language Assembly Language High-Level Language Third Generation Language (High Level Language)The high-level languages are English-like (mathematical notation & English statement) and easy to learn and program. For example, the following is a high- level language statement that computes the area of a circle with radius 5: area = 5 * 5 * 3.1415; I N T RO D U CT I O N T O J AV A P RO G RAM M I N G , T E N T H E D I T I O N , ( C) 2 0 1 5 P E ARS O N E D U CAT I O N , I N C. ALL RI G H T S RE S E RV E D AN D M O D I F I E D B Y D R. F E D A 14 ALS H AH W AN

  15. Programming Languages Example English English ADD ADD Contents of Contents of ADDRESS ADDRESS 1 1 And And contents contents of ADDRESS 2 of ADDRESS 2 Then store Then store results in results in ADDRESS 3 ADDRESS 3 Machine Language Assembly Language High Level Language 01011010 00000001 00000010 00000011 Add A1, A2, A3, Total = number 1 + number 2 I N T RO D U CT I O N T O J AV A P RO G RAM M I N G , T E N T H E D I T I O N , ( C) 2 0 1 5 P E ARS O N E D U CAT I O N , I N C. ALL RI G H T S RE S E RV E D AN D M O D I F I E D B Y D R. F E D A 15 ALS H AH W AN

  16. Programming Languages Machine Language Assembly Language High-Level Language Fourth Generation Language (High Level Language) More English-like. For accessing resources such as databases. Example : FIND ALL TRANSACTIONS WHERE ID IS 1111222233334444 AND DATE IS BETWEEN 20060101 AND 20060201 Fifth Generation Language (High Level Language) Software that allows programmer to create graphical symbols or icons that generate 3GL code , CASE (Computer aided software engineering) Language for creating artificial intelligent applications (ex: PROLOG ,LISP). No procedural code. E D I T I O N , ( C) 2 0 1 5 P E ARS O N E D U CAT I O N , I N C. ALL RI G H T S RE S E RV E D AN D M O D I F I E D B Y D R. F E D A I N T RO D U CT I O N T O J AV A P RO G RAM M I N G , T E N T H 16 ALS H AH W AN

  17. Popular High-Level Languages Language Description Ada BASIC Named for Ada Lovelace, who worked on mechanical general-purpose computers. The Ada language was developed for the Department of Defense and is used mainly in defense projects. Beginner s All-purpose Symbolic Instruction Code. It was designed to be learned and used easily by beginners. Developed at Bell Laboratories. C combines the power of an assembly language with the ease of use and portability of a high-level language. C++ is an object-oriented language, based on C. Pronounced C Sharp. It is a hybrid of Java and C++ and was developed by Microsoft. COmmon Business Oriented Language. Used for business applications. FORmula TRANslation. Popular for scientific and mathematical applications. Developed by Sun Microsystems, now part of Oracle. It is widely used for developing platform- independent Internet applications. Named for Blaise Pascal, who pioneered calculating machines in the seventeenth century. It is a simple, structured, general-purpose language primarily for teaching programming. A simple general-purpose scripting language good for writing short programs. Visual Basic was developed by Microsoft and it enables the programmers to rapidly develop graphical user interfaces. I N T RO D U CT I O N T O J AV A P RO G RAM M I N G , T E N T H E D I T I O N , ( C) 2 0 1 5 P E ARS O N E D U CAT I O N , I N C. ALL RI G H T S RE S E RV E D AN D M O D I F I E D B Y D R. F E D A C C++ C# COBOL FORTRAN Java Pascal Python Visual Basic 17 ALS H AH W AN

  18. Interpreting/Compiling Source Code A program written in a high-level language is called a source program or source code. Because a computer cannot understand a source program, a source program must be translated into machine code for execution. The translation can be done using another programming tool called an interpreter or a compiler. I N T RO D U CT I O N T O J AV A P RO G RAM M I N G , T E N T H E D I T I O N , ( C) 2 0 1 5 P E ARS O N E D U CAT I O N , I N C. ALL RI G H T S RE S E RV E D AN D M O D I F I E D B Y D R. F E D A 18 ALS H AH W AN

  19. Interpreting Source Code An interpreter reads one statement from the source code, translates it to the machine code or virtual machine code, and then executes it right away, as shown in the following figure. Note that a statement from the source code may be translated into several machine instructions. I N T RO D U CT I O N T O J AV A P RO G RAM M I N G , T E N T H E D I T I O N , ( C) 2 0 1 5 P E ARS O N E D U CAT I O N , I N C. ALL RI G H T S RE S E RV E D AN D M O D I F I E D B Y D R. F E D A 19 ALS H AH W AN

  20. Compiling Source Code A compiler translates the entire source code into a machine-code file, and the machine-code file is then executed, as shown in the following figure. I N T RO D U CT I O N T O J AV A P RO G RAM M I N G , T E N T H E D I T I O N , ( C) 2 0 1 5 P E ARS O N E D U CAT I O N , I N C. ALL RI G H T S RE S E RV E D AN D M O D I F I E D B Y D R. F E D A 20 ALS H AH W AN

  21. Operating Systems The operating system (OS) is a program that manages and controls a computer s activities. The popular operating systems for general- purpose computers are Microsoft Windows, Mac OS, and Linux. . I N T RO D U CT I O N T O J AV A P RO G RAM M I N G , T E N T H E D I T I O N , ( C) 2 0 1 5 P E ARS O N E D U CAT I O N , I N C. ALL RI G H T S RE S E RV E D AN D M O D I F I E D B Y D R. F E D A 21 ALS H AH W AN

  22. Operating Systems Main Tasks of Operating System: Controlling and monitoring system activities: Reading input, sending output, keeping track of files and folders on storage devices, and controlling peripheral devices, Also, it ensures that different programs and users working at the same time do not interfere with each other. In addition, the OS is responsible for security, ensuring that unauthorized users and programs are not allowed to access the system. Allocating and assigning system resources: Determining what computer resources a program needs (such as CPU time, memory space, disks, input and output devices) and for allocating and assigning them to run the program. Scheduling operations Schedule program activities to allow efficient use of system resources. Many of today s operating systems support techniques such as multiprogramming, multithreading, and multiprocessing to increase system performance. I N T RO D U CT I O N T O J AV A P RO G RAM M I N G , T E N T H E D I T I O N , ( C) 2 0 1 5 P E ARS O N E D U CAT I O N , I N C. ALL RI G H T S RE S E RV E D AN D M O D I F I E D B Y D R. F E D A 22 ALS H AH W AN

  23. Operating Systems Main Scheduling Operations Methods of Operating System: Multiprogramming: Multiprogramming allows multiple programs to run simultaneously by sharing the same CPU Multithreading: Single program to execute multiple tasks at the same time Multiprocessing: Parallel processing, uses two or more processors together to perform subtasks concurrently and then combine solutions of the subtasks to obtain a solution for the entire task I N T RO D U CT I O N T O J AV A P RO G RAM M I N G , T E N T H E D I T I O N , ( C) 2 0 1 5 P E ARS O N E D U CAT I O N , I N C. ALL RI G H T S RE S E RV E D AN D M O D I F I E D B Y D R. F E D A 23 ALS H AH W AN

  24. Why Java? The answer is that Java enables users to develop and deploy applications on the Internet for servers, desktop computers, and small hand-held devices. The future of computing is being profoundly influenced by the Internet, and Java promises to remain a big part of that future. Java is the Internet programming language. Java is a general-purpose programming language. Java is the Internet programming language. I N T RO D U CT I O N T O J AV A P RO G RAM M I N G , T E N T H E D I T I O N , ( C) 2 0 1 5 P E ARS O N E D U CAT I O N , I N C. ALL RI G H T S RE S E RV E D AN D M O D I F I E D B Y D R. F E D A 24 ALS H AH W AN

  25. Java, Web, and Beyond Java is a versatile application: Java can be used to develop standalone applications and Web programming. Java can also be used to develop applications for servers, desktops and hand-held devices. Example: Software used to develop Android phones developed by Java Java can be used to develop applications running from a browser Applets (with modern graphical interface) I N T RO D U CT I O N T O J AV A P RO G RAM M I N G , T E N T H E D I T I O N , ( C) 2 0 1 5 P E ARS O N E D U CAT I O N , I N C. ALL RI G H T S RE S E RV E D AN D M O D I F I E D B Y D R. F E D A 25 ALS H AH W AN

  26. Javas History James Gosling and Sun Microsystems Oak Java, May 20, 1995, Sun World HotJava The first Java-enabled Web browser Early History Website: http://www.java.com/en/javahistory/index.jsp I N T RO D U CT I O N T O J AV A P RO G RAM M I N G , T E N T H E D I T I O N , ( C) 2 0 1 5 P E ARS O N E D U CAT I O N , I N C. ALL RI G H T S RE S E RV E D AN D M O D I F I E D B Y D R. F E D A 26 ALS H AH W AN

  27. Specification, API, JDK and IDE Java syntax (structure/form) and semantic (meaning) are defined in the Java language specification Java language specification is a technical definition of the java programming language s syntax and semantics Java library (classes and interfaces) is defined in the Java (Application Program Interface) API API contains predefined classes and interfaces and it is expanding Java language specification and API define the Java standards I N T RO D U CT I O N T O J AV A P RO G RAM M I N G , T E N T H E D I T I O N , ( C) 2 0 1 5 P E ARS O N E D U CAT I O N , I N C. ALL RI G H T S RE S E RV E D AN D M O D I F I E D B Y D R. F E D A 27 ALS H AH W AN

  28. Specification, API, JDK and IDE The JDK is the software for developing and running Java programs. JDK consists of a set of separate programs that can be invoked from a command line for developing and testing Java programs An IDE is an integrated development environment for rapidly developing programs. I N T RO D U CT I O N T O J AV A P RO G RAM M I N G , T E N T H E D I T I O N , ( C) 2 0 1 5 P E ARS O N E D U CAT I O N , I N C. ALL RI G H T S RE S E RV E D AN D M O D I F I E D B Y D R. F E D A 28 ALS H AH W AN

  29. Popular Java IDEs Java Development Tool is a software that is used instead of JDK to provide an IDE for developing Java programs quickly Graphical user interface Examples : NetBeans Eclipse TextPad I N T RO D U CT I O N T O J AV A P RO G RAM M I N G , T E N T H E D I T I O N , ( C) 2 0 1 5 P E ARS O N E D U CAT I O N , I N C. ALL RI G H T S RE S E RV E D AN D M O D I F I E D B Y D R. F E D A 29 ALS H AH W AN

  30. JDK Editions Java Standard Edition (J2SE) J2SE can be used to develop client-side standalone applications or applets from a Web browser. Java Enterprise Edition (J2EE) J2EE can be used to develop server-side applications such as Java servlets, Java ServerPages, and Java ServerFaces (JSF). Java Micro Edition (J2ME). J2ME can be used to develop applications for mobile devices such as cell phones. This book uses J2SE to introduce Java programming. I N T RO D U CT I O N T O J AV A P RO G RAM M I N G , T E N T H E D I T I O N , ( C) 2 0 1 5 P E ARS O N E D U CAT I O N , I N C. ALL RI G H T S RE S E RV E D AN D M O D I F I E D B Y D R. F E D A 30 ALS H AH W AN

  31. JDK Versions JDK 1.02 (1995) JDK 1.1 (1996) JDK 1.2 (1998) JDK 1.3 (2000) JDK 1.4 (2002) JDK 1.5 (2004) a. k. a. JDK 5 or Java 5 JDK 1.6 (2006) a. k. a. JDK 6 or Java 6 JDK 1.7 (2011) a. k. a. JDK 7 or Java 7 JDK 1.8 (2014) a. k. a. JDK 8 or Java 8 JSE 12 is the latest (2019) JSE 15 is the latest (2020) Release date End of Free Public Updates[7][8] Extended Support Until Version ? ? JDK Beta 1995 ? ? JDK 1.0 January 1996 ? ? JDK 1.1 February 1997 ? ? J2SE 1.2 December 1998 ? ? J2SE 1.3 May 2000 J2SE 1.4 February 2002 October 2008 February 2013 J2SE 5.0 September 2004 November 2009 April 2015 Java SE 6 December 2006 April 2013 December 2018 Java SE 7 July 2011 April 2015 July 2022 January 2019 for Oracle (commercial) January 2019 for Oracle (commercial) December 2020 for Oracle (personal use) At least September 2023 for AdoptOpenJDK Java SE 8 (LTS) March 2014 March 2025 N/A Java SE 9 September 2017 March 2018 for OpenJDK N/A Java SE 10 March 2018 September 2018 for OpenJDK Java SE 11 (LTS) September 2018 At least September 2022 for AdoptOpenJDK September 2026 N/A Java SE 12 Java SE 12 March 2019 September 2019 for OpenJDK No free public updates from Oracle; no announcement (yet) from AdoptOpenJDK TBA Java SE 13 (Final Release Candidate)[9] 9 August 2019 TBA TBA Java SE 14 (Early-Access Builds 12)[10] 28 August 2019 Legend: Legend: Old version Older version, still supported Latest version Latest version Latest preview version Future release I N T RO D U CT I O N T O J AV A P RO G RAM M I N G , T E N T H E D I T I O N , ( C) 2 0 1 5 P E ARS O N E D U CAT I O N , I N C. ALL RI G H T S RE S E RV E D AN D M O D I F I E D B Y D R. F E D A 31 ALS H AH W AN

  32. Companion Website Characteristics of Java Java Is Simple Java Is Object-Oriented Java Is Distributed Java Is Interpreted Java Is Robust Java Is Secure Java Is Architecture-Neutral Java Is Portable Java's Performance Java Is Multithreaded Java Is Dynamic www.cs.armstrong.edu/liang/JavaCharacteristics.pdf I N T RO D U CT I O N T O J AV A P RO G RAM M I N G , T E N T H E D I T I O N , ( C) 2 0 1 5 P E ARS O N E D U CAT I O N , I N C. ALL RI G H T S RE S E RV E D AN D M O D I F I E D B Y D R. F E D A 32 ALS H AH W AN

  33. Companion Website Characteristics of Java Java is easy to learn and partially modeled on C++, but greatly simplified and improved. Some people refer to Java as "C++--" because it is like C++ but with more functionality and fewer negative aspects. Java Is Simple Java Is Object-Oriented Java Is Distributed Java Is Interpreted Java Is Robust Java Is Secure Java Is Architecture-Neutral Java Is Portable Java's Performance Java Is Multithreaded Java Is Dynamic I N T RO D U CT I O N T O J AV A P RO G RAM M I N G , T E N T H E D I T I O N , ( C) 2 0 1 5 P E ARS O N E D U CAT I O N , I N C. ALL RI G H T S RE S E RV E D AN D M O D I F I E D B Y D R. F E D A 33 ALS H AH W AN

  34. Companion Website Characteristics of Java Java is inherently object-oriented. Although many object-oriented languages began strictly as procedural languages, Java was designed from the start to be object-oriented. Object-oriented programming (OOP) is a popular programming approach that is replacing traditional procedural programming techniques. Java Is Simple Java Is Object-Oriented Java Is Distributed Java Is Interpreted Java Is Robust Java Is Secure Java Is Architecture-Neutral Java Is Portable Java's Performance Java Is Multithreaded Java Is Dynamic One of the central issues in software development is how to reuse code. Object- oriented programming provides great flexibility, modularity, clarity, and reusability through encapsulation, inheritance, and polymorphism. I N T RO D U CT I O N T O J AV A P RO G RAM M I N G , T E N T H E D I T I O N , ( C) 2 0 1 5 P E ARS O N E D U CAT I O N , I N C. ALL RI G H T S RE S E RV E D AN D M O D I F I E D B Y D R. F E D A 34 ALS H AH W AN

  35. Companion Website Characteristics of Java Distributed computing involves several computers working together on a network. Java is designed to make distributed computing easy. Since networking capability is inherently integrated into Java, writing network programs is like sending and receiving data to and from a file. Java Is Simple Java Is Object-Oriented Java Is Distributed Java Is Interpreted Java Is Robust Java Is Secure Java Is Architecture-Neutral Java Is Portable Java's Performance Java Is Multithreaded Java Is Dynamic I N T RO D U CT I O N T O J AV A P RO G RAM M I N G , T E N T H E D I T I O N , ( C) 2 0 1 5 P E ARS O N E D U CAT I O N , I N C. ALL RI G H T S RE S E RV E D AN D M O D I F I E D B Y D R. F E D A 35 ALS H AH W AN

  36. Companion Website Characteristics of Java You need an interpreter to run Java programs. The programs are compiled into bytecode. The bytecode is low level machine-independent language and can run on any machine that has a Java interpreter, which is part of the Java Virtual Machine (JVM). Java Is Simple Java Is Object-Oriented Java Is Distributed Java Is Interpreted Java Is Robust Java Is Secure Java Is Architecture-Neutral Java Is Portable Java's Performance Java Is Multithreaded Java Is Dynamic I N T RO D U CT I O N T O J AV A P RO G RAM M I N G , T E N T H E D I T I O N , ( C) 2 0 1 5 P E ARS O N E D U CAT I O N , I N C. ALL RI G H T S RE S E RV E D AN D M O D I F I E D B Y D R. F E D A 36 ALS H AH W AN

  37. Companion Website Characteristics of Java Java tries to eliminate error-prone situations by emphasizing mainly on compile time error checking and runtime checking Java compilers can detect many problems that would first show up at execution time in other languages. Java has a runtime exception-handling feature to provide programming support for robustness. Java Is Simple Java Is Object-Oriented Java Is Distributed Java Is Interpreted Java Is Robust Java Is Secure Java Is Architecture-Neutral Java Is Portable Java's Performance Java Is Multithreaded Java Is Dynamic I N T RO D U CT I O N T O J AV A P RO G RAM M I N G , T E N T H E D I T I O N , ( C) 2 0 1 5 P E ARS O N E D U CAT I O N , I N C. ALL RI G H T S RE S E RV E D AN D M O D I F I E D B Y D R. F E D A 37 ALS H AH W AN

  38. Companion Website Characteristics of Java Java Is Simple Java Is Object-Oriented Java Is Distributed Java Is Interpreted Java Is Robust Java Is Secure Java Is Architecture-Neutral Java Is Portable Java's Performance Java Is Multithreaded Java Is Dynamic Java implements several security mechanisms to protect your system against harm caused by stray programs. It enables to develop virus-free, tamper- free systems. Authentication techniques are based on public-key encryption. I N T RO D U CT I O N T O J AV A P RO G RAM M I N G , T E N T H E D I T I O N , ( C) 2 0 1 5 P E ARS O N E D U CAT I O N , I N C. ALL RI G H T S RE S E RV E D AN D M O D I F I E D B Y D R. F E D A 38 ALS H AH W AN

  39. Companion Website Characteristics of Java Java Is Simple Java Is Object-Oriented Java Is Distributed Java Is Interpreted Java Is Robust Java Is Secure Java Is Architecture-Neutral Java Is Portable Java's Performance Java Is Multithreaded Java Is Dynamic Write once, run anywhere With a Java Virtual Machine (JVM), you can write one program that will run on any platform. Java compiler generates an architecture-neutral object file format, which makes the compiled code executable on many processors, with the presence of JVM. I N T RO D U CT I O N T O J AV A P RO G RAM M I N G , T E N T H E D I T I O N , ( C) 2 0 1 5 P E ARS O N E D U CAT I O N , I N C. ALL RI G H T S RE S E RV E D AN D M O D I F I E D B Y D R. F E D A 39 ALS H AH W AN

  40. Companion Website Characteristics of Java Java Is Simple Java Is Object-Oriented Java Is Distributed Java Is Interpreted Java Is Robust Java Is Secure Java Is Architecture-Neutral Java Is Portable Java's Performance Java Is Multithreaded Java Is Dynamic Because Java is architecture neutral, Java programs are portable. They can be run on any platform without being recompiled. I N T RO D U CT I O N T O J AV A P RO G RAM M I N G , T E N T H E D I T I O N , ( C) 2 0 1 5 P E ARS O N E D U CAT I O N , I N C. ALL RI G H T S RE S E RV E D AN D M O D I F I E D B Y D R. F E D A 40 ALS H AH W AN

  41. Companion Website Characteristics of Java Java Is Simple Java Is Object-Oriented Java Is Distributed Java Is Interpreted Java Is Robust Java Is Secure Java Is Architecture-Neutral Java Is Portable Java's Performance Java Is Multithreaded Java Is Dynamic Java s performance is high because Java uses just in time complier I N T RO D U CT I O N T O J AV A P RO G RAM M I N G , T E N T H E D I T I O N , ( C) 2 0 1 5 P E ARS O N E D U CAT I O N , I N C. ALL RI G H T S RE S E RV E D AN D M O D I F I E D B Y D R. F E D A 41 ALS H AH W AN

  42. Companion Website Characteristics of Java Java Is Simple Java Is Object-Oriented Java Is Distributed Java Is Interpreted Java Is Robust Java Is Secure Java Is Architecture-Neutral Java Is Portable Java's Performance Java Is Multithreaded Java Is Dynamic Multithread programming is smoothly integrated in Java, whereas in other languages you must call procedures specific to the operating system to enable multithreading. Multithread programming allows to write programs that can perform many tasks simultaneously. This design feature allows the developers to construct interactive applications that can run smoothly I N T RO D U CT I O N T O J AV A P RO G RAM M I N G , T E N T H E D I T I O N , ( C) 2 0 1 5 P E ARS O N E D U CAT I O N , I N C. ALL RI G H T S RE S E RV E D AN D M O D I F I E D B Y D R. F E D A 42 ALS H AH W AN

  43. Companion Website Characteristics of Java Java was designed to adapt to an evolving environment. New code can be loaded on the fly without recompilation. There is no need for developers to create, and for users to install, major new software versions. New features can be incorporated transparently as needed. Java is more dynamic than C or C++ since it is designed to adapt to an evolving environment. Java programs can carry an extensive amount of run-time information that can be used to verify and resolve accesses to objects at run-time Java Is Simple Java Is Object-Oriented Java Is Distributed Java Is Interpreted Java Is Robust Java Is Secure Java Is Architecture-Neutral Java Is Portable Java's Performance Java Is Multithreaded Java Is Dynamic I N T RO D U CT I O N T O J AV A P RO G RAM M I N G , T E N T H E D I T I O N , ( C) 2 0 1 5 P E ARS O N E D U CAT I O N , I N C. ALL RI G H T S RE S E RV E D AN D M O D I F I E D B Y D R. F E D A 43 ALS H AH W AN

  44. I N T RO D U CT I O N T O J AV A P RO G RAM M I N G , T E N T H E D I T I O N , ( C) 2 0 1 5 P E ARS O N E D U CAT I O N , I N C. ALL RI G H T S RE S E RV E D AN D M O D I F I E D B Y D R. F E D A ALS H AH W AN

  45. OO Object-oriented programming is a programming paradigm based on the concept of "objects", which may contain data, in the form of fields, often known as attributes; and code, in the form of procedures, often known as methods. Object-oriented programming provides great flexibility, modularity, clarity, and reusability through encapsulation, abstract, inheritance, and polymorphism. I N T RO D U CT I O N T O J AV A P RO G RAM M I N G , T E N T H E D I T I O N , ( C) 2 0 1 5 P E ARS O N E D U CAT I O N , I N C. ALL RI G H T S RE S E RV E D AN D M O D I F I E D B Y D R. F E D A 45 ALS H AH W AN

  46. A Simple Java Program A java program is executed from the main method in the class Java source program are case sensitive Console refers to the text entry and display of a computer Console input / receive input from keyboard Console output/display output on the monitor Every Java program must have at least one class Each class has a name that by convention starts with an upper case I N T RO D U CT I O N T O J AV A P RO G RAM M I N G , T E N T H E D I T I O N , ( C) 2 0 1 5 P E ARS O N E D U C@ AT I O N , I N C. ALL RI G H T S RE S E RV E D AN D M O D I F I E D B Y D R. F E D A 46 ALS H AH W AN

  47. A Simple Java Program A method is a construct that contains statements Every statement ends with a semicolon ; A string is a sequence of characters enclosed in double quotation marks Reserved words/keywords have a predefined meaning to the compiler and cannot be used for other purposes I N T RO D U CT I O N T O J AV A P RO G RAM M I N G , T E N T H E D I T I O N , ( C) 2 0 1 5 P E ARS O N E D U C@ AT I O N , I N C. ALL RI G H T S RE S E RV E D AN D M O D I F I E D B Y D R. F E D A 47 ALS H AH W AN

  48. A Simple Java Program Comment is not a programming statement and is ignored by the compiler but useful for programmers to help them to communicate and understand the program Comments can be line comment // .. or block comment /* ..*/ Block is used to group the program s components and it is enclosed by curly braces I N T RO D U CT I O N T O J AV A P RO G RAM M I N G , T E N T H E D I T I O N , ( C) 2 0 1 5 P E ARS O N E D U C@ AT I O N , I N C. ALL RI G H T S RE S E RV E D AN D M O D I F I E D B Y D R. F E D A 48 ALS H AH W AN

  49. A Simple Java Program The source file is saved with java extension and must have same name as the public class compiled into .class file that will be executed by JVM JVM is a program that interprets Java bytecode A java compiler translates a java source code into java byte code using the following command Javac filename.java I N T RO D U CT I O N T O J AV A P RO G RAM M I N G , T E N T H E D I T I O N , ( C) 2 0 1 5 P E ARS O N E D U C@ AT I O N , I N C. ALL RI G H T S RE S E RV E D AN D M O D I F I E D B Y D R. F E D A 49 ALS H AH W AN

  50. A Simple Java Program To run the bytecode one at a time use the following command Java filename Class loader is a program that controls loading the bytecode of the required class into memory before executing it Bytecode verifier is a program used to check validity of the bytecode and its security Link to download Java https://www.oracle.com/technetwork/java/javase/downloads/jdk- netbeans-jsp-3413139-esa.html JDK 8u111 with NetBeans 8.2 JDK 8u111 with NetBeans 8.2 E D I T I O N , ( C) 2 0 1 5 P E ARS O N E D U C@ AT I O N , I N C. ALL RI G H T S RE S E RV E D AN D M O D I F I E D B Y D R. F E D A I N T RO D U CT I O N T O J AV A P RO G RAM M I N G , T E N T H 50 ALS H AH W AN

More Related Content