实例介绍
【实例截图】
【核心代码】
Before You Begin xxxix 1 Introduction to Computers, the Internet and Java 1 1.1 Introduction 2 1.2 Hardware and Software 4 1.2.1 Moore’s Law 4 1.2.2 Computer Organization 5 1.3 Data Hierarchy 6 1.4 Machine Languages, Assembly Languages and High-Level Languages 9 1.5 Introduction to Object Technology 10 1.5.1 The Automobile as an Object 10 1.5.2 Methods and Classes 11 1.5.3 Instantiation 11 1.5.4 Reuse 11 1.5.5 Messages and Method Calls 11 1.5.6 Attributes and Instance Variables 11 1.5.7 Encapsulation and Information Hiding 12 1.5.8 Inheritance 12 1.5.9 Interfaces 12 1.5.10 Object-Oriented Analysis and Design (OOAD) 12 1.5.11 The UML (Unified Modeling Language) 13 1.6 Operating Systems 13 1.6.1 Windows—A Proprietary Operating System 13 1.6.2 Linux—An Open-Source Operating System 14 1.6.3 Android 14 1.7 Programming Languages 15 1.8 Java 17 1.9 A Typical Java Development Environment 17 1.10 Test-Driving a Java Application 21 Contents www.allitebooks.com viii Contents 1.11 Internet and World Wide Web 25 1.11.1 The Internet: A Network of Networks 26 1.11.2 The World Wide Web: Making the Internet User-Friendly 26 1.11.3 Web Services and Mashups 26 1.11.4 Ajax 27 1.11.5 The Internet of Things 27 1.12 Software Technologies 28 1.13 Keeping Up-to-Date with Information Technologies 30 2 Introduction to Java Applications; Input/Output and Operators 34 2.1 Introduction 35 2.2 Your First Program in Java: Printing a Line of Text 35 2.3 Modifying Your First Java Program 41 2.4 Displaying Text with printf 43 2.5 Another Application: Adding Integers 45 2.5.1 import Declarations 45 2.5.2 Declaring Class Addition 46 2.5.3 Declaring and Creating a Scanner to Obtain User Input from the Keyboard 46 2.5.4 Declaring Variables to Store Integers 47 2.5.5 Prompting the User for Input 48 2.5.6 Obtaining an int as Input from the User 48 2.5.7 Prompting for and Inputting a Second int 49 2.5.8 Using Variables in a Calculation 49 2.5.9 Displaying the Result of the Calculation 49 2.5.10 Java API Documentation 49 2.6 Memory Concepts 50 2.7 Arithmetic 51 2.8 Decision Making: Equality and Relational Operators 54 2.9 Wrap-Up 58 3 Introduction to Classes, Objects, Methods and Strings 69 3.1 Introduction 70 3.2 Instance Variables, set Methods and get Methods 71 3.2.1 Account Class with an Instance Variable, a set Method and a get Method 71 3.2.2 AccountTest Class That Creates and Uses an Object of Class Account 74 3.2.3 Compiling and Executing an App with Multiple Classes 77 3.2.4 Account UML Class Diagram with an Instance Variable and set and get Methods 77 3.2.5 Additional Notes on Class AccountTest 78 www.allitebooks.com Contents ix 3.2.6 Software Engineering with private Instance Variables and public set and get Methods 79 3.3 Primitive Types vs. Reference Types 80 3.4 Account Class: Initializing Objects with Constructors 81 3.4.1 Declaring an Account Constructor for Custom Object Initialization 81 3.4.2 Class AccountTest: Initializing Account Objects When They’re Created 82 3.5 Account Class with a Balance; Floating-Point Numbers 84 3.5.1 Account Class with a balance Instance Variable of Type double 85 3.5.2 AccountTest Class to Use Class Account 86 3.6 (Optional) GUI and Graphics Case Study: Using Dialog Boxes 90 3.7 Wrap-Up 93 4 Control Statements: Part 1; Assignment, and -- Operators 101 4.1 Introduction 102 4.2 Algorithms 102 4.3 Pseudocode 103 4.4 Control Structures 103 4.5 if Single-Selection Statement 105 4.6 if…else Double-Selection Statement 106 4.7 Student Class: Nested if…else Statements 111 4.8 while Repetition Statement 113 4.9 Formulating Algorithms: Counter-Controlled Repetition 115 4.10 Formulating Algorithms: Sentinel-Controlled Repetition 119 4.11 Formulating Algorithms: Nested Control Statements 126 4.12 Compound Assignment Operators 131 4.13 Increment and x Contents 6 Methods: A Deeper Look 200 6.1 Introduction 201 6.2 Program Modules in Java 201 6.3 static Methods, static Fields and Class Math 203 6.4 Declaring Methods with Multiple Parameters 205 6.5 Notes on Declaring and Using Methods 208 6.6 Method-Call Stack and Stack Frames 209 6.7 Argument Promotion and Casting 210 6.8 Java API Packages 211 6.9 Case Study: Secure Random-Number Generation 213 6.10 Case Study: A Game of Chance; Introducing enum Types 218 6.11 Scope of Declarations 222 6.12 Method Overloading 225 6.13 (Optional) GUI and Graphics Case Study: Colors and Filled Shapes 227 6.14 Wrap-Up 230 7 Arrays and ArrayLists 243 7.1 Introduction 244 7.2 Arrays 245 7.3 Declaring and Creating Arrays 246 7.4 Examples Using Arrays 247 7.4.1 Creating and Initializing an Array 247 7.4.2 Using an Array Initializer 248 7.4.3 Calculating the Values to Store in an Array 249 7.4.4 Summing the Elements of an Array 251 7.4.5 Using Bar Charts to Display Array Data Graphically 251 7.4.6 Using the Elements of an Array as Counters 253 7.4.7 Using Arrays to Analyze Survey Results 254 7.5 Exception Handling: Processing the Incorrect Response 256 7.5.1 The try Statement 256 7.5.2 Executing the catch Block 256 7.5.3 toString Method of the Exception Parameter 257 7.6 Case Study: Card Shuffling and Dealing Simulation 257 7.7 Enhanced for Statement 262 7.8 Passing Arrays to Methods 263 7.9 Pass-By-Value vs. Pass-By-Reference 265 7.10 Case Study: Class GradeBook Using an Array to Store Grades 266 7.11 Multidimensional Arrays 272 7.12 Case Study: Class GradeBook Using a Two-Dimensional Array 275 7.13 Variable-Length Argument Lists 281 7.14 Using Command-Line Arguments 283 7.15 Class Arrays 285 7.16 Introduction to Collections and Class ArrayList 287 7.17 (Optional) GUI and Graphics Case Study: Drawing Arcs 291 7.18 Wrap-Up 294 Contents xi 8 Classes and Objects: A Deeper Look 315 8.1 Introduction 316 8.2 Time Class Case Study 316 8.3 Controlling Access to Members 321 8.4 Referring to the Current Object’s Members with the this Reference 322 8.5 Time Class Case Study: Overloaded Constructors 324 8.6 Default and No-Argument Constructors 330 8.7 Notes on Set and Get Methods 330 8.8 Composition 332 8.9 enum Types 335 8.10 Garbage Collection 337 8.11 static Class Members 338 8.12 static Import 342 8.13 final Instance Variables 343 8.14 Package Access 344 8.15 Using BigDecimal for Precise Monetary Calculations 345 8.16 (Optional) GUI and Graphics Case Study: Using Objects with Graphics 348 8.17 Wrap-Up 352 9 Object-Oriented Programming: Inheritance 360 9.1 Introduction 361 9.2 Superclasses and Subclasses 362 9.3 protected Members 364 9.4 Relationship Between Superclasses and Subclasses 365 9.4.1 Creating and Using a CommissionEmployee Class 365 9.4.2 Creating and Using a BasePlusCommissionEmployee Class 371 9.4.3 Creating a CommissionEmployee–BasePlusCommissionEmployee Inheritance Hierarchy 376 9.4.4 CommissionEmployee–BasePlusCommissionEmployee Inheritance Hierarchy Using protected Instance Variables 379 9.4.5 CommissionEmployee–BasePlusCommissionEmployee Inheritance Hierarchy Using private Instance Variables 382 9.5 Constructors in Subclasses 387 9.6 Class Object 387 9.7 (Optional) GUI and Graphics Case Study: Displaying Text and Images Using Labels 388 9.8 Wrap-Up 391 10 Object- xii Contents 10.5 Case Study: Payroll System Using Polymorphism 404 10.5.1 Abstract Superclass Employee 405 10.5.2 Concrete Subclass SalariedEmployee 407 10.5.3 Concrete Subclass HourlyEmployee 409 10.5.4 Concrete Subclass CommissionEmployee 411 10.5.5 Indirect Concrete Subclass BasePlusCommissionEmployee 413 10.5.6 Polymorphic Processing, Operator instanceof and Downcasting 414 10.6 Allowed Assignments Between Superclass and Subclass Variables 419 10.7 final Methods and Classes 419 10.8 A Deeper Explanation of Issues with Calling Methods from Constructors 420 10.9 Creating and Using Interfaces 421 10.9.1 Developing a Payable Hierarchy 422 10.9.2 Interface Payable 423 10.9.3 Class Invoice 424 10.9.4 Modifying Class Employee to Implement Interface Payable 426 10.9.5 Modifying Class SalariedEmployee for Use in the Payable Hierarchy 428 10.9.6 Using Interface Payable to Process Invoices and Employees Polymorphically 430 10.9.7 Some Common Interfaces of the Java API 431 10.10 Java SE 8 Interface Enhancements 432 10.10.1 default Interface Methods 432 10.10.2 static Interface Methods 433 10.10.3 Functional Interfaces 433 10.11 (Optional) GUI and Graphics Case Study: Drawing with Polymorphism 433 10.12 Wrap-Up 436 11 Exception Handling: A Deeper Look 441 11.1 Introduction 442 11.2 Example: Divide by Zero without Exception Handling 443 11.3 Example: Handling ArithmeticExceptions and InputMismatchExceptions 445 11.4 When to Use Exception Handling 451 11.5 Java Exception Hierarchy 451 11.6 finally Block 454 11.7 Stack Unwinding and Obtaining Information from an Exception Object 459 11.8 Chained Exceptions 461 11.9 Declaring New Exception Types 464 11.10 Preconditions and Postconditions 465 11.11 Assertions 465 11.12 try-with-Resources: Automatic Resource Deallocation 467 11.13 Wrap-Up 467 12 GUI Components: Part 1 473 12.1 Introduction 474 Contents xiii 12.2 Java’s Nimbus Look-and-Feel 475 12.3 Simple GUI-Based Input/Output with JOptionPane 476 12.4 Overview of Swing Components 479 12.5 Displaying Text and Images in a Window 481 12.6 Text Fields and an Introduction to Event Handling with Nested Classes 485 12.7 Common GUI Event Types and Listener Interfaces 491 12.8 How Event Handling Works 493 12.9 JButton 495 12.10 Buttons That Maintain State 498 12.10.1 JCheckBox 499 12.10.2 JRadioButton 501 12.11 JComboBox; Using an Anonymous Inner Class for Event Handling 504 12.12 JList 508 12.13 Multiple-Selection Lists 511 12.14 Mouse Event Handling 513 12.15 Adapter Classes 518 12.16 JPanel Subclass for Drawing with the Mouse 522 12.17 Key Event Handling 525 12.18 Introduction to Layout Managers 528 12.18.1 FlowLayout 530 12.18.2 BorderLayout 532 12.18.3 GridLayout 536 12.19 Using Panels to Manage More Complex Layouts 538 12.20 JTextArea 539 12.21 Wrap-Up 542 13 Graphics and Java 2D 555 13.1 Introduction 556 13.2 Graphics Contexts and Graphics Objects 558 13.3 Color Control 559 13.4 Manipulating Fonts 566 13.5 Drawing Lines, Rectangles and Ovals 571 13.6 Drawing Arcs 575 13.7 Drawing Polygons and Polylines 578 13.8 Java 2D API 581 13.9 Wrap-Up 588 14 Strings, Characters and Regular Expressions 596 14.1 Introduction 597 14.2 Fundamentals of Characters and Strings 597 14.3 Class String 598 14.3.1 String Constructors 598 14.3.2 String Methods length, charAt and getChars 599 14.3.3 Comparing Strings 600 xiv Contents 14.3.4 Locating Characters and Substrings in Strings 605 14.3.5 Extracting Substrings from Strings 607 14.3.6 Concatenating Strings 608 14.3.7 Miscellaneous String Methods 608 14.3.8 String Method valueOf 610 14.4 Class StringBuilder 611 14.4.1 StringBuilder Constructors 612 14.4.2 StringBuilder Methods length, capacity, setLength and ensureCapacity 612 14.4.3 StringBuilder Methods charAt, setCharAt, getChars and reverse 614 14.4.4 StringBuilder append Methods 615 14.4.5 StringBuilder Insertion and Deletion Methods 617 14.5 Class Character 618 14.6 Tokenizing Strings 623 14.7 Regular Expressions, Class Pattern and Class Matcher 624 14.8 Wrap-Up 633 15 Files, Streams and Object Serialization 644 15.1 Introduction 645 15.2 Files and Streams 645 15.3 Using NIO Classes and Interfaces to Get File and Directory Information 647 15.4 Sequential-Access Text Files 651 15.4.1 Creating a Sequential-Access Text File 651 15.4.2 Reading Data from a Sequential-Access Text File 655 15.4.3 Case Study: A Credit-Inquiry Program 657 15.4.4 Updating Sequential-Access Files 661 15.5 Object Serialization 662 15.5.1 Creating a Sequential-Access File Using Object Serialization 663 15.5.2 Reading and Deserializing Data from a Sequential-Access File 668 15.6 Opening Files with JFileChooser 670 15.7 (Optional) Additional java.io Classes 673 15.7.1 Interfaces and Classes for Byte-Based Input and Output 673 15.7.2 Interfaces and Classes for Character-Based Input and Output 675 15.8 Wrap-Up 676 16 Generic Collections 684 16.1 Introduction 685 16.2 Collections Overview 685 16.3 Type-Wrapper Classes 687 16.4 Autoboxing and Auto-Unboxing 687 16.5 Interface Collection and Class Collections 687 16.6 Lists 688 16.6.1 ArrayList and Iterator 689 16.6.2 LinkedList 691 Contents xv 16.7 Collections Methods 696 16.7.1 Method sort 697 16.7.2 Method shuffle 700 16.7.3 Methods reverse, fill, copy, max and min 702 16.7.4 Method binarySearch 704 16.7.5 Methods addAll, frequency and disjoint 706 16.8 Stack Class of Package java.util 708 16.9 Class PriorityQueue and Interface Queue 710 16.10 Sets 711 16.11 Maps 714 16.12 Properties Class 718 16.13 Synchronized Collections 721 16.14 Unmodifiable Collections 721 16.15 Abstract Implementations 722 16.16 Wrap-Up 722 17 Java SE 8 Lambdas and Streams 729 17.1 Introduction 730 17.2 Functional Programming Technologies Overview 731 17.2.1 Functional Interfaces 732 17.2.2 Lambda Expressions 733 17.2.3 Streams 734 17.3 IntStream Operations 736 17.3.1 Creating an IntStream and Displaying Its Values with the forEach Terminal Operation 738 17.3.2 Terminal Operations count, min, max, sum and average 739 17.3.3 Terminal Operation reduce 739 17.3.4 Intermediate Operations: Filtering and Sorting IntStream Values 741 17.3.5 Intermediate Operation: Mapping 742 17.3.6 Creating Streams of ints with IntStream Methods range and rangeClosed 743 17.4 Stream<Integer> Manipulations 743 17.4.1 Creating a Stream<Integer> 744 17.4.2 Sorting a Stream and Collecting the Results 745 17.4.3 Filtering a Stream and Storing the Results for Later Use 745 17.4.4 Filtering and Sorting a Stream and Collecting the Results 745 17.4.5 Sorting Previously Collected Results 745 17.5 Stream<String> Manipulations 746 17.5.1 Mapping Strings to Uppercase Using a Method Reference 747 17.5.2 Filtering Strings Then Sorting Them in Case-Insensitive Ascending Order 748 17.5.3 Filtering Strings Then Sorting Them in Case-Insensitive Descending Order 748 17.6 Stream<Employee> Manipulations 748 17.6.1 Creating and Displaying a List<Employee> 750 xvi Contents 17.6.2 Filtering Employees with Salaries in a Specified Range 751 17.6.3 Sorting Employees By Multiple Fields 752 17.6.4 Mapping Employees to Unique Last Name Strings 754 17.6.5 Grouping Employees By Department 755 17.6.6 Counting the Number of Employees in Each Department 756 17.6.7 Summing and Averaging Employee Salaries 756 17.7 Creating a Stream<String> from a File 758 17.8 Generating Streams of Random Values 761 17.9 Lambda Event Handlers 763 17.10 Additional Notes on Java SE 8 Interfaces 763 17.11 Java SE 8 and Functional Programming Resources 764 17.12 Wrap-Up 764 18 Recursion 776 18.1 Introduction 777 18.2 Recursion Concepts 778 18.3 Example Using Recursion: Factorials 779 18.4 Reimplementing Class FactorialCalculator Using Class BigInteger 781 18.5 Example Using Recursion: Fibonacci Series 783 18.6 Recursion and the Method-Call Stack 786 18.7 Recursion vs. Iteration 787 18.8 Towers of Hanoi 789 18.9 Fractals 791 18.9.1 Koch Curve Fractal 791 18.9.2 (Optional) Case Study: Lo Feather Fractal 792 18.10 Recursive Backtracking 801 18.11 Wrap-Up 802 19 Searching, Sorting and Big O 810 19.1 Introduction 811 19.2 Linear Search 812 19.3 Big O Notation 814 19.3.1 O(1) Algorithms 814 19.3.2 O(n) Algorithms 815 19.3.3 O(n2) Algorithms 815 19.3.4 Big O of the Linear Search 816 19.4 Binary Search 816 19.4.1 Binary Search Implementation 817 19.4.2 Efficiency of the Binary Search 820 19.5 Sorting Algorithms 820 19.6 Selection Sort 821 19.6.1 Selection Sort Implementation 821 19.6.2 Efficiency of the Selection Sort 824 19.7 Insertion Sort 824 Contents xvii 19.7.1 Insertion Sort Implementation 825 19.7.2 Efficiency of the Insertion Sort 827 19.8 Merge Sort 827 19.8.1 Merge Sort Implementation 828 19.8.2 Efficiency of the Merge Sort 832 19.9 Big O Summary for This Chapter’s Searching and Sorting Algorithms 833 19.10 Wrap-Up 834 20 Generic Classes and Methods 839 20.1 Introduction 840 20.2 Motivation for Generic Methods 840 20.3 Generic Methods: Implementation and Compile-Time Translation 842 20.4 Additional Compile-Time Translation Issues: Methods That Use a Type Parameter as the Return Type 845 20.5 Overloading Generic Methods 848 20.6 Generic Classes 849 20.7 Raw Types 856 20.8 Wildcards in Methods That Accept Type Parameters 860 20.9 Wrap-Up 864 21 Custom Generic Data Structures 869 21.1 Introduction 870 21.2 Self-Referential Classes 871 21.3 Dynamic Memory Allocation 871 21.4 Linked Lists 872 21.4.1 Singly Linked Lists 872 21.4.2 Implementing a Generic List Class 873 21.4.3 Generic Classes ListNode and List 878 21.4.4 Class ListTest 878 21.4.5 List Method insertAtFront 878 21.4.6 List Method insertAtBack 879 21.4.7 List Method removeFromFront 880 21.4.8 List Method removeFromBack 881 21.4.9 List Method print 882 21.4.10 Creating Your Own Packages 882 21.5 Stacks 886 21.6 Queues 890 21.7 Trees 893 21.8 Wrap-Up 900 22 GUI Components: Part 2 911 22.1 Introduction 912 22.2 JSlider 912 xviii Contents 22.3 Understanding Windows in Java 916 22.4 Using Menus with Frames 917 22.5 JPopupMenu 925 22.6 Pluggable Look-and-Feel 928 22.7 JDesktopPane and JInternalFrame 933 22.8 JTabbedPane 936 22.9 BoxLayout Layout Manager 938 22.10 GridBagLayout Layout Manager 942 22.11 Wrap-Up 952 23 Concurrency 957 23.1 Introduction 958 23.2 Thread States and Life Cycle 960 23.2.1 New and Runnable States 961 23.2.2 Waiting State 961 23.2.3 Timed Waiting State 961 23.2.4 Blocked State 961 23.2.5 Terminated State 961 23.2.6 Operating-System View of the Runnable State 962 23.2.7 Thread Priorities and Thread Scheduling 962 23.2.8 Indefinite Postponement and Deadlock 963 23.3 Creating and Executing Threads with the Executor Framework 963 23.4 Thread Synchronization 967 23.4.1 Immutable Data 968 23.4.2 Monitors 968 23.4.3 Unsynchronized Mutable Data Sharing 969 23.4.4 Synchronized Mutable Data Sharing—Making Operations Atomic 974 23.5 Producer/Consumer Relationship without Synchronization 976 23.6 Producer/Consumer Relationship: ArrayBlockingQueue 984 23.7 (Advanced) Producer/Consumer Relationship with synchronized, wait, notify and notifyAll 987 23.8 (Advanced) Producer/Consumer Relationship: Bounded Buffers 994 23.9 (Advanced) Producer/Consumer Relationship: The Lock and Condition Interfaces 1002 23.10 Concurrent Collections 1009 23.11 Multithreading with GUI: SwingWorker 1011 23.11.1 Performing Computations in a Worker Thread: Fibonacci Numbers 1012 23.11.2 Processing Intermediate Results: Sieve of Eratosthenes 1018 23.12 sort and parallelSort Timings with the Java SE 8 Date/Time API 1025 23.13 Java SE 8: Sequential vs. Parallel Streams 1027 23.14 (Advanced) Interfaces Callable and Future 1030 23.15 (Advanced) Fork/Join Framework 1034 23.16 Wrap-Up 1034 www.allitebooks.com Contents xix 24 Accessing Databases with JDBC 1045 24.1 Introduction 1046 24.2 Relational Databases 1047 24.3 A books Database 1048 24.4 SQL 1052 24.4.1 Basic SELECT Query 1052 24.4.2 WHERE Clause 1053 24.4.3 ORDER BY Clause 1055 24.4.4 Merging Data from Multiple Tables: INNER JOIN 1056 24.4.5 INSERT Statement 1058 24.4.6 UPDATE Statement 1059 24.4.7 DELETE Statement 1060 24.5 Setting up a Java DB Database 1060 24.5.1 Creating the Chapter’s Databases on Windows 1061 24.5.2 Creating the Chapter’s Databases on Mac OS X 1062 24.5.3 Creating the Chapter’s Databases on Linux 1063 24.6 Manipulating Databases with JDBC 1063 24.6.1 Connecting to and Querying a Database 1063 24.6.2 Querying the books Database 1067 24.7 RowSet Interface 1080 24.8 PreparedStatements 1082 24.9 Stored Procedures 1098 24.10 Transaction Processing 1098 24.11 Wrap-Up 1099 25 JavaFX GUI: Part 1 1107 25.1 Introduction 1108 25.2 JavaFX Scene Builder and the NetBeans IDE 1109 25.3 JavaFX App Window Structure 1110 25.4 Welcome App—Displaying Text and an Image 1111 25.4.1 Creating the App’s Project 1111 25.4.2 NetBeans Projects Window—Viewing the Project Contents 1113 25.4.3 Adding an Image to the Project 1114 25.4.4 Opening JavaFX Scene Builder from NetBeans 1114 25.4.5 Changing to a VBox Layout Container 1115 25.4.6 Configuring the VBox Layout Container 1116 25.4.7 Adding and Configuring a Label 1116 25.4.8 Adding and Configuring an ImageView 1116 25.4.9 Running the Welcome App 1117 25.5 Tip Calculator App—Introduction to Event Handling 1118 25.5.1 Test-Driving the Tip Calculator App 1119 25.5.2 Technologies Overview 1119 25.5.3 Building the App’s GUI 1122 25.5.4 TipCalculator Class 1126 25.5.5 TipCalculatorController Class 1128 xx Contents 25.6 Features Covered in the Online JavaFX Chapters 1133 25.7 Wrap-Up 1134 Chapters on the Web 1141 A Operator Precedence Chart 1143 B ASCII Character Set 1145 C Keywords and Reserved Words 1146 D Primitive Types 1147 E Using the Debugger 1148 E.1 Introduction 1149 E.2 Breakpoints and the run, stop, cont and print Commands 1149 E.3 The print and set Commands 1153 E.4 Controlling Execution Using the step, step up and next Commands 1155 E.5 The watch Command 1158 E.6 The clear Command 1160 E.7 Wrap-Up 1162 Appendices on the Web 1165 Index 1167
标签: java
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明
网友评论
我要评论