1.类变量与实例变量的区别
类变量是static变量,一个对象对其进行修改会影响到其他对象的访问处理
而实例变量的话是指单独针对某个对象而言的变量。一个对象修改了它不会影响到其他对象的值。
通过实例来分析一下吧:
class Person(object):
如果调用的话 如果想调用 类变量就要这样来写的:Person.类变量名
如果想调用实例变量的话可以这样来写的
2.实现JAVA中的static方法如何在PYTHON中实现呢?
class Person:
alex=Person("jack")
print "%sTest"%Person.sum(1, 3)
在JAVA中实现起来相当简单的:
public static void sum()
因为我在BaseHTTPServer 模块中会有两个类其中的一个就会用到上面这些概念的!
BaseHTTPRequestHandler 有下列实例变量:
client_address
command
path
request_version
headers
rfile
wfile
[将基本的概念学精了,那才能学得更快些的]
BaseHTTPRequestHandler 有下列类变量:
server_version
sys_version
error_message_format
关键字应该是一个整数,指定数字的 HTTP 错误代码值。message 应该是一个包含 (详细的) 发生的错误信息的字符串,explain
应该是错误代码号的解释。缺省 message 和 explain 值可以在 responses 类变量中找到。
protocol_version
持续连接;然而,那么你的服务器必须 在所有它到客户端响应中包含一个正确的Content-Length 头 (使用
send_header())。为了向下的兼容性,缺省设置为 'HTTP/1.0'。
MessageClass
responses
longmessage)}。 shortmessage 通常被用作错误响应中 message 关键字,longmessage 用作
explain 关键字 (参阅 error_message_format 类变量)。
[例如:我在调试了如下的代码]
from BaseHTTPServer import BaseHTTPRequestHandler
print BaseHTTPRequestHandler.responses
可以打印出来HTTP常见的服务器返回的状态码信息的。包括了401 402 403 404等相关的状态码信息的!
BaseHTTPRequestHandler 实例有下列方法:
[这个类的实例的方法如下的:]
handle()
handle_one_request()
send_error(code[, message])
send_response(code[, message])
send_header(keyword, value)
end_headers()
log_request([code[, size]])
log_error(...)
log_message(
version_string()
date_time_string([timestamp])
log_date_time_string()
address_string()
[学习模块的好方法就是能够灵活运用这些方法来做事情的!真正的高手是写出来这些方法的具体实现代码]
PS.
- automatically by the
HTTPServer
class instance when GET and POST requests are made (see point 2). -
The
HTTPServer
will create an instance of theMyHandler
class for each HTTP request that is made. -
BaseHTTPRequestHandler
is not an argument: it specifies that ourMyHandler
class subclassesBaseHTTPRequestHandler
.