Presentation is loading. Please wait.

Presentation is loading. Please wait.

COMPSCI 172 – Introduction to Objected- Oriented programming in Java Class hour: 12:05-12:55 pm MWF (section 1). 1:10-2:00 pm MWF (section 2) McGraw Room.

Similar presentations


Presentation on theme: "COMPSCI 172 – Introduction to Objected- Oriented programming in Java Class hour: 12:05-12:55 pm MWF (section 1). 1:10-2:00 pm MWF (section 2) McGraw Room."— Presentation transcript:

1 COMPSCI 172 – Introduction to Objected- Oriented programming in Java Class hour: 12:05-12:55 pm MWF (section 1). 1:10-2:00 pm MWF (section 2) McGraw Room 115

2 Course Objectives Given a description of a simple problem, formulate algorithms following object-oriented design concepts to solve this problem Given a description of a simple problem, implement the solution in Java which uses class construction, interface, methods, messages passing, file processing, and simple Graphical User Interface

3 Textbook/Technology requirement Textbook: An Introduction to Object-Oriented Programming with Java (third edition). C. Thomas Wu. 2004. McGraw-Hill Publishing Software: J2SE Software Development Kit (SDK): http://java.sun.com/j2se/1.4.2/download.html http://java.sun.com/j2se/1.4.2/download.html Textpad: download at http://www.textpad.com/download/index.html#downloads http://www.textpad.com/download/index.html#downloads

4 Introduction Tell me about yourself and what you expect to get out from this course

5 Self-Introduction Recently graduated from the University of Connecticut (05 Class), Ph.D in Computer Science and Engineering Bachelor of Science from Hanoi University of Technology (86-91) Master of Computer Science from UW-Milwaukee (96-99)

6 Self-Introduction Research Experience: –User Modeling, Information Retrieval, Decision Theory, Collaborative Filtering, Human Factors Teaching Experience: –CS172, 181, 271 at UWW –Introduction courses at UOP and Devry –TA for Computer Architecture, OO Design, Compiler, Artificial Intelligence

7 Self-Introduction Teaching philosophy: –Interactive –Adaptive –Pro-active –Collaborative Other hobbies (non-academic related) –Movies –College Basketball –Family activities

8 Contact information nguyenh@uww.edu Baker Hall 324 Office Hours: 2:15-4:15pm, MWF, or by appointment 262 472 5170

9 Course detail - Topics Object-oriented design and implement using Java Understanding of algorithm, objects, classes Fundamentals of Java language & program Specific Applications

10 Course detail - Evaluation GRADABLEPOINTS Homework 1100 Homework 2100 Exam 1150 Exam 2150 Project 1100 Project 2100 Project 3100 Final Exam200 Total1000

11 What does it take to success Practice, practice, practice!!! (Programming, reading, doing practice exercises) Prior programming skills help Participate in class discussion and group discussion Thinking, thinking, thinking!!!

12 Questions?

13 Introduction to OO Programming and Java

14 Lesson plan History & Novelty of Java Class & Objects

15 History High-level programming language Low level programming language: CPU instruction sets. High level programming languages: Compiled (C/C++, Pascal) and interpreted language (Basic) Procedural (Pascal, C) and object oriented language (C++, Java)

16 Java’s Ancestry Oak: a reimplementation of C++ in the early 1990s by James Gosling. –Intended for intelligent consumer devices. Oak became Java in 1995. –Portability and Security of primary concern. –Eminently suitable for Web applets. –Also a powerful language in its own right.

17 What is news with Java? Platform-independent (portability) –The JVM is an imaginary CPU with bytecode instructions. Java programs are translated to bytecodes by the Java compiler Object-oriented: code reusable Lost of resources and tools

18 What is news with Java Inheritance: capability of a class to use the properties and methods of another class while adding its own functionality Polymorphism: capability of an action or method to do different things based on the object that it is acting upon

19 Practice (LoanCalculator) Type in TextPad and save the file as LoanCalculator.java Compile in TextPad by: –Tool -> Compile Java Run this application by –Tool -> Run Java Application (First save LoanCalculator.java file to C:\Document and Setting, under your directory, compile and run it)

20 /** * Sample program … **/ import javax.swing.*; /* Multiple comments */ import java.text.*; public class LoanCalculator{ public static void main(String[] args) { final int MONTHS_IN_YEAR = 12; double loanAmount; // represents the amount being borrowed int loanPeriod; // represents the number of years of the loan ….. DecimalFormat df = new DecimalFormat("0.00"); Comments Multi-line comment Single-line comment

21 /** * Sample program … **/ import javax.swing.*; import java.text.*; public class LoanCalculator{ public static void main(String[] args) { /* Add a multi-line comment here */ final int MONTHS_IN_YEAR = 12; // Add your comment here double loanAmount; // represents the amount being borrowed int loanPeriod; // represents the number of years of the loan ….. DecimalFormat df = new DecimalFormat("0.00");

22 /** * Sample program … **/ import javax.swing.*; import java.text.*; public class LoanCalculator{ public static void main(String[] args) { final int MONTHS_IN_YEAR = 12; double loanAmount; // represents the amount being borrowed int loanPeriod; // represents the number of years of the loan ….. DecimalFormat df = new DecimalFormat("0.00"); Import statement

23 /** * Sample program … **/ // import javax.swing.*; import java.text.*; public class LoanCalculator{ public static void main(String[] args) { final int MONTHS_IN_YEAR = 12; double loanAmount; // represents the amount being borrowed int loanPeriod; // represents the number of years of the loan ….. DecimalFormat df = new DecimalFormat("0.00");

24 /** * Sample program … **/ import javax.swing.*; import java.text.*; public class LoanCalculator{ public static void main(String[] args) { final int MONTHS_IN_YEAR = 12; double loanAmount; // represents the amount being borrowed int loanPeriod; // represents the number of years of the loan ….. DecimalFormat df = new DecimalFormat("0.00"); Class Declaration

25 /** * Sample program … **/ import javax.swing.*; import java.text.*; Public class loancalculator{ public static void main(String[] args) { final int MONTHS_IN_YEAR = 12; double loanAmount; // represents the amount being borrowed int loanPeriod; // represents the number of years of the loan ….. DecimalFormat df = new DecimalFormat("0.00");

26 /** * Sample program … **/ import javax.swing.*; import java.text.*; class LoanCalculator{ public static void main(String[] args) { final int MONTHS_IN_YEAR = 12; double loanAmount; // represents the amount being borrowed int loanPeriod; // represents the number of years of the loan ….. DecimalFormat df = new DecimalFormat("0.00"); Class Declaration

27 Class and Objects A class definition provides a description of a typical object within that class. student, faculty, person An individual object is an instance of a class. Definition of behavior (methods) and attributes (fields).

28 /** * Sample program … **/ import javax.swing.*; import java.text.*; public class LoanCalculator{ public static void main(String[] args) { final int MONTHS_IN_YEAR = 12; double loanAmount; // represents the amount being borrowed int loanPeriod; // represents the number of years of the loan ….. DecimalFormat df = new DecimalFormat("0.00"); Behaviors (Main Method)

29 /** * Sample program … **/ import javax.swing.*; import java.text.*; public class LoanCalculator{ private final int MONTHS_IN_YEAR = 12; public static void main(String[] args) { double loanAmount; // represents the amount being borrowed int loanPeriod; // represents the number of years of the loan ….. DecimalFormat df = new DecimalFormat("0.00"); Attributes (Fields)

30 Class and Objects (Example) Student_Steven Name=“Steven” Id=“001” Credit earned=50 Student_Emily Name=“Emily” Id=“002” Credit earned=100 Objects Student Name ID Credit earned Class

31 Class and Instances Class definition is like a blueprint or template. –Color, size, pattern might vary, but instances of the same class come from the same mold.

32 Object Interactions Communication between people: Information: “I am going to a party.” Question: “What is the time?” Order/Request: “Please buy me some gum.” Objects communicate in similar ways. Professor A getStudentEarnedCredits() StudentSteven 50

33 /** * Sample program … **/ import javax.swing.*; import java.text.*; public class LoanCalculator{ public static void main(String[] args) { final int MONTHS_IN_YEAR = 12; double loanAmount; // represents the amount being borrowed int loanPeriod; // represents the number of years of the loan ….. DecimalFormat df = new DecimalFormat("0.00"); Object Instantiation

34 /** * Sample program … **/ import javax.swing.*; import java.text.*; public class LoanCalculator{ public static void main(String[] args) { final int MONTHS_IN_YEAR = 12; double loanAmount; // represents the amount being borrowed int loanPeriod; // represents the number of years of the loan ….. DecimalFormat df; // ….

35 /** * Sample program … **/ import javax.swing.*; import java.text.*; public class LoanCalculator{ public static void main(String[] args) { final int MONTHS_IN_YEAR = 12; double loanAmount; // represents the amount being borrowed int loanPeriod; // represents the number of years of the loan String inputStr; ….. inputStr = JOptionPane.showInputDialog(null,"Loan Amount (dollars.cents):"); Object Interactions

36 /** * Sample program … **/ import javax.swing.*; import java.text.*; public class LoanCalculator{ public static void main(String[] args) { final int MONTHS_IN_YEAR = 12; double loanAmount; // represents the amount being borrowed int loanPeriod; // represents the number of years of the loan String inputStr; ….. inputStr = JOptionPane.showInputDialog(null,"Loan Amount (dollars.cents):"); Variable Declaration

37 /** * Sample program … **/ import javax.swing.*; import java.text.*; public class LoanCalculator{ public static void main(String[] args) { final int MONTHS_IN_YEAR = 12; // double loanAmount; // represents the amount being.. int loanPeriod; // represents the number of years of the loan String inputStr; ….. inputStr = JOptionPane.showInputDialog(null,"Loan Amount (dollars.cents):");

38 /** * Sample program … **/ import javax.swing.*; import java.text.*; public class LoanCalculator{ public static void main(String[] args) { monthlyInterestRate = annualInterestRate / MONTHS_IN_YEAR/ 100; numberOfPayments = loanPeriod * MONTHS_IN_YEAR; monthlyPayment = (loanAmount * monthlyInterestRate)/(1- Math.pow(1/(1+monthlyInterestRate),numberOfPayments)); totalPayment = monthlyPayment * numberOfPayments; Assign Statement Expressions

39 Inheritance Student Graduate student Undergraduate student MastersDoctoral Law/ Medicine CommutingResident

40 Questions?


Download ppt "COMPSCI 172 – Introduction to Objected- Oriented programming in Java Class hour: 12:05-12:55 pm MWF (section 1). 1:10-2:00 pm MWF (section 2) McGraw Room."

Similar presentations


Ads by Google