Presentation is loading. Please wait.

Presentation is loading. Please wait.

Data Structure: Java Programming 1 Min Chen School of Computer Science and Engineering Seoul National University.

Similar presentations


Presentation on theme: "Data Structure: Java Programming 1 Min Chen School of Computer Science and Engineering Seoul National University."— Presentation transcript:

1 Data Structure: Java Programming 1 Min Chen School of Computer Science and Engineering Seoul National University

2 Content  Overview of Java  Integrated Development Environment (IDE)  Install Java SE  Introduction to Eclipse  Setup your IDE in Windows  Start a new Java Project  Object-Oriented Programming  Concept of Class  Method in Class  Class in Java Programming

3 Overview of Java  Began as an internal project in 1990  Named “Oak” first  Sun Microsystem  Providing an alternative to the C++/C  Re-target Java to Internet in 1994  Versions  Java Card  Java ME (Micro Edition)  Java SE (Standard Edition)  Java EE (Enterprise Edition)

4 Features of Java  Object-Oriented Programming Language  Write Once, Run Anywhere  Java Virtual Machine (VM) Machine Code Java VM Java Binary Files (.class) Java Code (.java) Compiler Runtime Interpreting

5 Install Java SE JDK  Website:  http://www.java.com/en/download/manual.jsp http://www.java.com/en/download/manual.jsp

6 IDE: Eclipse  A powerful IDE for Java development  As Microsoft Visual C++ for C++/C Development  Totally Free of Use !!!  A large number of Plug-in  Enable C++ development  Enable Website Design  … … Integrated Development Environment

7 Eclipse: Download  Website:  http://www.eclipse.org/downloads/ http://www.eclipse.org/downloads/

8 Start Eclipse  Steps 1. Extract the zip file into your hard disk 2. Double click to run “eclipse.exe” 3. Select your workspace directory

9 Start a new Java Project

10 Writing Code for HelloWorld public static void main(String args[]) { System.out.print("Hello World in Java!"); } public static void main(String args[]) { System.out.print("Hello World in Java!"); }

11 HelloWorld: Result

12 Object-Oriented Programming  Process-Oriented Programming  Focus on a flow process  Separates the concerns of data structures and the concurrent processes that act upon them  Object-Oriented Programming  Uses "objects" – data structures consisting of datafields and methods together with their interactions – to design applications  Feature  Information hiding, Data abstraction, Encapsulation, Modularity, Polymorphism, Inheritance

13 Object-Oriented Programming  Example: Gobang Game (five-in-a-row) Start Black Turn Draw chessboard Black Win ? End White Turn Draw chessboard White Win ? Y N Y N Process-Oriented Programming: Object-Oriented Programming: Chessboard System Judgment System White Player Black Player

14 Process-Oriented Programming  Focus on the flow of the work  The basis of programming  if… else…  Loop  Function  Recursion

15 Function  Usually called “Method” in Java public int larger (int a, int b) { if(a>b) return a; else return b; } Type of Return Value Name of the method Parameters for the method Privilege of the method

16 Recursion  Fibonacci Number  0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, … The function calls itself Towers of Hanoi

17 Concept of Class  Example 1 Name:Bill Gates Gender:Male Age:54 Born:U.S. Company:Microsoft Products:Windows, Office… Name:Steve Jobs Gender:Male Age:54 Born:U.S. Company:Apple Inc. Products:Mac, iPod, iPhone… CEOs Name Gender Age Place of Birth Company Products Attribute

18 Concept of Class (cont.)  Example 2 Name: 박지성 Gender:Male Age:28 Born:Korea Employer:Man. United Sports:Football League:Premier Name:Yao Ming Gender:Male Age:29 Born:China Employer:Rockets Sports:Basketball League:NBA Sportsmen Name Gender Age Place of Birth Employer Sports League

19 Name: 이병헌 Gender:Male Age:39 Born:Korea School: 중앙대 Drama:All In, Iris Name: 김태희 Gender:Female Age:29 Born:Korea School: 서울대 Drama:Love Story in Harvard, Iris Concept of Class (cont.)  Example 3 Stars Name Gender Age Place of Birth School Drama

20 Inheritance of Class  Higher Abstract CEOs Name Gender Age Place of Birth Company Products Sportsmen Name Gender Age Place of Birth Employer Sports League Stars Name Gender Age Place of Birth School Drama CEOs Company Products Sportsmen Employer Sports League Stars School Drama People Name Gender Age Place of Birth Superclass Subclass Subclass will inherit most of the attributes of his superclass

21 Method in Class  A class is not just a collection of data (we call it attribute), but also a collection of methods  Method  As the function in C++/C  Define procedure with input and output  Example:  People  Think()  Eat()  Sleep()

22 Method Inheritance  Methods also can be inherited Think ( ) Talk ( ) Love ( ) Eat( ) Sleep( ) Survive( ) photosynthesis( ) Multiple Level Inheritance is allowed

23 Overwrite of Methods  So how about the situation below ? Center Radius Draw( ) Describe( ) Draw( ) Circle c = new Circle(); c.Draw();

24 Overload of Methods  Can we have two methods with the same name but different parameters in one class ? public void get() { System.out.print(“No parameters!”); } public void get(int par) { System.out.print(“Has parameter of ”+ par); } Overload ol= new Overload(); ol.get(); ol.get(32); Public Class Overload No parameters! Has parameter of 32

25 Summary of Class  Consist of Attributes and Methods  Represents a collection of data and functions which have relationship to each other  Other features  Information hiding  Data abstraction  Encapsulation  Modularity  Polymorphism  Inheritance

26 Class in Java Programming  Personally, I classify the Classes in Java Programming into two types:  Entrance Class (Project Class)  With main method in the Class  The entrance and control center of the whole program  Accessories Class  Provide functional part  Call in the main function to create instance HelloWorld.java is an Entrance Class The method in Accessories Class being called should be public!

27 Example  CEO Class Constructed Function: Run when the object is initiated Define the attributes for Class CEO Set to be public so that the function in CEO can be called in other Class

28 Example (cont.)  HelloWorld Class Create an instance (steve) of Class CEO Reset the name of the instance by the method setName in Class CEO Get the name of the instance by the method getName in Class CEO

29 Example Result  The system print out: Hello World in Java! My name is Steve Jobs

30 Thank you


Download ppt "Data Structure: Java Programming 1 Min Chen School of Computer Science and Engineering Seoul National University."

Similar presentations


Ads by Google