init():在对象创建完成后,初始化对象过程中自动调用的方法

class Person(object):

def init(self):

print('我被调用了')

init方法在什么时候被调用

p1 = Person() # 只需要实例化对象,不需要手动调用,init方法即可自动调用

在类的内部和外部都可以轻松调用init方法,但是不要调用

p1.init()

既然init方法可以在对象被创建后自动调用,那我们讲添加实例属性的代码写入init方法中,是不是可以每个对象被创建后,都自动添加实例属性呢?

class Person(object):

def __init__(self):# 由于init方法在对象被赋值之前就已经调用了,多以此时不能使用对象名.属性名进行属性添加,只能使用selfself.name = 'xiaoming'self.age = 18

p1 = Person()

由于其自动调用init,所以对象被创建后,自动拥有name和age属性

print(p1.name) # xiaoming

创建多个对象,每个对象都包含init中的属性名

p2 = Person() print(p2.age) # 18

结论: 在init方法中添加的属性,每一个由该类创建的对象,都包含,这种属性,我们称之为公有属性

在init之外添加的属性,只有被添加属性的对象本身才拥有,这种属性被称为独有属性

--init--方法相关推荐

  1. go/golang init()方法的调用

    go/golang main() init()方法的调用 u011156212 · 2015-10-20 13:00:05 · 9965 次点击 · 预计阅读时间 1 分钟 · 27分钟之前 开始浏览 ...

  2. Jquery源码中的Javascript基础知识(四)— jQuery.fn.init方法

    $() 即调用了jQuery.fn.init方法 jQuery = function( selector, context ) {return new jQuery.fn.init( selector ...

  3. IHttpModule.Init方法被执行多次的原因

    (http://www.csharpwin.com/dotnetspace/446.shtml) 发现不少朋友跟我一样,错把IHttpModule.Init拿来当做Application_Start的 ...

  4. 构造函数的理解(构造函数与 init 方法)

    0. 构造函数与 init 方法 构造方法内部禁止添加任何业务逻辑,如果有业务逻辑,请放在 init 方法中: 1. 构造函数的参数 以下为一个堆实现优先队列(堆的实现借助完全二叉树,而完全二叉树又可 ...

  5. java servlet init方法_JSP开发Servlet重写init()方法实例详解

    jsp开发servlet重写init()方法实例详解 写一个servlet时,有时需要我们重写该servlet的初始化方法,然后,究竟是重写init(servletconfig config),还是重 ...

  6. 为什么Servlet程序的init(ServletConfig config)中需要调用父类的init方法

    说明:本文代码测试于:idea2018; tomcat 9.0 当我们通过IDEA自动生成init(ServletConfig config)方法时,默认创建一句调用父类init()方法的语句 @Ov ...

  7. Servlet详解之两个init方法的作用

    在Servlet中 javax.servlet.GenericServlet类 继承自java.lang.Object 实现了Serializable,,servlet ,ServletConfig ...

  8. [jQuery] jQuery.fn的init方法返回的this指的是什么对象?为什么要返回this

    [jQuery] jQuery.fn的init方法返回的this指的是什么对象?为什么要返回this init()方法中返回的this指向init的实例对象,而init.prototype等于jQue ...

  9. mui.init方法配置

    mui框架将很多功能配置都集中在mui.init方法中,要使用某项功能,只需要在mui.init方法中完成对应参数配置即可,目前支持在mui.init方法中配置的功能包括: 创建子页面. 关闭页面. ...

  10. centos7/rhel7重置root密码 (rd.break和init方法)

    centos7/rhel7进入单用户方式和重置密码方式发生了较大变化,GRUB由b引导变成了ctrl+x引导. 重置密码主要有rd.break和init两种方法. rd.break方法: 1.启动的时 ...

最新文章

  1. RedHat 7配置FTP服务
  2. C++扬帆远航——3(打印图形)
  3. prometheus命令_Prometheus 入门
  4. CSDN公式编辑(latex语言应用)整理
  5. ASP.NET MVC 中解决Session,Cookie等依赖的方式
  6. java线程冲突问题——不安全的线程例子
  7. java map类转javabean_JavaBean和Map转换封装类的方法
  8. UI界面视觉设计之字体要素--安卓-ios-网页常用字体
  9. NB-iot的M5310A的学习
  10. 云计算机平台搭建,搭建云计算平台的步骤
  11. 兄弟們,彈鋼琴不是只有有錢人可以玩的
  12. 使用react-pdf预览pdf
  13. 游戏测试流程及工作内容
  14. 行测-图形推理-2-黑白格类
  15. easyPoi导出Excel,WPS可以打开,office却打不开的问题
  16. 「干货」Snort使用手册「详细版」
  17. AT88SC0104C读写程序
  18. halocn标定找旋转中心_对摄像头进行标定
  19. 数字化医院PACS影像系统 三维影像后处理技术应用
  20. ad中按钮开关的符号_电工最常用电气元件实物图及对应符号

热门文章

  1. 圆桌讨论:区块链现在处于什么阶段?应用的爆发需要多长时间?| CCF-GAIR 2017...
  2. 圣诞氛围拉满,《小鬼当家》原版取景地首次对外开放入住
  3. MotionBuilder2018破解版
  4. opencv图像识别人脸模型库
  5. 怎么定位自己在团队里的角色
  6. 精品微信小程序二手汽车拍卖系统+后台管理系统|前后分离VUE
  7. java.lang.ClassCastException: Dao.Impl.AccountDaoImpl cannot be cast to Dao.AccountDao
  8. vue2+vxtable实现复杂可编辑表格
  9. 合成孔径雷达成像算法与实现 笔记 | 第三章--线性调频信号的脉冲压缩
  10. Anaconda 配置清华源