{"id":280,"date":"2009-11-10T18:14:42","date_gmt":"2009-11-10T10:14:42","guid":{"rendered":"http:\/\/115.29.108.60\/?p=280"},"modified":"2011-09-26T21:45:08","modified_gmt":"2011-09-26T13:45:08","slug":"java%e5%a4%8d%e4%b9%a0%e8%a6%81%e7%82%b9","status":"publish","type":"post","link":"http:\/\/115.29.108.60\/?p=280","title":{"rendered":"Java\u590d\u4e60\u8981\u70b9"},"content":{"rendered":"<p>Java\u8bfe\u7a0b\u8003\u8bd5\u7684\u590d\u4e60\u8981\u70b9\uff0c\u89c9\u5f97\u8001\u5e08\u7684\u547d\u9898\u70b9\u6293\u4f4f\u4e86Java\u8fd9\u95e8\u8bed\u8a00\u7684\u57fa\u7840\uff0c\u633a\u597d\u7684\u3002\u5206\u4eab\u4e0b\u3002\u7b54\u6848\u662f\u67e5\u7684\u8bfe\u7a0bPPT\u3002<\/p>\n<p>Java\u590d\u4e60\u8981\u70b9<\/p>\n<p>\u8bed\u8a00\uff1aEnglish<\/p>\n<p>\u9898\u578b\uff1a<\/p>\n<p>1. \u5224\u65ad\uff081\u2019 \u00d710\uff09<\/p>\n<p>2. \u9009\u62e9\uff083\u2019 \u00d713\uff09\u6ce8\uff1a\u4e3a\u591a\u9009\u9898\uff0c\u5c11\u9009\u6216\u9519\u9009\u5747\u4e0d\u7ed9\u5206<\/p>\n<p>3. \u7b80\u7b54\uff084\u9053\u517120\u5206\uff09<\/p>\n<p>4. \u7f16\u7a0b\uff08\u517110\u5206\uff09<\/p>\n<p>5. \u8bbe\u8ba1\uff08\u517121\u5206\uff09<\/p>\n<p>\u5224\u65ad\u9898\uff1a<\/p>\n<p>1. \u4e00\u4e2a\u7279\u5b9a\u7c7b\u578b\u7684\u6240\u6709\u5bf9\u8c61\u662f\u4e0d\u662f\u53ef\u4ee5\u63a5\u6536\u540c\u6837\u7684\u6d88\u606f\uff1f\uff08\u662f\uff09<\/p>\n<p>All objects of a particular type can receive the same messages.<\/p>\n<p>2. Java\u6709\u6ca1\u6709sizeof()\u51fd\u6570\uff1f\uff08\u6ca1\u6709\uff09<\/p>\n<p>Java has no \u201csizeof\u201d<\/p>\n<p>In C and C++, the sizeof( ) operator satisfies a specific need: it tells you the number of bytes allocated for data items.<\/p>\n<p>Java does not need a sizeof( ) operator for this purpose, because all the data types are the same size on all machines.<\/p>\n<p>3. \u9759\u6001\u65b9\u6cd5\u9700\u4e0d\u9700\u8981\u521b\u5efa\u8be5\u7c7b\u7684\u5bf9\u8c61\u624d\u80fd\u8bbf\u95ee\uff1f\uff08\u4e0d\u9700\u8981\uff09<\/p>\n<p>If you want to have a piece of data or a method that isn\u2019t associated with any particular object of this class, you can declared them as static. Then you can access the data or call the method even if no objects are created.<\/p>\n<p>4. \u5b50\u7c7b\u53ef\u4e0d\u53ef\u4ee5\u8bbf\u95ee\u7236\u7c7b\u7684protected\u65b9\u6cd5\uff1f\uff08\u53ef\u4ee5\uff09<\/p>\n<p>To inherit from an existing class, you say that your new class extends an existing class, like this:<\/p>\n<p>class Foo extends Bar {<\/p>\n<p>\u2026\u2026<\/p>\n<p>}<\/p>\n<p>Then class Foo can access public elements and protected elements in class Bar.<\/p>\n<p>5. \u540c\u65f6\u4f7f\u7528\u7ec4\u5408\u548c\u7ee7\u627f\u662f\u5f88\u5e38\u89c1\u7684\u65b9\u6cd5\uff1f\uff08\u662f\uff09<\/p>\n<p>It is very common to use composition and inheritance together.<\/p>\n<p>6. \u53c2\u6570\u524d\u52a0final\u610f\u5473\u7740\u4ec0\u4e48\uff1f<\/p>\n<p>With a primitive, final makes the value a constant, but with an object reference, final makes the reference a constant. Once the reference is initialized to an object, it can never be changed to point to another object. However, the object itself can be modified.<\/p>\n<p>Java allows you to make arguments final by declaring them as such in the argument list. This means that inside the method you cannot change what the argument reference points to.<\/p>\n<p>7. \u53ef\u4e0d\u53ef\u4ee5\u521b\u5efa\u4e00\u4e2a\u5904\u7406\u5668\u6355\u83b7\u6240\u6709\u7684\u5f02\u5e38\uff1f\uff08\u53ef\u4ee5\uff09<\/p>\n<p>8. \u6570\u7ec4\u5bf9\u8c61\u4e00\u65e6\u521b\u5efa\u4ee5\u540e\uff0c\u5176\u5927\u5c0f\u80fd\u4e0d\u80fd\u6539\u53d8\uff1f\uff08\u5bf9\uff09<\/p>\n<p>9. \u79c1\u6709\u7684\u65b9\u6cd5\u662f\u4e0d\u662f\u4e00\u5b9a\u662ffinal\u7684\uff1f\uff08\u662f\uff09<\/p>\n<p>Any private methods in a class are implicitly final.<\/p>\n<p>10. \u8f6c\u578b\u662f\u4e0d\u662f\u5b89\u5168\u7684\uff1f\uff08\u5411\u4e0a\u8f6c\u578b\u5b89\u5168\uff0c\u5411\u4e0b\u5219\u4e0d\u5b89\u5168\uff09<\/p>\n<p>Upcasting is always safe because you\u2019re going from a more specific type to a more general type.<\/p>\n<p>11. \u5728\u4e00\u4e2a\u9759\u6001\u65b9\u6cd5\u91cc\u80fd\u4e0d\u80fd\u4f7f\u7528\u975e\u9759\u6001\u53d8\u91cf\uff1f\uff08\u4e0d\u80fd\uff09<\/p>\n<p>Static method can only access static data.<\/p>\n<p>12. \u5783\u573e\u56de\u6536\u5668\u53ea\u8d1f\u8d23\u6536\u96c6\u54ea\u90e8\u5206\uff1f\uff08\u4f7f\u7528new\u65b9\u6cd5\u5206\u914d\u7684\u5185\u5b58\uff09<\/p>\n<p>The GC only knows how to release memory allocated with new. A method called finalize( ) is used to handle memory which is allocated without using new.<\/p>\n<p>When the GC is ready to release the storage used for your object, it will first call finalize( ), and only on the next garbage-collection pass will it reclaim the object\u2019s memory.<\/p>\n<p>13. \u8986\u76d6\u65b9\u6cd5\u662f\u4e0d\u662f\u5fc5\u987b\u4fdd\u8bc1\u53c2\u6570\u76f8\u540c\uff1f\uff08\u662f\uff09<\/p>\n<p>14. \u63a5\u53e3\u662f\u4e0d\u662f\u7c7b\uff1f\uff08\u662f\uff09<\/p>\n<p>15. \u4e09\u5143\u64cd\u4f5c\u7b26\u7684\u4f7f\u7528\uff08A?B:C\uff09<\/p>\n<p>boolean-exp ? value0 : value1<\/p>\n<p>If boolean-exp evaluates to true, value0 is evaluated, and its result becomes the value produced by the operator.<\/p>\n<p>If boolean-exp is false, value1 is evaluated and its result becomes the value produced by the operator.<\/p>\n<p>16. final\u4f7f\u5f15\u7528\u603b\u6307\u5411\u540c\u4e00\u5bf9\u8c61\u3002<\/p>\n<p>17. A computer has a CPU.<\/p>\n<p>\u9009\u62e9\u9898\uff1a<\/p>\n<p>1. Java\u4e2d\u5b58\u50a8\u533a\u5305\u62ec\u54ea\u4e9b\uff1f\uff08\u5bc4\u5b58\u5668\u3001\u6808\u3001\u5806\u3001\u9759\u6001\u5b58\u50a8\u5668\u3001\u5e38\u91cf\u5b58\u50a8\u5668\u3001\u975e\u968f\u673a\u5b58\u53d6\u5b58\u50a8\u5668\uff09<\/p>\n<p>Registers. The stack. The heap. Static storage. Constant storage. Non-RAM storage.<\/p>\n<p>2. Java\u4e2d\u56de\u8f66\u600e\u4e48\u8868\u793a\uff1f\uff08\\r\uff09\u6362\u884c\u600e\u4e48\u8868\u793a\uff1f\uff08\\n\uff09<\/p>\n<p>3. for\u5faa\u73af\u3001do\/while\u5faa\u73af\u7684\u7279\u70b9\uff1f<\/p>\n<p>4. \u7ec4\u5408\u548c\u7ee7\u627f\u5206\u522b\u5728\u54ea\u79cd\u60c5\u51b5\u4e0b\u4f7f\u7528\uff1f\uff08\u590d\u7528\u529f\u80fd\u65f6\u7528\u7ec4\u5408\uff0c\u590d\u7528\u63a5\u53e3\u65f6\u7528\u7ee7\u627f\uff09<\/p>\n<p>Composition is generally used when you want the features of an existing class inside your new class, but not its interface.<\/p>\n<p>When you inherit, you take an existing class and make a special version of it. In general, this means that you\u2019re taking a general-purpose class and specializing it for a particular need.<\/p>\n<p>A general guideline is \u201cUse inheritance to express differences in behavior, and fields to express variations in state.\u201d<\/p>\n<p>5. \u5b50\u7c7b\u5bf9\u8c61\u80fd\u4e0d\u80fd\u4f5c\u4e3a\u4e00\u4e2a\u57fa\u7c7b\u5bf9\u8c61\u6765\u770b\u5f85\uff1f\uff08\u80fd\uff09\u5b50\u7c7b\u80fd\u8bbf\u95ee\u57fa\u7c7b\u7684\u6240\u6709\u65b9\u6cd5\u5417\uff1f\uff08private\u65b9\u6cd5\u4e0d\u80fd\uff09<\/p>\n<p>Taking an object reference and treating it as a reference to its base type is called upcasting because of the way inheritance trees are drawn with the base class at the top.<\/p>\n<p>6. StringBuffer\u7c7b\u7684\u5bb9\u91cf\u548c\u957f\u5ea6\u7684\u5173\u7cfb\uff1f<\/p>\n<p>StringBuffer\u7c7b\u662f\u7528\u6765\u751f\u6210\u5b57\u7b26\u4e32\u7f13\u51b2\u533a\uff0c\u8fd9\u79cd\u5b57\u7b26\u4e32\u79f0\u4e3a\u53ef\u53d8\u5b57\u7b26\u4e32\u3002StringBuffer\u5bf9\u8c61\u7684\u9ed8\u8ba4\u5bb9\u91cf\u662f16\u4e2a\u5b57\u7b26\u3002<\/p>\n<p>StringBuffer\u65e0\u6cd5\u50cfString\u5bf9\u8c61\u4e00\u6837\u76f4\u63a5\u5c06\u5b57\u7b26\u4e32\u6307\u5b9a\u7ed9StringBuffer\u5bf9\u8c61\uff0c\u4f8b\u5982StringBuffer myString3=&#8221;this is worong&#8221;\u3002\u5fc5\u987b\u4f7f\u7528new\u751f\u6210StringBuffer\u5bf9\u8c61\u3002<\/p>\n<p>StringBuffer\u5bf9\u8c61\u6709\u5bb9\u91cf\u548c\u957f\u5ea6\u4e4b\u5206\uff0c\u5bb9\u91cf\u662f\u4e0d\u53d8\u7684\uff0c\u957f\u5ea6\u662f\u53ef\u53d8\u7684\u3002\u957f\u5ea6\u5c0f\u4e8e\u7b49\u4e8e\u5bb9\u91cf\uff0c\u8868\u793a\u5b9e\u9645\u5b58\u50a8\u7684\u5b57\u7b26\u6570\u76ee\u3002<\/p>\n<p>int capacity()\uff1a\u8fd4\u56deStringBuffer\u5bf9\u8c61\u7684\u5bb9\u91cf\u3002<\/p>\n<p>int length()\uff1a\u8fd4\u56deStringBuffer\u5bf9\u8c61\u7684\u957f\u5ea6\u3002<\/p>\n<p>\u5f53\u5b58\u50a8\u7684\u5b57\u7b26\u4e32\u957f\u5ea6\u8d85\u8fc7\u5176\u5bb9\u91cf\uff0c\u5bb9\u91cf\u4f1a\u6539\u4e3a\u539f\u6765\u5bb9\u91cf\u7684\u4e24\u500d\u52a0\u4e0a2\u3002\u9884\u5148\u6307\u5b9a\u8db3\u591f\u7684\u5bb9\u91cf\u6548\u7387\u8f83\u9ad8\u3002<\/p>\n<p>7. \u533a\u522b\u57fa\u4e8e\u5b57\u8282\u7684\u548cUnicode\u517c\u5bb9\u7684\u3001\u57fa\u4e8e\u5b57\u7b26\u7684\u4e0d\u540c\u7684I\/O\u7c7b\u3002<\/p>\n<p>Reader and Writer classes provide Unicode-compliant, character-based I\/O.<\/p>\n<p>8. \u7cfb\u7edf\u63d0\u4f9b\u7684\u6807\u51c6I\/O\u7c7b\uff1aSystem.in\uff0cSystem.out\uff0cSystem.err \u5206\u522b\u662f\u4ec0\u4e48\u7c7b\u7684\u5bf9\u8c61\uff1f\uff08System.in\u662fInputStream\uff0c\u540e\u4e24\u8005\u662fPrintStream\uff09<\/p>\n<p>9. \u5173\u952e\u5b57\uff1a\u54ea\u4e9b\u662f\u57fa\u672c\u7c7b\u578b\uff1f\uff08\u9996\u5b57\u6bcd\u5c0f\u5199\u7684\uff09\u54ea\u4e9b\u662f\u5f15\u7528\u7c7b\u578b\uff1f\uff08\u9996\u5b57\u6bcd\u5927\u5199\u7684\uff09<\/p>\n<p>Primitive type Size Minimum Maximum Wrapper type<\/p>\n<p>boolean \u2014 \u2014 \u2014 Boolean<\/p>\n<p>char 16-bit Unicode 0 Unicode 216- 1 Character<\/p>\n<p>byte 8-bit -128 +127 Byte<\/p>\n<p>short 16-bit -215 +215\u20141 Short<\/p>\n<p>int 32-bit -231 +231\u20141 Integer<\/p>\n<p>long 64-bit -263 +263\u20141 Long<\/p>\n<p>float 32-bit IEEE754 IEEE754 Float<\/p>\n<p>double 64-bit IEEE754 IEEE754 Double<\/p>\n<p>void \u2014 \u2014 \u2014 Void<\/p>\n<p>10. new\u4e00\u4e2a\u5bf9\u8c61\u603b\u662f\u5728\u4ec0\u4e48\u533a\u57df\u521b\u5efa\uff1f\uff08\u5806heap\uff09<\/p>\n<p>The primitive variable holds the value, and it\u2019s placed on the stack, so it\u2019s much more efficient.<\/p>\n<p>All numeric types are signed, so don\u2019t look for unsigned types.<\/p>\n<p>The \u201cwrapper\u201d classes for the primitive data types allow you to make a nonprimitive object on the heap to represent that primitive type.<\/p>\n<p>11. \u5224\u65ad\u6807\u8bc6\u7b26\u662f\u5426\u5408\u6cd5\u3002<\/p>\n<p>12. \u591a\u6001\u7684\u5173\u952e\u56e0\u7d20\u662f\u4ec0\u4e48\uff1f\u52a8\u6001\u7ed1\u5b9a\u3002<\/p>\n<p>Connecting a method call to a method body is called binding.<\/p>\n<p>For late binding (dynamic binding, or run-time binding), the compiler still doesn\u2019t know the object type, but the method-call mechanism finds out and calls the correct method body.<\/p>\n<p>13. \u5305\u7684\u6982\u5ff5\u5bf9\u5e94\u64cd\u4f5c\u7cfb\u7edf\u4e2d\u7684\u6587\u4ef6\u5939\u3002<\/p>\n<p>Package name must appear as the first noncomment in the file, and the package name must be the same as the directory (fold) name in which the file is located.<\/p>\n<p>14. \u4e3a\u4ec0\u4e48\u8981\u628a\u7c7b\u7684\u65b9\u6cd5\u5b9a\u4e49\u4e3afinal\uff1f<\/p>\n<p>There are two reasons for final methods.<\/p>\n<p>a) The first is to put a \u201clock\u201d on the method to prevent any inheriting class from changing its meaning.<\/p>\n<p>b) The second reason for final methods is efficiency. If you make a method final, you are allowing the compiler to turn any calls to that method into inline calls.<\/p>\n<p>15. \u8f6c\u578b\uff08\u6709\u4e9b\u662f\u4e0d\u5141\u8bb8\u7684\uff0c\u957f\u8f6c\u4e3a\u77ed\u53ef\u80fd\u4f1a\u9020\u6210\u6570\u636e\u4e22\u5931\uff09<\/p>\n<p>Java allows you to cast any primitive type to any other primitive type, except for boolean, which doesn\u2019t allow any casting at all.<\/p>\n<p>In Java, casting is safe, with the exception that when you perform a so-called narrowing conversion (that is, when you go from a data type that can hold more information to one that doesn\u2019t hold as much), you run the risk of losing information.<\/p>\n<p>16. \u63a5\u53e3\u91cc\u7684\u65b9\u6cd5\u5fc5\u987b\u90fd\u662fpublic<\/p>\n<p>\u63a5\u53e3\u91cc\u5982\u679c\u5b9a\u4e49\u4e86\u5b57\u6bb5\uff0c\u4e0d\u5199\u4fee\u9970\u7b26\u5219\u9ed8\u8ba4\u4e3apublic static final<\/p>\n<p>An interface contains method without body. It can also contain fields, but these are automatically static , final and public.<\/p>\n<p>You can choose to explicitly declare the method declarations in an interface as public, but they are public even if you don\u2019t say it.<\/p>\n<p>\u7b80\u7b54\u9898\uff1a<\/p>\n<p>1. \u4ec0\u4e48\u662f\u591a\u6001\uff1f\u4ec0\u4e48\u662f\u52a8\u6001\u7ed1\u5b9a\uff1f<\/p>\n<p>Connecting a method call to a method body is called binding.<\/p>\n<p>For late binding (dynamic binding, or run-time binding), the compiler still doesn\u2019t know the object type, but the method-call mechanism finds out and calls the correct method body.<\/p>\n<p>2. \u539f\u5b50\u64cd\u4f5c\u4e3a\u4ec0\u4e48\u4e0d\u9700\u8981\u88ab\u540c\u6b65\uff1f\u539f\u5b50\u64cd\u4f5c\u662f\u4e0d\u53ef\u5206\u7684\uff0c\u4e0d\u80fd\u88ab\u7ebf\u7a0b\u8c03\u5ea6\u5668\u4e2d\u65ad\u3002<\/p>\n<p>3. class\/method\/\u6210\u5458\u53d8\u91cf\u7b49\u524d\u9762\u52a0\u4e2afinal\u6709\u4ec0\u4e48\u542b\u4e49\uff1f<\/p>\n<p>With a primitive, final makes the value a constant, but with an object reference, final makes the reference a constant. Once the reference is initialized to an object, it can never be changed to point to another object. However, the object itself can be modified.<\/p>\n<p>Java allows you to make arguments final by declaring them as such in the argument list. This means that inside the method you cannot change what the argument reference points to.<\/p>\n<p>There are two reasons for final methods.<\/p>\n<p>a) The first is to put a \u201clock\u201d on the method to prevent any inheriting class from changing its meaning.<\/p>\n<p>b) The second reason for final methods is efficiency. If you make a method final, you are allowing the compiler to turn any calls to that method into inline calls.<\/p>\n<p>When you say that an entire class is final (by preceding its definition with the final keyword), you state that you don\u2019t want to inherit from this class or allow anyone else to do so.<\/p>\n<p>4. \u4ec0\u4e48\u662f\u5e8f\u5217\u5316\uff1f\u5e8f\u5217\u5316\u4e00\u4e2a\u5bf9\u8c61\u610f\u5473\u7740\u4ec0\u4e48\uff1f<\/p>\n<p>Java\u2019s object serialization allows you to take any object that implements the Serializable interface and turn it into a sequence of bytes that can later be fully restored to regenerate the original object.<\/p>\n<p>Serializable object means:<\/p>\n<p>a) Write a object to a disk and then read from disk to restore it.<\/p>\n<p>b) Transfer a object through a network and then read from stream and restore it.<\/p>\n<p>5. OO\uff08\u9762\u5411\u5bf9\u8c61\uff09\u6709\u54ea\u4e94\u4e2a\u7279\u6027\uff1f<\/p>\n<p>Five basic characteristics of OOP by Alan Kay:<\/p>\n<p>\uf06c Everything is an object.<\/p>\n<p>\uf06c A program is a bunch of objects telling each other what to do by sending messages.<\/p>\n<p>\uf06c Each object has its own memory made up of other objects.<\/p>\n<p>\uf06c Every object has a type.<\/p>\n<p>\uf06c All objects of a particular type can receive the same messages.<\/p>\n<p>An object has state, behavior and identity. -By Booch<\/p>\n<p>6. \u91cd\u8f7d\u548c\u8986\u76d6\u6709\u4ec0\u4e48\u533a\u522b\uff1f<\/p>\n<p>Often, the same word expresses a number of different meanings\u2014it\u2019s overloaded.<\/p>\n<p>A method is a name for an action, and you may use the methods with same name to take different actions.<\/p>\n<p>Each overloaded method must take a unique list of argument types. The list of arguments can differ in:<\/p>\n<p>\uf06c Types of arguments<\/p>\n<p>\uf06c Number of arguments<\/p>\n<p>\uf06c Ordering of arguments<\/p>\n<p>Note: Methods only differ in return type are not allowed.<\/p>\n<p>7. \u9759\u6001\u65b9\u6cd5\uff08\u6216\u6210\u5458\u53d8\u91cf\uff09\u548c\u975e\u9759\u6001\u65b9\u6cd5\uff08\u6216\u6210\u5458\u53d8\u91cf\uff09\u6709\u4ec0\u4e48\u533a\u522b\uff1f<\/p>\n<p>If you want to have a piece of data or a method that isn\u2019t associated with any particular object of this class, you can declared them as static. Then you can access the data or call the method even if no objects are created.<\/p>\n<p>Static method can only access static data.<\/p>\n<p>A static method means that there is no this for that particular method. You can call a static method for the class itself, without any object.<\/p>\n<p>The static method inside a class can only access to other static methods and to static fields.<\/p>\n<p>\u7f16\u7a0b\u9898\uff1a<\/p>\n<p>1. \u5224\u65ad\u4e00\u4e2a\u6570\u662f\u4e0d\u662f\u7d20\u6570<\/p>\n<p>2. \u5b9e\u73b0\u6587\u4ef6\u7684\u62f7\u8d1d<\/p>\n<p>\u8bbe\u8ba1\u9898\uff1a<\/p>\n<p>1. UDP\u534f\u8bae<\/p>\n<p>2. TCP\u534f\u8bae<\/p>\n<p><a href=\"http:\/\/115.29.108.60\/wp-content\/uploads\/2009\/11\/Java\u590d\u4e60\u8981\u70b9.doc\">Java\u590d\u4e60\u8981\u70b9<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Java\u8bfe\u7a0b\u8003\u8bd5\u7684\u590d\u4e60\u8981\u70b9\uff0c\u89c9\u5f97\u8001\u5e08\u7684\u547d\u9898\u70b9\u6293\u4f4f\u4e86Java\u8fd9\u95e8\u8bed\u8a00\u7684\u57fa\u7840\uff0c\u633a\u597d\u7684\u3002\u5206\u4eab\u4e0b\u3002\u7b54\u6848\u662f\u67e5\u7684\u8bfe\u7a0bPPT [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[21],"tags":[],"class_list":["post-280","post","type-post","status-publish","format-standard","hentry","category-java"],"_links":{"self":[{"href":"http:\/\/115.29.108.60\/index.php?rest_route=\/wp\/v2\/posts\/280","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/115.29.108.60\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/115.29.108.60\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/115.29.108.60\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/115.29.108.60\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=280"}],"version-history":[{"count":3,"href":"http:\/\/115.29.108.60\/index.php?rest_route=\/wp\/v2\/posts\/280\/revisions"}],"predecessor-version":[{"id":884,"href":"http:\/\/115.29.108.60\/index.php?rest_route=\/wp\/v2\/posts\/280\/revisions\/884"}],"wp:attachment":[{"href":"http:\/\/115.29.108.60\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=280"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/115.29.108.60\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=280"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/115.29.108.60\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=280"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}