
Introduction to Java Programming with JBuilder
by Liang, Y. DanielRent Textbook
New Textbook
We're Sorry
Sold Out
Used Textbook
We're Sorry
Sold Out
eTextbook
We're Sorry
Not Available
How Marketplace Works:
- This item is offered by an independent seller and not shipped from our warehouse
- Item details like edition and cover design may differ from our description; see seller's comments before ordering.
- Sellers much confirm and ship within two business days; otherwise, the order will be cancelled and refunded.
- Marketplace purchases cannot be returned to eCampus.com. Contact the seller directly for inquiries; if no response within two days, contact customer service.
- Additional shipping costs apply to Marketplace purchases. Review shipping costs at checkout.
Summary
Author Biography
Table of Contents
Fundamentals of Programming | p. 1 |
Introduction to Java and JBuilder | p. 3 |
Introduction | p. 4 |
The History of Java | p. 4 |
Characteristics of Java | p. 5 |
World Wide Web, Java, and Beyond | p. 10 |
The Java Language Specification and API | p. 12 |
JDK, Java IDE, and JBuilder | p. 13 |
A Simple Java Program | p. 14 |
Anatomy of the Java Program | |
Getting Started with JBuilder | p. 18 |
Creating a Project | p. 23 |
Creating, Compiling, and Executing a Java Program | p. 27 |
Displaying Text in a Message Dialog Box | p. 35 |
Primitive Data Types and Operations | p. 41 |
Introduction | p. 42 |
Writing Simple Programs | p. 42 |
Identifiers | p. 46 |
Variables | p. 48 |
Assignment Statements and Assignment Expressions | p. 49 |
Constants | p. 50 |
Numeric Data Types and Operations | p. 51 |
Numeric Type Conversions | p. 56 |
Character Data Type and Operations | p. 58 |
Boolean Data Type and Operations | p. 61 |
Operator Precedence and Associativity | p. 64 |
Operand Evaluation Order | p. 65 |
Getting Input from Input Dialogs | p. 66 |
Case Studies | p. 70 |
Programming Style and Documentation | p. 76 |
Programming Errors | p. 80 |
Debugging | p. 83 |
Debugging in JBuilder | p. 84 |
Run Java Applications from the Command Line | p. 91 |
JBuilder's Online Help | p. 92 |
Control Statements | p. 105 |
Introduction | p. 106 |
Selection Statements | p. 106 |
Loop Statements | p. 117 |
Nested Loops | p. 127 |
Which Loop to Use? | p. 129 |
Using the Keywords break and continue | p. 130 |
Case Studies | p. 134 |
Debugging Loops | p. 141 |
Methods | p. 153 |
Introduction | p. 154 |
Creating a Method | p. 154 |
Calling a Method | p. 155 |
Passing Parameters | p. 159 |
Overloading Methods | p. 162 |
The Scope of Local Variables | p. 167 |
Method Abstraction | p. 168 |
The Math Class | p. 168 |
Case Studies (Optional) | p. 175 |
Recursion (Optional) | p. 182 |
Arrays | p. 205 |
Introduction | p. 206 |
Declaring Array Variables and Creating Arrays | p. 206 |
Initializing and Processing Arrays | p. 208 |
Copying Arrays | p. 214 |
Passing Arrays to Methods | p. 217 |
Multidimensional Arrays | p. 226 |
Sorting Arrays | p. 234 |
Searching Arrays | p. 237 |
Object-Oriented Programming | p. 251 |
Objects and Classes | p. 253 |
Introduction | p. 254 |
Defining Classes for Objects | p. 254 |
Constructing Objects Using Constructors | p. 255 |
Accessing Objects via Reference Variables | p. 257 |
Visibility Modifiers, Accessors, and Mutators | p. 264 |
Passing Objects to Methods | p. 270 |
Static Variables, Constants, and Methods | p. 272 |
The Scope of Variables | p. 278 |
The Keyword this | p. 279 |
Array of Objects | p. 280 |
Class Abstraction | p. 283 |
Case Studies | p. 283 |
Inner Classes (Optional) | p. 291 |
Strings | p. 305 |
Introduction | p. 306 |
The String Class | p. 306 |
The Character Class | p. 315 |
The StringBuffer Class | p. 318 |
The StringTokenizer Class | p. 323 |
Command-Line Arguments | p. 326 |
Inheritance and Polymorphism | p. 335 |
Introduction | p. 336 |
Superclasses and Subclasses | p. 336 |
Using the Super Keyword | p. 338 |
Overriding Methods | p. 341 |
The Object Class | p. 343 |
Polymorphism, Dynamic Binding, and Generic Programming | p. 345 |
Casting Objects and the instanceof Operator | p. 346 |
Hiding Fields and Static Methods (Optional) | p. 351 |
The Protected Data and Methods | p. 352 |
The final Classes, Methods, and Variables | p. 354 |
The finalize, clone, and getClass Methods (Optional) | p. 354 |
Initialization Blocks (Optional) | p. 356 |
Abstract Classes and Interfaces | p. 367 |
Introduction | p. 368 |
Abstract Classes | p. 368 |
The Calendar and GregorianCalendar Classes | p. 375 |
Interfaces | p. 376 |
Processing Primitive Data Type Values as Objects | p. 386 |
Object-Oriented Modeling | p. 399 |
Introduction | p. 400 |
Analyzing Relationships Among Objects | p. 401 |
Class Development | p. 404 |
The Rational Class | p. 413 |
Class Design Guidelines | p. 419 |
Modeling Dynamic Behavior Using Sequence Diagrams and Statecharts | p. 421 |
Case Studies (Optional) | p. 423 |
Designing Classes for Linked Lists (Optional) | p. 430 |
Framework-Based Programming Using Java API | p. 438 |
GUI Programming | p. 445 |
Getting Started with GUI Programming | p. 447 |
Introduction | p. 448 |
The Java GUI API | p. 448 |
Frames | p. 452 |
Layout Managers | p. 456 |
Using Panels as Containers | p. 464 |
Drawing Graphics in Panels | p. 466 |
The Color Class | p. 468 |
The Font and FontMetrics Classes | p. 469 |
Drawing Geometric Figures | p. 476 |
Case Studies | p. 485 |
Event-Driven Programming | p. 505 |
Introduction | p. 506 |
Event and Event Source | p. 506 |
Listeners, Registrations, and Handling Events | p. 507 |
Mouse Events | p. 518 |
Keyboard Events | p. 523 |
Creating User Interfaces | p. 531 |
Introduction | p. 532 |
The Component and JComponent Classes | p. 532 |
Buttons | p. 533 |
Labels | p. 538 |
Text Fields | p. 541 |
Text Areas | p. 544 |
Combo Boxes | p. 549 |
Lists | p. 552 |
Check Boxes | p. 556 |
Radio Buttons | p. 561 |
Borders | p. 566 |
JOptionPane Dialogs | p. 573 |
Menus | p. 582 |
Creating Multiple Windows | p. 590 |
Scrollbars | p. 594 |
Scroll Panes | p. 598 |
Tabbed Panes | p. 603 |
Applets | p. 619 |
Introduction | p. 620 |
The Applet Class | p. 620 |
The JApplet Class | p. 622 |
Creating a Java Applet Using the Applet Wizard | p. 623 |
Viewing Applets | p. 625 |
The HTML File and the [left angle bracket]applet[right angle bracket] Tag | p. 628 |
Passing Parameters to Applets | p. 632 |
Enabling Applets to Run as Applications | p. 635 |
Case Studies (Optional) | p. 638 |
Developing Comprehensive Projects | p. 653 |
Exceptions and Assertions | p. 655 |
Introduction | p. 656 |
Exceptions and Exception Types | p. 656 |
Understanding Exception Handling | p. 659 |
Rethrowing Exceptions | p. 667 |
The finally Clause | p. 668 |
When to Use Exceptions | p. 668 |
Creating Custom Exception Classes (Optional) | p. 669 |
Assertions | p. 674 |
Input and Output | p. 685 |
Introduction | p. 686 |
The File Class | p. 686 |
I/O Streams | p. 691 |
File Streams | p. 694 |
Filter Streams | p. 697 |
Data Streams | p. 698 |
Print Streams | p. 702 |
Buffered Streams | p. 704 |
File Dialogs | p. 708 |
Text Input and Output on the Console (Optional) | p. 714 |
Object Streams | p. 716 |
Random Access Files | p. 722 |
Parsing Text Files (Optional) | p. 733 |
Array Streams, Piped Streams, String Streams, Pushback Streams, and Line Number Streams (Optional) | p. 736 |
Java Data Structures | p. 745 |
Introduction | p. 746 |
The Collection Interface and the AbstractCollection Class | p. 747 |
The Set Interface, and the AbstractSet and HashSet Classes | p. 749 |
The LinkedHashSet Class | p. 751 |
The SortedSet Interface and the TreeSet Class | p. 752 |
The Comparator Interface | p. 754 |
The List Interface, the AbstractList Class, and the Abstract-SequentialList Class | p. 757 |
The ArrayList and LinkedList Classes | p. 758 |
The Vector Class | p. 761 |
The Stack Class | p. 764 |
The Map Interface, the AbstractMap class, the SortedMap interface, the HashMap, LinkedHashMap, and TreeMap Classes | p. 766 |
The Collections Class | p. 772 |
The Arrays Class | p. 776 |
Multithreading | p. 783 |
Introduction | p. 784 |
Thread Concepts | p. 784 |
Creating Threads by Extending the Thread Class | p. 785 |
Creating Threads by Implementing the Runnable Interface | p. 788 |
Thread Controls and Communications | p. 791 |
Thread States | p. 792 |
Thread Groups | p. 794 |
Synchronization | p. 794 |
Controlling Animation Using Threads | p. 799 |
Controlling Animation Using the Timer Class | p. 803 |
Multimedia | p. 817 |
Introduction | p. 818 |
Playing Audio | p. 818 |
Running Audio on a Separate Thread | p. 823 |
Displaying Images | p. 825 |
Loading Image and Audio Files in Java Applications | p. 828 |
Displaying a Sequence of Images | p. 833 |
Using MediaTracker | p. 836 |
Appendixes | p. 845 |
Java Keywords | p. 847 |
The ASCII Character Set | p. 851 |
Operator Precedence Chart | p. 855 |
Java Modifiers | p. 859 |
UML Graphical Notations | p. 861 |
Classes and Objects | p. 861 |
The Modifiers public, private, protected, and static | p. 861 |
Class Relationships | p. 862 |
Abstract Classes and Interfaces | p. 863 |
Sequence Diagrams | p. 863 |
Statechart Diagrams | p. 863 |
Special Floating-Point Values | p. 865 |
Glossary | p. 867 |
Index | p. 877 |
Bonus Chapters (on CD-ROM only) | |
Internationalization | |
Introduction | |
The Locale Class | |
Processing Date and Time | |
Formatting Numbers | |
Resource Bundles (Optional) | |
Networking | |
Introduction | |
Client/Server Computing | |
The InetAddress Class | |
Serving Multiple Clients | |
Applet Clients | |
Sending and Receiving Objects | |
The URL class and Viewing Web Pages from Applets | |
Retrieving Files from Web Servers | |
Viewing HTML Files Using JEditorPane | |
Cases Studies (Optional) | |
Java Database Programming | |
Introduction | |
Relational Database Systems | |
SQL | |
JDBC | |
Processing Statements | |
Retrieving Metadata | |
A Universal SQL Client | |
Servlets | |
Introduction | |
HTML and Common Gateway Interface | |
The GET and POST Methods | |
From CGI to Java Servlets | |
Creating and Running Servlets from JBuilder | |
The Servlet API | |
Creating Servlets | |
Database Programming Using Servlets | |
Session Tracking | |
Sending Images from Servlets | |
JavaServer Pages | |
Introduction | |
A Simple JSP Page | |
How Is a JSP Page Processed? | |
Creating and Running JSP from JBuilder | |
JSP Scripting Constructs | |
Predefined Variables | |
JSP Directives | |
Using JavaBeans in JSP | |
Getting and Setting Properties | |
Associating Properties with Input Parameters | |
Forwarding Requests from JavaServer Pages | |
Supplements (in the CD-ROM) | |
Overview of Computer Systems | |
Introduction | |
What is a Computer? | |
Computer Programming | |
Operating Systems | |
Number Systems and Bit Manipulations | |
Introduction | |
Conversions Between Binary Numbers and Decimal Numbers | |
Conversions Between Hexadecimal Numbers and Decimal Numbers | |
Conversions Between Binary Numbers and Hexadecimal Numbers | |
Bit Manipulations | |
Java Coding Style Guidelines | |
Introduction | |
Appropriate Comments and Comment Styles | |
Naming Conventions | |
Proper Indentation and Spacing | |
Block Styles | |
Multiple Alternative if-else Style | |
For-loop Style | |
While-loop Style | |
Do-while Style | |
Try-catch Style | |
Summary and Example | |
Compiling and Running Java from the Command Window | |
Introduction | |
Introduction | |
Opening a Command Window | |
Configuring JDK 1.4 | |
Simple DOS Commands | |
Creating and Editing Programs Using Notepad | |
Compiling and Running Java Programs | |
Frequently Asked Questions | |
Packages | |
Introduction | |
Package-Naming Conventions | |
The classpath Environment Variable | |
Putting Classes into Packages | |
Using Classes/Interfaces from Packages | |
HTML Tutorial | |
Getting Started | |
Structure Tags | |
Text Appearance Tags | |
Physical Tags | |
Paragraph-Style Tags | |
Font, Size, and Color Tags | |
List Tags | |
Table Tags | |
Hyperlink Tags | |
Embedding Graphics | |
More on HTML | |
CardLayout, GridBagLayout, and Null Layout | |
Introduction | |
CardLayout Manager | |
The GridBagLayout Manager | |
Using No Layout Manager | |
Packaging and Deploying Java Projects | |
Introduction | |
Java Archive (JAR) | |
Using the Archive Builder to Package Projects | |
The Manifest File | |
Running Archived Projects | |
Creating Shortcuts for Java Applications on Windows | |
Event Adapters | |
Introduction | |
Extended Event Model | |
Standard Adapters | |
Anonymous Adapters | |
Network Programming Using Datagrams | |
Introduction | |
The DatagramPacket and DatagramSocket Classes | |
Datagram Programming | |
Using the JBuilder Application Wizard | |
Introduction | |
Starting the Application Wizard | |
The Application Class | |
The Frame Class | |
Modifying the Code in the Frame Class | |
Rapid Java Application Development Using JBuilder | |
Introduction | |
JavaBeans | |
JBuilder Visual Designer | |
Using JBuilder Visual Designer | |
Installing and Using Custom Components | |
Table of Contents provided by Ingram. All Rights Reserved. |
Excerpts
An electronic version of this book is available through VitalSource.
This book is viewable on PC, Mac, iPhone, iPad, iPod Touch, and most smartphones.
By purchasing, you will be able to view this book online, as well as download it, for the chosen number of days.
Digital License
You are licensing a digital product for a set duration. Durations are set forth in the product description, with "Lifetime" typically meaning five (5) years of online access and permanent download to a supported device. All licenses are non-transferable.
More details can be found here.
A downloadable version of this book is available through the eCampus Reader or compatible Adobe readers.
Applications are available on iOS, Android, PC, Mac, and Windows Mobile platforms.
Please view the compatibility matrix prior to purchase.