【面向对象】
李坤是不是人?(人类)
飞飞是不是人?(人类)
扎心是不是人?(人类)

是:特指某一个事物

属于:同一的类型

什么是对象:
就是特指的某一个东西,万物皆对象

什么是类:
具有一批相同属性和特点的东西

人类
鸟类
汽车类
败类

单词-》函数(内置函数、自定义函数)->类

学习面向对象的好处:
1、代码更加的紧凑
2、让代码更加的优雅
3、很复杂的功能一条代码搞定

【两个层面】
1、语法层面
2、思维层面(靠你的代码量训练出来的)设计模式

【OOA】
面向对象分析

【OOD】
面向对象设计

【OOP】重点
面向对象编程

缺点:
比面向过程的速度慢

为什么慢?

慢了为什么还要学?

1、团队开发
2、减少开发时间
3、有利于维护 减少冗余

【面向对象的三大特征】
1、封装
公共的
public

受保护的
protected

私有的
private

2、继承
extends

3、多态
PHP里面多态几乎没有不明显

类的定义:
关键字class 类名
{

}

注意:类名首字母大写 后面跟着大括号,切记没有小括号

程序里面的对象的定义:

实例化的类就是对象 -》 new关键字

什么类的时候需要注意的几点:

1、声明成员属性的时候 必须加上修饰词 public 或者 var(不用了) 就是变量

2、声明成员方法的时候可以不加修饰词,建议加上吧,var 不能修饰成员方法 就是函数

【总结】:
1、必须使用关键字class
2、类名字的首字母必须是大写
3、遵循大驼峰命名法 MyName myName
4、不能使用内置函数名,不能使用系统保留的关键字
5、可以使用下划线
6、类名字要有意义
【成员属性】
1、必须使用关键字去修饰(public 、 protected 、private)还可以使用var 但是现在不用了
2、说白了成员属性就是咱们基础课学的怎么去声明变量

【成员方法】
1、与函数一样
2、有意义
3、驼峰命名法
4.。。。。。

【必须要知道滴东西】
1、-> 对象成员访问符号,说白了就是 汉字里面的 ’的‘
2、在实例化这个类的时候 虽然 不加小括号不报错,但是我建议都加上+()
3、在外部访问成员属性的时候不要加$
4、成员方法里面可以有形参,可以有默认值,和你们当初学的函数一模一样

【$this】
this 就是代表的当前类

js 里面也有this 但不是$this(了解就行)

注意:当本类当中使用自

使用自己的成员属性的时候 变量前面不能加$

【1】public的更多相关文章

  1. 【java】public,private和protected

    public表示紧随其后的元素对任何人都是可用的,而private这个关键字表示除类型创建者和类型内部方法之外的任何人都不能访问的元素.protected关键字与private作用相当,差别仅在于继承 ...

  2. 【翻译】configuration changes与handler.post

    原文地址 http://corner.squareup.com/2013/12/android-main-thread-2.html 在前一部分里面previous part ,我们深入挖掘了 loo ...

  3. 【LeetCode】数组-4(581)-给未排序数组中子数组排序使得整个数组排序 找到这个最小的子数组

    这道题目感觉并不太容易,也并没有想到什么比较好的方法,看来还是积累太少. 思路一:两个指针向后遍历,分别记下造成逆序的最小和最大下标位置 优化的暴力解法(很精妙,面试的时候可以说出来) 思想:两个指针 ...

  4. 【反射】Reflect Class Field Method Constructor

    关于反射 Reflection 面试题,什么是反射(反射的概念)? 主要是指程序可以访问,检测和修改它本身状态或行为的一种能力,并能根据自身行为的状态和结果,调整或修改应用所描述行为的状态和相关的语义 ...

  5. 【Type】类型 ParameterizedType

    Type 接口[重要] Type接口完整的定义: public interface java.lang.reflect.Type { /** * Returns a string describing ...

  6. 【Java】基本类型和引用类型(值传递)

    [关键词] [问题] · 加深对基本类型和引用类型的理解: [效果图] [分析] 參见最后的[參考资料] [解决方式] [代码] public void test() throws Exception ...

  7. 【LeetCode】Palindrome Partitioning 解题报告

    [题目] Given a string s, partition s such that every substring of the partition is a palindrome. Retur ...

  8. 【Leetcode】交替打印FooBar

    [问题]我们提供一个类: class FooBar { public void foo() { ; i < n; i++) { print("foo"); } } publi ...

  9. 【Java】abstract,final,static,private,protected,public的区别

    [abstract]抽象的 1. abstract可以修饰类和成员方法,被abstract修饰的类称为抽象类,被abstract修饰成员方法叫抽象方法.抽象类不一定有抽象方法,但拥有抽象方法的类一定是 ...

随机推荐

  1. 发票打印不全不完整的解决方案(Win10)

    发票不管怎么设置,不是二维码缺少一点,就是金额小数点后边的数字显示不全 具体原因是打印机默认纸张上A4,实际发票纸张要比A4宽度宽一点点 原来写过一篇程序方便的打印票据的控制<终于部分解决了.N ...

  2. 与临时对象的斗争(上)ZZ

    C++ 是一门以效率见长的语言(虽然近来越来越多的人“不齿”谈及效率,我深以为不然,在某一次的程序编写中不对效率锱铢必较并不意味意味着我们就不应该追求更多的更好的做法).总之吧,相比起其它语言,程序员 ...

  3. CDH下集成spark2.2.0与kafka(四十一):在spark+kafka流处理程序中抛出错误java.lang.NoSuchMethodError: org.apache.kafka.clients.consumer.KafkaConsumer.subscribe(Ljava/util/Collection;)V

    错误信息 19/01/15 19:36:40 WARN consumer.ConsumerConfig: The configuration max.poll.records = 1 was supp ...

  4. 【ASP.NET Core】浅说目录浏览

    何谓“浅说”?就是一句话说不完,顶多两句话就介绍完毕,然后直接给上实例的解说方式.化繁为简,从七千年前到现在,从老祖宗到咱们,一直都在追求的理想目标,尽可能把复杂的东西变成简单的. 老周告诉你一个可以 ...

  5. Python 进制转换 二进制 八进制 十进制 十六进制

    Python 进制转换 二进制 八进制 十进制 十六进制 作者:方倍工作室 地址:http://www.cnblogs.com/txw1958/p/python3-scale.html 全局定义一定不 ...

  6. 【jquery采坑】Ajax配合form的submit提交(微擎表单提交,ajax验证,submit提交)

    1.采坑:实现form的submit提交,在提交之前,进行ajax的不同校验,然后onsubmit=return check(),进行提交 1/1 目的:可以实现以 from的submit提交,然后还 ...

  7. webstorm激活方法webstorm注册码 jetbrains激活

    安装完成后,打开 WebStorm, 在打开的 License Activation 窗口中选择 License server. 在输入框输入网址即可: http://idea.codebeta.cn ...

  8. Nodejs 使用log4js日志

    一.创建log4.js文件,保存日志到log文件,并在控制台输出,如果不控制台输出,把删除红色的代码 const log4js = require('log4js'), path = require( ...

  9. vue-resource和vue-async-data两个插件的使用

    vue-resource和vue-async-data两个插件的使用,看了一下文档http://cn.vuejs.org/guide/plugins.html#u5DF2_u6709_u63D2_u4 ...

  10. yml 后面的配置覆盖前面的

    事情是这样的: a: b: c: tomcat d: hoho # 中间还隔了好多 a: b: c: tomcat 这种情况下,后面的配置会覆盖前面的所有配置,即 a.d = hoho 也会被覆盖 y ...