面向对象

什么是面向对象

所以面向对象,其实就是说:站在上帝的视角下,世界万物一切皆对象,把拥有工程的属性归为一类,这就是class的由来

类的定义:

关键字class

类的名称首字母必须大写

类里面有哪些东西

1.属性

2.方法(其实就是之前学习过的函数)

for example:

#object是所有类的父类,可以说是类的祖先

class Person(object):

def show(self):

print("hello")

obj:1.它是一个变量

2.他是类的对象

init:初始化

—del—:清理

方法执行顺序

普通方法

特性方法

静态方法

类里面的属性以及方法,调用的前提是首先要先要对类进行实例化处理

java中每个对象都可以上锁是什么意思 每个对象都一定有class属性_静态方法

方法(method):

1.普通方法,如show(),info()

2.特性方法,只具备只读属性,不能写(这个方法里面不能有形式参数)调用特性方法的时候,没有括号

3.静态方法:理解为全局变量,但是不能等价于全局变量,静态方法的特点时使用类名直接调用

java中每个对象都可以上锁是什么意思 每个对象都一定有class属性_java中每个对象都可以上锁是什么意思_02

obj.info():输出结果为    我的名字是cancan,我的年龄是23,我的性别是男 

java中每个对象都可以上锁是什么意思 每个对象都一定有class属性_静态方法_03

 

析构方法:功能正好和 __init__() 相反,其用来销毁实例化对象

java中每个对象都可以上锁是什么意思 每个对象都一定有class属性_java中每个对象都可以上锁是什么意思_04

 

 

java中每个对象都可以上锁是什么意思 每个对象都一定有class属性_子类_05

 

 输出结果为:我的名字叫cancan,我的年龄是23,我的城市是西安

 

print(Dog(name="",age="").getName()):输出结果为"中国西安"

对数据属性而言,使用类以及类对象调用,他的内存地址都是一样的

java中每个对象都可以上锁是什么意思 每个对象都一定有class属性_父类_06

 

 

继承

java与python的继承区别
1.python是一个类可以继承N个类
2.java只能继承一个类

概念
1.基类(父类):被继承的类
2.派生类(子类):继承其他的类

父类

java中每个对象都可以上锁是什么意思 每个对象都一定有class属性_静态方法_07

 

 子类

java中每个对象都可以上锁是什么意思 每个对象都一定有class属性_父类_08

 

 方法重写

当父类的方法没有办法满足子类的需求的时候,那么子类就会重写了父类的方法

java中每个对象都可以上锁是什么意思 每个对象都一定有class属性_java中每个对象都可以上锁是什么意思_09