Introduction to Java
CS 331
Introduction
• Present the syntax of Java
• Introduce the Java API
• Demonstrate how to build
– stand-alone Java programs
...
Why Java?
• It’s the current “hot” language
• It’s almost entirely object-oriented
• It has a vast library of predefined o...
Applets, Servlets and
Applications
• An applet is designed to be embedded in a
Web page, and run by a browser
• Applets ru...
Building Standalone JAVA
Programs (on UNIX)
• Prepare the file foo.java using an editor
• Invoke the compiler: javac foo.j...
Java Virtual Machine
• The .class files generated by the compiler are
not executable binaries
– so Java combines compilati...
HelloWorld (standalone)
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello World...
Comments are almost like C++
• /* This kind of comment can span multiple lines
*/
• // This kind is to the end of the line...
Primitive data types are like C
• Main data types are int, double,
boolean, char
• Also have byte, short, long, float
• bo...
Expressions are like C
• Assignment statements mostly look like those in C; you
can use =, +=, *= etc.
• Arithmetic uses t...
Control statements are like C
• if (x < y) smaller = x;
• if (x < y){ smaller=x;sum += x;}
else { smaller = y; sum += y; }...
Control statements II
• Java also introduces the try statement,
about which more later
switch (n + 1) {
case 0: m = n - 1;...
Java isn't C!
• In C, almost everything is in functions
• In Java, almost everything is in classes
• There is often only o...
Java program layout
• A typical Java file looks like:
import java.awt.*;
import java.util.*;
public class SomethingOrOther...
What is a class?
• Early languages had only arrays
– all elements had to be of the same type
• Then languages introduced s...
So, what is a class?
• A class consists of
– a collection of fields, or variables, very much
like the named fields of a st...
Name conventions
• Java is case-sensitive; maxval, maxVal, and
MaxVal are three different names
• Class names begin with a...
The class hierarchy
• Classes are arranged in a hierarchy
• The root, or topmost, class is Object
• Every class but Object...
An example of a class
class Person {
String name;
int age;
void birthday ( ) {
age++;
System.out.println (name + ' is
now ...
Another example of a class
class Driver extends Person {
long driversLicenseNumber;
Date expirationDate;
}
Creating and using an object
• Person john;
john = new Person ( );
john.name = "John Smith";
john.age = 37;
• Person mary ...
An array is an object
• Person mary = new Person ( );
• int myArray[ ] = new int[5];
– or:
• int myArray[ ] = {1, 4, 9, 16...
Upcoming SlideShare
Loading in...5
×

Java intro

124

Published on

Published in: Education, Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
124
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
5
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Java intro

  1. 1. Introduction to Java CS 331
  2. 2. Introduction • Present the syntax of Java • Introduce the Java API • Demonstrate how to build – stand-alone Java programs – Java applets, which run within browsers e.g. Netscape • Example programs
  3. 3. Why Java? • It’s the current “hot” language • It’s almost entirely object-oriented • It has a vast library of predefined objects and operations • It’s more platform independent – this makes it great for Web programming • It’s more secure • It isn’t C++
  4. 4. Applets, Servlets and Applications • An applet is designed to be embedded in a Web page, and run by a browser • Applets run in a sandbox with numerous restrictions; for example, they can’t read files and then use the network • A servlet is designed to be run by a web server • An application is a conventional program
  5. 5. Building Standalone JAVA Programs (on UNIX) • Prepare the file foo.java using an editor • Invoke the compiler: javac foo.java • This creates foo.class • Run the java interpreter: java foo
  6. 6. Java Virtual Machine • The .class files generated by the compiler are not executable binaries – so Java combines compilation and interpretation • Instead, they contain “byte-codes” to be executed by the Java Virtual Machine – other languages have done this, e.g. UCSD Pascal • This approach provides platform independence, and greater security
  7. 7. HelloWorld (standalone) public class HelloWorld { public static void main(String[] args) { System.out.println("Hello World!"); } } • Note that String is built in • println is a member function for the System.out class
  8. 8. Comments are almost like C++ • /* This kind of comment can span multiple lines */ • // This kind is to the end of the line • /** * This kind of comment is a special * ‘javadoc’ style comment */
  9. 9. Primitive data types are like C • Main data types are int, double, boolean, char • Also have byte, short, long, float • boolean has values true and false • Declarations look like C, for example, – double x, y; – int count = 0;
  10. 10. Expressions are like C • Assignment statements mostly look like those in C; you can use =, +=, *= etc. • Arithmetic uses the familiar + - * / % • Java also has ++ and -- • Java has boolean operators && || ! • Java has comparisons < <= == != >= > • Java does not have pointers or pointer arithmetic
  11. 11. Control statements are like C • if (x < y) smaller = x; • if (x < y){ smaller=x;sum += x;} else { smaller = y; sum += y; } • while (x < y) { y = y - x; } • do { y = y - x; } while (x < y) • for (int i = 0; i < max; i++) sum += i; • BUT: conditions must be boolean !
  12. 12. Control statements II • Java also introduces the try statement, about which more later switch (n + 1) { case 0: m = n - 1; break; case 1: m = n + 1; case 3: m = m * n; break; default: m = -n; break; }
  13. 13. Java isn't C! • In C, almost everything is in functions • In Java, almost everything is in classes • There is often only one class per file • There must be only one public class per file • The file name must be the same as the name of that public class, but with a .java extension
  14. 14. Java program layout • A typical Java file looks like: import java.awt.*; import java.util.*; public class SomethingOrOther { // object definitions go here . . . } This must be in a file named SomethingOrOther.java !
  15. 15. What is a class? • Early languages had only arrays – all elements had to be of the same type • Then languages introduced structures (called records, or structs) – allowed different data types to be grouped • Then Abstract Data Types (ADTs) became popular – grouped operations along with the data
  16. 16. So, what is a class? • A class consists of – a collection of fields, or variables, very much like the named fields of a struct – all the operations (called methods) that can be performed on those fields – can be instantiated • A class describes objects and operations defined on those objects
  17. 17. Name conventions • Java is case-sensitive; maxval, maxVal, and MaxVal are three different names • Class names begin with a capital letter • All other names begin with a lowercase letter • Subsequent words are capitalized: theBigOne • Underscores are not used in names • These are very strong conventions!
  18. 18. The class hierarchy • Classes are arranged in a hierarchy • The root, or topmost, class is Object • Every class but Object has at least one superclass • A class may have subclasses • Each class inherits all the fields and methods of its (possibly numerous) superclasses
  19. 19. An example of a class class Person { String name; int age; void birthday ( ) { age++; System.out.println (name + ' is now ' + age); } }
  20. 20. Another example of a class class Driver extends Person { long driversLicenseNumber; Date expirationDate; }
  21. 21. Creating and using an object • Person john; john = new Person ( ); john.name = "John Smith"; john.age = 37; • Person mary = new Person ( ); mary.name = "Mary Brown"; mary.age = 33; mary.birthday ( );
  22. 22. An array is an object • Person mary = new Person ( ); • int myArray[ ] = new int[5]; – or: • int myArray[ ] = {1, 4, 9, 16, 25}; • String languages [ ] = {"Prolog", "Java"};
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×