首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

调用类的公共方法(错误:不是函数)

调用类的公共方法是指在面向对象编程中,通过实例化类对象后,使用该对象调用类中定义的公共方法。公共方法是指可以被类的实例对象直接调用的方法,它们通常用于执行特定的操作或返回特定的结果。

调用类的公共方法的步骤如下:

  1. 实例化类对象:使用类的构造函数创建一个类的实例对象。
  2. 使用对象调用方法:通过实例对象使用点操作符(.)来调用类中定义的公共方法。

调用类的公共方法的优势:

  1. 代码复用:通过调用类的公共方法,可以在不同的地方重复使用相同的代码逻辑,提高代码的复用性。
  2. 封装性:类的公共方法可以将一系列操作封装在一起,隐藏内部实现细节,提供简洁的接口供外部使用。
  3. 维护性:通过调用类的公共方法,可以方便地对类的功能进行修改和扩展,而不需要修改调用该方法的代码。

调用类的公共方法的应用场景:

  1. 类的实例化:在创建类的实例对象时,需要调用类的构造函数进行初始化。
  2. 对象的操作:通过调用类的公共方法,可以对类的实例对象进行各种操作,如获取属性值、修改属性值、执行特定的操作等。

腾讯云相关产品和产品介绍链接地址:

  • 云服务器(CVM):提供弹性计算能力,支持多种操作系统,适用于各类应用场景。详情请参考:https://cloud.tencent.com/product/cvm
  • 云数据库 MySQL 版(CDB):提供高性能、可扩展的关系型数据库服务,支持自动备份、容灾等功能。详情请参考:https://cloud.tencent.com/product/cdb
  • 云原生容器服务(TKE):提供高度可扩展的容器化应用管理平台,支持快速部署、弹性伸缩等特性。详情请参考:https://cloud.tencent.com/product/tke

请注意,以上链接仅为示例,实际使用时应根据具体需求选择适合的产品和服务。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • 访问网站首页 index.php,跟着执行流程走一遍

    访问网站首页 index.php,跟着执行流程走一遍,细节不深究,碰到不太明白的变量,直接var_dump()输出看看: 1. index.php——首页入口页面,版本判定、是否开启调试、引入 ThinkPHP框架 路径:‘./index.php‘ 判断PHP版本需是5.3.0以上:version_compare(PHP_VERSION,‘5.3.0‘,‘<‘); 系统调试设置:define(‘APP_DEBUG‘, true ); 应用目录设置:define ( ‘APP_PATH‘, ‘./Application/‘ ); 缓存目录设置:define ( ‘RUNTIME_PATH‘, ‘./Runtime/‘ ); 引入ThinkPHP:require ‘./ThinkPHP/ThinkPHP.php‘; 2. ThinkPHP.php——ThinkPHP框架的入口文件,定义各种常量、判断系统环境,初始化应用 路径:‘./ThinkPHP/ThinkPHP.php‘ 定义常量:版本号 THINK_VERSION、URL 模式定义(4 种模式)、类文件后缀 EXT、是否为SAE 环境、常用的系统路径常量(如Think类库目录、应用公共目录、缓存目录、配置目录等); 引入核心类Think.class.php:require CORE_PATH.‘Think‘.EXT; 应用初始化:Think\Think::start(); //命名空间\类名::方法(); //这里用到了命名空间 3. Think.class.php——框架的核心类,初始化应用程序,加载配置、类库,错误和异常处理,实例化对象 路径:‘./ThinkPHP/Library/Think/Think.class.php‘ 声明:Think\Think start()方法:加载需用的类、配置、语言包,是否需要缓存,运行应用 ①设定方法: spl_autoload_register(‘Think\Think::autoload‘); 自动加载类的方法,以及一些错误异常处理方法; ②分布式存储类初始化,用于读取、写入、删除文件;Storage::connect(STORAGE_TYPE); ③开发模式不缓存加载的核心类文件$runtimefile,用户模式将所有需引用的类并到同一个文件中缓存,加快后续访问速度。 ④加载应用的配置文件、需要的函数和类文件、行文扩展等文件路径的数组$mode;include ‘./ThinkPHP/Mode/common.php‘ ⑤循环加载处理$mode 数组中的各路径的文件; ⑥检查应用目录结构是否存在,不存在则会默认生成目录结构;(这个针对ThinkPHP新建一个应用,首次访问时使用) ⑦开始运行应用 App::run(); 即:‘./ThinkPHP/Library/Think/App.class.php‘ 4. App.class.php——加载公共文件配置、URL解析、调用对应的控制器方法 路径:‘./ThinkPHP/Library/Think/App.class.php‘ 声明:Think\App run()方法: ①App::init(); load_ext_file 加载应用的公共文件(./Application/Common/Common/)配置 (./Application/Common/Conf) Think\Dispatcher::dispatch(); URL解析,获取控制器 index、方法 index ②App::exec(); 执行应用程序,及新建控制器HomeConstroller 的实例,即对象; 创建控制器实例:$module = controller(CONTROLLER_NAME,CONTROLLER_PATH); 即=new IndexController(); 利用 php 反 射 机 制 获 取 action 方 法 对 象 , $method = new \ReflectionMethod($module, $action); 执行这个方法:$method->invoke($module); //无参数时执行,访问首页默认执行这个 $method->invokeArgs($module,$args); //有参数时执行; 以上即执行了控制器 ./Application/Hom

    02

    代码整洁之道【笔记】

    一、整洁代码 A.混乱的代价 1.有些团队在项目初期进展迅速,但有那么一两年的时间却慢去蜗行。对代码的每次修改都影响到其他两三处代码 2.花时间保持代码整洁不但有关效率,还有关生存 3.程序员遵从不了解混乱风险经理的意愿,也是不专业的做法 4.Bjarne Stroustrup,C++发明者:我喜欢优雅和高效的代码。代码逻辑应该直接了当,叫缺陷难以隐藏;尽量减少依赖关系,使之便于维护;依据某种分层战略完善错误处理代码;性能调至最优,省得引诱别人做没规矩的优化,搞出一堆混乱来。整洁的代码只做好一件事。 5.Grady Booch,《面向分析与设计》:整洁的代码简单直接。整洁的代码如同优美的散文。整洁的代码从不隐藏设计者的意图,充满了干净利落的抽象和直接了当的控制语句。 6.Dave Thomas,OTI公司创始人:整洁的代码应可由作者之外的开发者阅读和增补。它应有单元测试和验收测试。它使用有意义的命名。它只提供一种而非多种做一件事的途径。它只有尽量少的依赖关系,而且要明确地定义和提供清晰、尽量少的API。代码应通过其字面表达含义,因为不同的语言导致并非所有必须信息均可通过代码自身清晰表达。 7.Michael Feathers,《修改代码的艺术》:我可以列出我留意到的整洁代码的所有特点,但其中有一条是根本性的。整洁的代码总是看起来像是某位特别在意它的人写的。几乎没有改进的余地。代码作者什么都想到了,如果你企图改进它,总会回到原点,赞叹某人留给你的代码——全心投入的某人留下的代码。 8.Ron Jeffries,《极限编程实施》:简单代码,依其重要顺序:能通过所有测试;没有重复代码;体现系统中的全部设计理念;包括尽量少的实体,比如类、方法、函数等 9.Ward Cunningham,Wiki发明者:如果每个例程都让你感到深合已意,那就是整洁代码。如果代码让编程语言看起来像是专为解决那个问题而存在,就可以称之为漂亮的代码。 B.思想流派 1.读与写花费时间的比例起过10:1 C.童子军军规 1.“让营地比你来时更干净” 2.如果每次签入时,代码都比签出时干净,那么代码就不会腐坏 二、有意义的命名 A.名副其实 1.变量、函数或类的名称应该已经答复了所有的大问题,如果名称需要注释来补充,那就不算名副其实 2.代码的模糊度:即上下文在代码中未被明确体现的程度 B.避免误导 1.程序员必须避免留下掩藏代码本意的错误线索。应当避免使用与本意相悖的词 2.以同样的方式拼写出同样的概念才是信息,拼写前后不一致就是误导 3.要注意使用小写字母i和大写字母O作为变量名,看起来像“壹”和“零” C.做有意义的区分 1.同一作用范围内两样不同的东西不能重名,如果名称必须相异,那其意思也应该不同才对 2.废话是另一种没意义的区分。假设你有一个Product类,如果还有一个ProductInfo或ProductData类,那它们的名称虽然不同,意思却无区别 3.只要体现出有意义的区分,使用a和the这样的前缀就没错 4.废话都是冗余。Variable一词记录不应当出现在变量名中,Table一词永远不应当出现在表名中 D.使用读得出来的名称 E.使用可搜索的名称 1.单字母名称和数字常量有个问题,就是很难在一大篇文字中找出来 F.避免使用编码 1.把类型或作用域编进名称里面,徒然增加了解码的负担 2.也不必用m_前缀来标明成员变量,应当把类和函数做得足够小,消除对成员前缀的需要 3.不加修饰的接口,不要用前导字母I G.避免思维映射 1.不应当让读者在脑中把你的名称翻译为他们熟知的名称,单字母变量名就是个问题 2.专业程序员了解,明确是王道 H.类名 1.类名和对象名应该是名词或名词短语,类名不应当是动词 I.方法名 1.方法名应该是动词或动词短语。属性访问器、修改器和断言应该根据其值命名,并依Javabean标准加上get、set和is前缀 2.可以考虑将相应构造器设置为private,强制使用这种命名手段 J.别扮可爱 1.言到意到,意到言到 K.别用双关语 1.避免将同一单词用于不同目的 2.应尽力写出易于理解的代码,把代码写得让别人能一目尽览而不必殚精竭虑地研究 L.使用解决方案领域名称 1.尽管用那些计算机科学术语、算法名、模式名、数学术语 M.使用源自所涉问题领域的名称 1.如果不能用程序员熟悉的术语来给手头的工作命名,就采用从所涉问题领域而来的名称 2.优秀的程序员和设计师,其工作之一就是分离解决方案领域和问题领域的概念 N.添加有意义的语境 1.你需要用有良好命名的类、函数或名称空间来放置名称,给读者提供语境 2.如果没这么做,给名称添加前缀就是最后一招了 O.不要添加没用的语境 1.只要短名称足够清楚,就要比长名称好 P.最后的话 1.取好名字最难的地方在于需要良好的描述技巧和共有文化背景 三、函

    03

    牛客网刷题记 | 零散知识点汇总——Java(ing)

    A.vector是线程安全的ArrayList,在内存中占用连续的空间。 初始时有一个初始大小, 当数据条数大于这个初始大小后会重写分配一个更大的连续空间。 如果Vector定义为保存Object则可以存放任意类型, 无需事先知道!!! B.选项说的情况就是我们自定义异常的情况, 我们可以用违例(Exception)来抛出一些并非错误的消息, 可以,并非错误的消息。 比如我自定义一个异常,若一个变量大于10就抛出一个异常, 这样就对应了B选项说的情况, 我用抛出异常说明这个变量大于10, 而不是用一个函数体(函数体内判断是否大于10,然后返回true或false)判断, 因为函数调用是入栈出栈, 栈是在寄存器之下的速度最快,且占的空间少, 而自定义异常是存在堆中,肯定异常的内存开销大! C选项是错误的,因为接口中不能声明变量,只有常量! 接口中只有常量定义,没有变量声明。 接口中方法默认是abstract public, 所以在接口只写函数声明是符合语法规则。 但是变量默认是用public final static 修饰的, 意思它是静态常量,不是变量! 另外, 常量不管在接口中还是类中必须在声明时初始化。 D.子类可以访问父类受保护的成员 访问修饰符 访问范围 继承性 private 本类内部 不可继承 私有的 (default) 本类+同包 同包子类可以继承 默认的 protected 本类+同包+子类 可以继承 受保护的 public 公开 可以继承 公开的

    03
    领券