1. 简述面向对象三⼤大特性并用示例例解释说明?【背写】
#封装
#(1)将数据封装到一个对象
class Foo():
def init(self,name,age):
self.name = name
self.age = age
def func(self):
print(self.name,self.age)
obj = foo(‘xixi’,1)
obj.func()
#(2)将多个功能封装到一个类
class Foo():
def func1(self):
pass
def func2(self):
pass
def func3(self):
pass
obj = foo()
obj.func1()
obj.func2()
obj.func3()
#继承
class Foo1():
def func1(self):
print(‘foo1’)
class Foo2(Foo1):
def func2(self):
print(‘foo2’)
obj = Foo2()
obj.func1()
#多态
class Foo():
def func(self,name):
2. 面向中的变量分为哪几种?并用示例说明区别?【背写】
#(1)实例变量
class Foo():
def init(self,name):
self.name = name
def func(self):
print(self.name)
obj = foo(‘xixi’) #实例变量
obj.func()
#(2)类变量or静态变量
class Foo():
food = ‘凉面’
def func(cls,self):
print(self.food)
obj = foo()
obj.func()
3. 面向对象中方法有哪几种?并用示例说明区别?【背写】
#(1).实例方法
class Foo():
def func(self,name):
print(name)
obj = Foo()
obj.func(‘eric’)
#(2).静态方法
class Foo():
@staticmethod
def func(name):
print(name)
obj = Foo()
obj.func(‘eric’)
#(3).类方法
class Foo():
@classmethod
def func(self,name):
print(name)
obj = Foo()
obj.func(‘eric’)
4. 面向对象中的属性有什什么?并用示例说明?
class Foo():
@property
def func(self):
return ‘eric’
obj = Foo()
print(obj.func)
5. 简述静态方法和类方法的区别?
#1.定义方式不一样
#2.传参方式不一样
#3.cls是类方法的类
6. 面向对象的方法中那个无需传参数?
类方法
7. 面向对象中公有和私有成员,在编写和调用时有哪些不同?
#编写 要带__
#调用:私有成员只能内部调用